Browse Source

prevent completeMessages function from emmiting jobs with zero length

Stasik0 8 years ago
parent
commit
331e2f761a
1 changed files with 4 additions and 0 deletions
  1. 4 0
      src/server/ua_server_worker.c

+ 4 - 0
src/server/ua_server_worker.c

@@ -614,6 +614,10 @@ static void completeMessages(UA_Server *server, UA_Job *job) {
     }
     if(realloced)
         job->type = UA_JOBTYPE_BINARYMESSAGE_ALLOCATED;
+
+    /* discard the job if message is empty - also no leak is possible here */
+    if(job->job.binaryMessage.message.length == 0)
+        job->type = UA_JOBTYPE_NOTHING;
 }
 
 UA_UInt16 UA_Server_run_iterate(UA_Server *server, UA_Boolean waitInternal) {