From 6b23ba47b4b8358ea94dd503167118b022e48eb9 Mon Sep 17 00:00:00 2001 From: Lars Hanisch Date: Thu, 8 Mar 2012 02:18:27 +0100 Subject: on force detach queue command, don't delete directly on the call --- dynamicdevice.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'dynamicdevice.c') 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)); + } } } -- cgit v1.2.3