git-svn-id: http://ltt.polymtl.ca/svn@133 04897980-b3bd-0310-b5e0-8ef037075253
authoryangxx <yangxx@04897980-b3bd-0310-b5e0-8ef037075253>
Wed, 23 Jul 2003 20:35:36 +0000 (20:35 +0000)
committeryangxx <yangxx@04897980-b3bd-0310-b5e0-8ef037075253>
Wed, 23 Jul 2003 20:35:36 +0000 (20:35 +0000)
ltt/branches/poly/ltt/tracefile.c

index f3ee2e20b8252c42cde495b4ae29250871ff5f6e..2f3f7ab48ae15a55566a79f6824d3eb78f4f65a5 100644 (file)
@@ -103,6 +103,9 @@ LttTracefile* ltt_tracefile_open(LttTrace * t, char * fileName)
   // Is the file large enough to contain a trace 
   if(lTDFStat.st_size < sizeof(BlockStart) + EVENT_HEADER_SIZE){
     g_print("The input data file %s does not contain a trace\n", fileName);
+    g_free(tf->name);
+    close(tf->fd);
+    g_free(tf);
     return NULL;
   }
   
@@ -192,6 +195,7 @@ void ltt_tracefile_close(LttTracefile *t)
 {
   g_free(t->name);
   g_free(t->buffer);
+  close(t->fd);
   g_free(t);
 }
 
@@ -791,7 +795,10 @@ LttEvent *ltt_tracefile_read(LttTracefile *t)
 
   //update the fields of the current event and go to the next event
   err = skipEvent(t);
-  if(err == ENOMEM) return NULL;
+  if(err == ENOMEM){
+    g_free(lttEvent);
+    return NULL;
+  }
   if(err == ENOENT) return lttEvent;
   if(err == ERANGE) g_error("event id is out of range\n");
   if(err)g_error("Can not read tracefile\n");
This page took 0.024675 seconds and 4 git commands to generate.