diff Core/JobsEngine/JobsEngine.cpp @ 3240:e44e0127e553

Fix issue #134 (/patient/modify gives 500, should really be 400)
author Sebastien Jodogne <s.jodogne@gmail.com>
date Fri, 15 Feb 2019 17:26:45 +0100
parents 4e43e67f8ecf
children 94f4a18a79cc
line wrap: on
line diff
--- a/Core/JobsEngine/JobsEngine.cpp	Fri Feb 15 16:38:12 2019 +0100
+++ b/Core/JobsEngine/JobsEngine.cpp	Fri Feb 15 17:26:45 2019 +0100
@@ -75,39 +75,39 @@
     }
     catch (OrthancException& e)
     {
-      result = JobStepResult::Failure(e.GetErrorCode());
+      result = JobStepResult::Failure(e);
     }
     catch (boost::bad_lexical_cast&)
     {
-      result = JobStepResult::Failure(ErrorCode_BadFileFormat);
+      result = JobStepResult::Failure(ErrorCode_BadFileFormat, NULL);
     }
     catch (...)
     {
-      result = JobStepResult::Failure(ErrorCode_InternalError);
+      result = JobStepResult::Failure(ErrorCode_InternalError, NULL);
     }
 
     switch (result.GetCode())
     {
       case JobStepCode_Success:
         running.GetJob().Stop(JobStopReason_Success);
-        running.UpdateStatus(ErrorCode_Success);
+        running.UpdateStatus(ErrorCode_Success, "");
         running.MarkSuccess();
         return false;
 
       case JobStepCode_Failure:
         running.GetJob().Stop(JobStopReason_Failure);
-        running.UpdateStatus(result.GetFailureCode());
+        running.UpdateStatus(result.GetFailureCode(), result.GetFailureDetails());
         running.MarkFailure();
         return false;
 
       case JobStepCode_Retry:
         running.GetJob().Stop(JobStopReason_Retry);
-        running.UpdateStatus(ErrorCode_Success);
+        running.UpdateStatus(ErrorCode_Success, "");
         running.MarkRetry(result.GetRetryTimeout());
         return false;
 
       case JobStepCode_Continue:
-        running.UpdateStatus(ErrorCode_Success);
+        running.UpdateStatus(ErrorCode_Success, "");
         return true;
             
       default: