Coverity-getAllocatedSingleString & getAllocatedMatrixOfString Fix 22/18022/9
Aashish Misraa [Sat, 2 Apr 2016 09:36:03 +0000 (14:36 +0530)]
Change-Id: I54f319846fcd1234ad7598ea91a8a4ffbfdc39a5

scilab/modules/api_scilab/src/cpp/api_stack_string.cpp

index 4202827..976d91f 100644 (file)
@@ -447,6 +447,7 @@ int getAllocatedSingleString(void* _pvCtx, int* _piAddress, char** _pstData)
     {
         addErrorMessage(&sciErr, API_ERROR_GET_ALLOC_SINGLE_STRING, _("%s: Unable to get argument data"), "getAllocatedSingleString");
         printError(&sciErr, 0);
+        FREE(*_pstData);
         return sciErr.iErr;
     }
 
@@ -512,6 +513,7 @@ int getAllocatedMatrixOfString(void* _pvCtx, int* _piAddress, int* _piRows, int*
             FREE(piLen);
             piLen = NULL;
         }
+        FREE(*_pstData);
         return sciErr.iErr;
     }
 
@@ -530,6 +532,7 @@ int getAllocatedMatrixOfString(void* _pvCtx, int* _piAddress, int* _piRows, int*
     {
         addErrorMessage(&sciErr, API_ERROR_GET_ALLOC_STRING_MATRIX, _("%s: Unable to get argument data"), "getAllocatedMatrixOfString");
         printError(&sciErr, 0);
+        FREE(*_pstData);
         return sciErr.iErr;
     }