fix valgrind issues during ast serialization
[scilab.git] / scilab / modules / ast / src / cpp / types / macro.cpp
index ed9ece0..f292b65 100644 (file)
@@ -425,8 +425,8 @@ bool Macro::operator==(const InternalType& it)
     unsigned char* macroSerial = serialMacro.serialize(false);
 
     //check buffer length
-    unsigned int oldSize = ((unsigned int*)oldSerial)[0] + sizeof(unsigned int);
-    unsigned int macroSize = ((unsigned int*)macroSerial)[0] + sizeof(unsigned int);
+    unsigned int oldSize = *((unsigned int*)oldSerial);
+    unsigned int macroSize = *((unsigned int*)macroSerial);
     if (oldSize != macroSize)
     {
         free(oldSerial);
@@ -434,7 +434,7 @@ bool Macro::operator==(const InternalType& it)
         return false;
     }
 
-    bool ret = (memcmp(oldSerial, macroSerial, oldSize + sizeof(unsigned int)) == 0);
+    bool ret = (memcmp(oldSerial, macroSerial, oldSize) == 0);
 
     free(oldSerial);
     free(macroSerial);