Browse Source

Merge pull request #100 from jakesmith/bug83900

Bug: 83900 Fix issue with dfu jobs left running

Reviewed-By: Richard Chapman <rchapman@hpccsystems.com>
Richard Chapman 14 years ago
parent
commit
6c5550c532
1 changed files with 7 additions and 1 deletions
  1. 7 1
      dali/dfu/dfurun.cpp

+ 7 - 1
dali/dfu/dfurun.cpp

@@ -253,7 +253,13 @@ class CDFUengine: public CInterface, implements IDFUengine
                         case DFUservermode_run: {
                                 PROGLOG("DFU %s running job: %s",serv,wuid.get());
                                 setRunningStatus(queuename.get(),wuid,true);
-                                parent->runWU(wuid);
+                                try {
+                                    parent->runWU(wuid);
+                                }
+                                catch (IException *) {
+                                    setRunningStatus(queuename.get(),wuid,false);
+                                    throw;
+                                }
                                 if (!ismon) {
                                     setRunningStatus(queuename.get(),wuid,false);
                                     PROGLOG("DFU %s finished job: %s",serv,wuid.get());