summaryrefslogtreecommitdiff
path: root/dynamicdevice.c
diff options
context:
space:
mode:
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));
+ }
}
}