summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--softhddevice.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/softhddevice.cpp b/softhddevice.cpp
index ed5d828..2f5db16 100644
--- a/softhddevice.cpp
+++ b/softhddevice.cpp
@@ -1588,6 +1588,9 @@ static void PipNextAvailableChannel(int direction)
channel = PipChannel;
first = channel;
+
+ DelPip(); // disable PIP to free the device
+
while (channel) {
bool ndr;
cDevice *device;
@@ -1601,7 +1604,6 @@ static void PipNextAvailableChannel(int direction)
&& (device = cDevice::GetDevice(channel, 0, false, true))
&& device->ProvidesChannel(channel, 0, &ndr) && !ndr) {
- DelPip();
NewPip(channel->Number());
return;
}