Browse code

Free the section hash data in the right spot

Shawn Webb authored on 2014/01/23 05:31:10
Showing 1 changed files
... ...
@@ -280,6 +280,11 @@ void free_sample(cli_flagged_sample_t *sample)
280 280
         free(sample->virus_name);
281 281
     }
282 282
 
283
+    if ((sample->sections) && (sample->sections->nsections)) {
284
+        free(sample->sections->sections);
285
+        free(sample->sections);
286
+    }
287
+
283 288
     free(sample);
284 289
 }
285 290
 
... ...
@@ -370,11 +375,6 @@ void clamav_stats_remove_sample(const char *virname, const unsigned char *md5, s
370 370
         if (sample == intel->samples)
371 371
             intel->samples = sample->next;
372 372
 
373
-        if ((sample->sections) && (sample->sections->nsections)) {
374
-            free(sample->sections->sections);
375
-            free(sample->sections);
376
-        }
377
-
378 373
         free_sample(sample);
379 374
         intel->nsamples--;
380 375
     }