#1219 resolves issues with NPE and restarting an error tuner. (#1220)

Co-authored-by: Dennis Sheirer <dsheirer@github.com>
This commit is contained in:
Denny Sheirer
2022-04-26 04:02:36 -04:00
committed by GitHub
parent 60489e1fef
commit f988344222
2 changed files with 10 additions and 4 deletions

View File

@@ -251,7 +251,7 @@ public class RTL2832TunerController extends USBTunerController
}
catch(UsbException ue)
{
throw new SourceException("Unable to initialize " + getEmbeddedTuner().getTunerType(), ue);
throw new SourceException("Unable to initialize " + tunerType, ue);
}
setMinimumFrequency(mEmbeddedTuner.getMinimumFrequencySupported());
@@ -366,7 +366,12 @@ public class RTL2832TunerController extends USBTunerController
*/
public TunerType getTunerType()
{
return getEmbeddedTuner().getTunerType();
if(getEmbeddedTuner() != null)
{
return getEmbeddedTuner().getTunerType();
}
return TunerType.UNKNOWN;
}
/**

View File

@@ -33,6 +33,7 @@ import io.github.dsheirer.source.tuner.manager.IDiscoveredTunerStatusListener;
import io.github.dsheirer.source.tuner.manager.TunerManager;
import io.github.dsheirer.source.tuner.manager.TunerStatus;
import io.github.dsheirer.util.SwingUtils;
import io.github.dsheirer.util.ThreadPool;
import net.miginfocom.swing.MigLayout;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -370,11 +371,11 @@ public abstract class TunerEditor<T extends Tuner,C extends TunerConfiguration>
{
if(!hasTuner() && getDiscoveredTuner().getTunerStatus() == TunerStatus.ERROR)
{
mLog.info("Resetting " + getDiscoveredTuner().getTunerClass() + " tuner");
mLog.info("Restarting " + getDiscoveredTuner().getTunerClass() + " tuner");
getDiscoveredTuner().reset();
if(getDiscoveredTuner().isEnabled())
{
getDiscoveredTuner().start();
ThreadPool.CACHED.submit(() -> getDiscoveredTuner().start());
}
}
});