Bug 12232 fixed: fix several memleaks in various filler
[scilab.git] / scilab / modules / graphic_objects / src / cpp / TriangleMeshFecDataDecomposer.cpp
index c834fd7..c212006 100644 (file)
@@ -123,6 +123,8 @@ void TriangleMeshFecDataDecomposer::fillTextureCoordinates(char* id, float* buff
         colorsNumber = (double) colormapSize;
     }
 
+    releaseGraphicObjectProperty(__GO_COLOR_RANGE__, colorRange, jni_int_vector, 0);
+
     /** To take into account the presence of exterior colors:
      *  - We add 2 to the number of colors.
      *  - We skip the first color.
@@ -145,6 +147,8 @@ void TriangleMeshFecDataDecomposer::fillTextureCoordinates(char* id, float* buff
         computeMinMaxValues(values, numVertices, &minValue, &maxValue);
     }
 
+    releaseGraphicObjectProperty(__GO_Z_BOUNDS__, zBounds, jni_double_vector, 0);
+
     if (maxValue == minValue)
     {
         for (int i = 0; i < numVertices; i++)
@@ -247,6 +251,8 @@ void TriangleMeshFecDataDecomposer::fillColors(char* id, float* buffer, int buff
         maxColorIndex = colormapSize-1;
     }
 
+    releaseGraphicObjectProperty(__GO_COLOR_RANGE__, colorRange, jni_int_vector, 0);
+
     computeMinMaxValues(values, numVertices, &minValue, &maxValue);
 
     /* Z-bounds are not taken into account if either of them is invalid */
@@ -268,6 +274,8 @@ void TriangleMeshFecDataDecomposer::fillColors(char* id, float* buffer, int buff
         }
     }
 
+    releaseGraphicObjectProperty(__GO_Z_BOUNDS__, zBounds, jni_double_vector, 0);
+
     /* To be verified (when reverse z bounds are specified) */
     if (DecompositionUtils::getAbsoluteValue(maxValue - minValue) < DecompositionUtils::getMinDoubleValue())
     {
@@ -314,6 +322,7 @@ void TriangleMeshFecDataDecomposer::fillColors(char* id, float* buffer, int buff
         }
     }
 
+    releaseGraphicObjectProperty(__GO_COLORMAP__, colormap, jni_double_vector, colormapSize);
 }
 
 void TriangleMeshFecDataDecomposer::computeMinMaxValues(double* values, int numValues, double* valueMin, double* valueMax)