summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--HISTORY4
-rw-r--r--dynamicdevice.c10
-rw-r--r--dynamite.c2
3 files changed, 11 insertions, 5 deletions
diff --git a/HISTORY b/HISTORY
index 39e9af9..67ea7c7 100644
--- a/HISTORY
+++ b/HISTORY
@@ -248,3 +248,7 @@ VDR Plugin 'dynamite' Revision History
2012-02-05: Version 0.0.9b
- add udev attribute "dynamite_sources" which will limit the reception of the device to the given sources
+
+2012-03-08: Version 0.0.9c
+
+- on "force detach" queue command, don't delete directly on the call
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));
+ }
}
}
diff --git a/dynamite.c b/dynamite.c
index 9b15363..14a47ae 100644
--- a/dynamite.c
+++ b/dynamite.c
@@ -11,7 +11,7 @@
#include "monitor.h"
#include "status.h"
-static const char *VERSION = "0.0.9b";
+static const char *VERSION = "0.0.9c";
static const char *DESCRIPTION = tr("attach/detach devices on the fly");
static const char *MAINMENUENTRY = NULL;