]> git.mxchange.org Git - simgear.git/commitdiff
Mathias Fröhlich:
authorehofman <ehofman>
Fri, 14 Oct 2005 16:21:57 +0000 (16:21 +0000)
committerehofman <ehofman>
Fri, 14 Oct 2005 16:21:57 +0000 (16:21 +0000)
I have done a valgrind run in flightgear. Just start it up and close it at the
fist change I had about half an hour later.

property-leak.diff:
   A leak in the property system which I could even notice in top.

texture-leak.diff:
    minor one, but fixed is fixed ...

simgear/props/props.cxx
simgear/screen/texture.cxx
simgear/screen/texture.hxx

index dd8cb0c01fea7436eb50bf4be6bff8d733f0f48d..e7dac3f4bf7dac0e3e13bf2b82a0a7dba5f0929b 100644 (file)
@@ -2143,6 +2143,7 @@ SGPropertyNode::hash_table::bucket::~bucket ()
 {
   for (int i = 0; i < _length; i++)
     delete _entries[i];
+  delete [] _entries;
 }
 
 SGPropertyNode::hash_table::entry *
@@ -2197,6 +2198,7 @@ SGPropertyNode::hash_table::~hash_table ()
 {
   for (unsigned int i = 0; i < _data_length; i++)
     delete _data[i];
+  delete [] _data;
 }
 
 SGPropertyNode *
index 56fd95409d4ddb84492c09daa3254e4176e79bfa..b3f96f040aaa01898ca5a2adf5fef93bf3c42b72 100644 (file)
@@ -538,6 +538,8 @@ SGTexture::ImageClose(SGTexture::ImageRec *image) {
     if (image->file)  gzclose(image->file);
     if (file) fclose(file);
     delete[] image->tmp;
+    delete[] image->rowStart;
+    delete[] image->rowSize;
     delete image;
 }
 
index 00265336a8f7bb3a541738f3d6299ff7686131d4..9f76cadbd2390a4dfc87cad67782ebef4dc39715 100644 (file)
@@ -42,6 +42,7 @@ protected:
 
     FILE *file;
     typedef struct _ImageRec {
+        _ImageRec(void) : tmp(0), rowStart(0), rowSize(0) {}
         unsigned short imagic;
         unsigned short type;
         unsigned short dim;