ECORE_IMF_CALLBACK_PREEDIT_END, NULL);
if (commit_len > 0) {
+ char *commit_str = NULL;
+ commit_str = strdup(imcontext->preedit_commit);
+ clear_preedit(imcontext);
ecore_imf_context_commit_event_add(imcontext->ctx,
- imcontext->preedit_commit);
+ commit_str);
ecore_imf_context_event_callback_call(imcontext->ctx,
ECORE_IMF_CALLBACK_COMMIT,
- (void *)imcontext->preedit_commit);
+ (void *)commit_str);
+ free(commit_str);
}
}
Eina_Bool preedit_empty = check_preedit_empty(imcontext);
commit_preedit (imcontext);
- clear_preedit(imcontext);
if (!imcontext->input) return;