summaryrefslogtreecommitdiff
path: root/src/analysis/binary.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2012-12-16 21:55:04 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2012-12-16 21:55:04 (GMT)
commit64e09a6c3e39785975b5322973ed83734cedb82e (patch)
treea87d29cca9d86ccd26676460282ddf59c4e9cb17 /src/analysis/binary.c
parent2581d80875304c466e8930dbe67986ceb95752b2 (diff)
Reintroduced the delayed disassembling of binaries.
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@304 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/analysis/binary.c')
-rw-r--r--src/analysis/binary.c17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/analysis/binary.c b/src/analysis/binary.c
index 54beba7..ecf9c79 100644
--- a/src/analysis/binary.c
+++ b/src/analysis/binary.c
@@ -65,7 +65,7 @@ static bool g_loaded_binary_load_parts_from_xml(GLoadedBinary *, xmlXPathContext
static bool g_loaded_binary_save_parts(const GLoadedBinary *, xmlDocPtr, xmlXPathContextPtr, const char *);
/* Acquitte la fin d'un désasemblage différé et complet. */
-void ack_completed_disassembly(void/*GDelayedDisassembly*/ *, GLoadedBinary *);
+static void ack_completed_disassembly(GDelayedDisassembly *, GLoadedBinary *);
@@ -572,10 +572,11 @@ void g_loaded_binary_analyse(GLoadedBinary *binary)
}
disassemble_binary(binary, parts, parts_count,
- &binary->instrs, &binary->disass_buffer);
+ &binary->instrs, &binary->disass_buffer,
+ ack_completed_disassembly);
/* TODO : remme ! */
- ack_completed_disassembly(NULL, binary);
+ //ack_completed_disassembly(NULL, binary);
}
@@ -783,7 +784,7 @@ bool *g_loaded_binary_display_decomp_lines(GLoadedBinary *binary)
* *
******************************************************************************/
-void ack_completed_disassembly(void/*GDelayedDisassembly*/ *disass, GLoadedBinary *binary)
+void ack_completed_disassembly(GDelayedDisassembly *disass, GLoadedBinary *binary)
{
//GRenderingLine *line; /* "Première" ligne de rendu */
@@ -792,6 +793,10 @@ void ack_completed_disassembly(void/*GDelayedDisassembly*/ *disass, GLoadedBinar
const char * const *files; /* Liste de fichiers source */
+
+ g_object_unref(G_OBJECT(disass));
+
+
/* Décompilation... */
@@ -802,10 +807,10 @@ void ack_completed_disassembly(void/*GDelayedDisassembly*/ *disass, GLoadedBinar
if (binary->decbuf_count > 0)
{
binary->dec_buffers = (GCodeBuffer **)calloc(binary->decbuf_count, sizeof(GCodeBuffer *));
-
+ /*
for (i = 0; i < binary->decbuf_count; i++)
binary->dec_buffers[i] = decompile_all_from_file(binary, files[i]);
-
+ */
}