summaryrefslogtreecommitdiff
path: root/dynamicdevice.c
diff options
context:
space:
mode:
authorLars Hanisch <dvb@flensrocker.de>2012-03-08 02:18:27 +0100
committerLars Hanisch <dvb@flensrocker.de>2012-03-08 02:18:27 +0100
commit6b23ba47b4b8358ea94dd503167118b022e48eb9 (patch)
treef2319a763dc9b7a4ae9892d6de3735b6d9741557 /dynamicdevice.c
parentb04539ce840bd1b0dda459545d2d94890947eb49 (diff)
downloadvdr-plugin-dynamite-6b23ba47b4b8358ea94dd503167118b022e48eb9.tar.gz
vdr-plugin-dynamite-6b23ba47b4b8358ea94dd503167118b022e48eb9.tar.bz2
on force detach queue command, don't delete directly on the callv0.0.9c
Diffstat (limited to 'dynamicdevice.c')
-rw-r--r--dynamicdevice.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/dynamicdevice.c b/dynamicdevice.c
index 6845e1c..c9b640d 100644
--- a/dynamicdevice.c
+++ b/dynamicdevice.c
@@ -151,10 +151,12 @@ void cDynamicDevice::DetachAllDevices(bool Force)
cMutexLock lock(&arrayMutex);
isyslog("dynamite: %sdetaching all devices", (Force ? "force " : ""));
for (int i = 0; i < numDynamicDevices; i++) {
- if (Force)
- dynamicdevice[i]->DeleteSubDevice();
- else if (dynamicdevice[i]->devpath)
- cDynamicDeviceProbe::QueueDynamicDeviceCommand(ddpcDetach, (**dynamicdevice[i]->devpath));
+ if (dynamicdevice[i]->devpath) {
+ if (Force)
+ cDynamicDeviceProbe::QueueDynamicDeviceCommand(ddpcService, *cString::sprintf("dynamite-ForceDetachDevice-v0.1 %s", **dynamicdevice[i]->devpath));
+ else
+ cDynamicDeviceProbe::QueueDynamicDeviceCommand(ddpcDetach, (**dynamicdevice[i]->devpath));
+ }
}
}