diff options
Diffstat (limited to 'src/format/preload.c')
-rw-r--r-- | src/format/preload.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/src/format/preload.c b/src/format/preload.c index 7f7a435..cddc60e 100644 --- a/src/format/preload.c +++ b/src/format/preload.c @@ -105,14 +105,18 @@ static void g_preload_info_init(GPreloadInfo *info) static void g_preload_info_dispose(GPreloadInfo *info) { + size_t count; /* Borne de parcours */ + size_t i; /* Boucle de parcours */ GArchInstruction *instr; /* Instruction à libérer */ GDbComment *comment; /* Commentaire à libérer */ g_preload_info_lock_instructions(info); - while (_g_preload_info_count_instructions(info) > 0) + count = _g_preload_info_count_instructions(info); + + for (i = 0; i < count; i++) { - instr = _g_preload_info_grab_instruction(info, 0); + instr = _g_preload_info_grab_instruction(info, i); g_object_unref(G_OBJECT(instr)); } @@ -122,9 +126,11 @@ static void g_preload_info_dispose(GPreloadInfo *info) g_preload_info_lock_comments(info); - while (_g_preload_info_count_comments(info) > 0) + count = _g_preload_info_count_comments(info); + + for (i = 0; i < count; i++) { - comment = _g_preload_info_grab_comment(info, 0); + comment = _g_preload_info_grab_comment(info, i); g_object_unref(G_OBJECT(comment)); } |