diff options
-rw-r--r-- | ChangeLog | 12 | ||||
-rw-r--r-- | src/analysis/binaries/file.c | 8 | ||||
-rw-r--r-- | src/analysis/binary.c | 22 | ||||
-rw-r--r-- | src/format/format.c | 13 |
4 files changed, 19 insertions, 36 deletions
@@ -1,3 +1,15 @@ +12-12-19 Cyrille Bagard <nocbos@gmail.com> + + * src/analysis/binaries/file.c: + Improve the 'finalize' method. + + * src/analysis/binary.c: + Improve the cleaning process of loaded binaries and fix a bug when + loading fails. + + * src/format/format.c: + Remove debug output. + 12-12-18 Cyrille Bagard <nocbos@gmail.com> * configure.ac: diff --git a/src/analysis/binaries/file.c b/src/analysis/binaries/file.c index 46307fb..9c43ed5 100644 --- a/src/analysis/binaries/file.c +++ b/src/analysis/binaries/file.c @@ -133,15 +133,9 @@ static void g_file_binary_init(GFileBinary *binary) static void g_file_binary_finalize(GFileBinary *binary) { - gpointer obj_class; /* Classe parente */ - free(binary->filename); - /* On passe le relai */ - - obj_class = g_type_class_peek_parent(G_FILE_BINARY_GET_CLASS(binary)); - - G_OBJECT_CLASS(obj_class)->finalize(G_OBJECT(binary)); + G_OBJECT_CLASS(g_file_binary_parent_class)->finalize(G_OBJECT(binary)); } diff --git a/src/analysis/binary.c b/src/analysis/binary.c index ecf9c79..61f826a 100644 --- a/src/analysis/binary.c +++ b/src/analysis/binary.c @@ -146,18 +146,14 @@ static void g_loaded_binary_init(GLoadedBinary *binary) static void g_loaded_binary_dispose(GLoadedBinary *binary) { - gpointer obj_class; /* Classe parente */ - - g_object_unref(G_OBJECT(binary->format)); - g_object_unref(G_OBJECT(binary->proc)); + if (binary->format != NULL) + g_object_unref(G_OBJECT(binary->format)); + if (binary->proc != NULL) + g_object_unref(G_OBJECT(binary->proc)); /* TODO... */ - /* On passe le relai */ - - obj_class = g_type_class_peek_parent(G_FILE_BINARY_GET_CLASS(binary)); - - G_OBJECT_CLASS(obj_class)->dispose(G_OBJECT(binary)); + G_OBJECT_CLASS(g_loaded_binary_parent_class)->dispose(G_OBJECT(binary)); } @@ -176,15 +172,9 @@ static void g_loaded_binary_dispose(GLoadedBinary *binary) static void g_loaded_binary_finalize(GLoadedBinary *binary) { - gpointer obj_class; /* Classe parente */ - /* TODO */ - /* On passe le relai */ - - obj_class = g_type_class_peek_parent(G_FILE_BINARY_GET_CLASS(binary)); - - G_OBJECT_CLASS(obj_class)->finalize(G_OBJECT(binary)); + G_OBJECT_CLASS(g_loaded_binary_parent_class)->finalize(G_OBJECT(binary)); } diff --git a/src/format/format.c b/src/format/format.c index f1ea4d4..c7d95c4 100644 --- a/src/format/format.c +++ b/src/format/format.c @@ -510,10 +510,6 @@ GBinFormat *load_new_format(FormatType type, char *filename, bin_t **content, of result = NULL; - printf("analysing... %s\n", filename); - - - tmp = strdup(filename); pglist = get_all_plugins_for_action(PGA_FORMAT_MATCHER, &pgcount); @@ -545,9 +541,6 @@ GBinFormat *load_new_format(FormatType type, char *filename, bin_t **content, of if (tmp == NULL) free(tmp); - - - for (i = 0; i < FID_COUNT && result == NULL; i++) if (_formats[i].type == type && _formats[i].match(type, *content, *length)) { @@ -557,12 +550,6 @@ GBinFormat *load_new_format(FormatType type, char *filename, bin_t **content, of } - - - printf("FINAL FORMAT :: %p\n", result); - - //exit(0); - return result; } |