ecore_imf: fix issue magic check does not work after deletion 38/91838/2
authorJihoon Kim <jihoon48.kim@samsung.com>
Tue, 11 Oct 2016 23:31:49 +0000 (08:31 +0900)
committerGerrit Code Review <gerrit@review.vlan103.tizen.org>
Wed, 12 Oct 2016 02:23:59 +0000 (19:23 -0700)
gcc O2 optimization makes to skip ECORE_MAGIC_SET(ctx, ECORE_MAGIC_NONE) before free()
in ecore_imf_context_del().
It's essential for magic check, so no optimization attribute is used to prevent for skipping.

Change-Id: I15dc96c12adb6b2f7f55063d2d0068c619fd0c42
Signed-off-by: Jihoon Kim <jihoon48.kim@samsung.com>
src/lib/ecore_imf/ecore_imf_context.c

index 2a0d5d7..2b6b11c 100644 (file)
@@ -185,7 +185,7 @@ ecore_imf_context_info_get(Ecore_IMF_Context *ctx)
    return ctx->module->info;
 }
 
-EAPI void
+EAPI void __attribute__((optimize("O0")))
 ecore_imf_context_del(Ecore_IMF_Context *ctx)
 {
    Ecore_IMF_Func_Node *fn;