(mplist_put_func): Fix previous change.
[m17n/m17n-lib.git] / src / ChangeLog
index c51b661..a9c154e 100644 (file)
@@ -1,3 +1,134 @@
+2007-03-29  Kenichi Handa  <handa@m17n.org>
+
+       These changes are to avoid unsafe casting of a function pointer.
+
+       * face.h (enum MFaceProperty): Delete MFACE_HOOK_FUNC.
+       (struct MFace): New member hook.
+
+       * face.c (serialize_face): Adjusted for the change of MFace.
+       (deserialize_face): Likewise.
+       (mface__init): Likewise.  Use msymbol_put_func.
+       (mface__realize): Adjusted for the change of MFace.  Avoid
+       compiler warning.
+       (mface_get_prop): Adjusted for the change of MFace.
+       (mface_put_prop): Likewise.
+       (mface_get_hook): New function.
+       (mface_put_hook): New function.
+       (mface_update): Adjusted for the change of MFace.
+
+       * input-gui.c (win_callback): Use mplsit_get_func.
+       (minput__win_init): Use mplsit_put_func.
+
+       * input.c (take_action_list): Use mplist_get_func.
+       (init_ic_info): Likewise.
+       (fini_ic_info): Likewise.
+       (minput_callback): Likewise.
+       (minput__init): Use mplist_put_func.
+
+       * language.c (mlang__init): Use msymbol_put_func.
+
+       * m17n-core.h (M17NFunc): New function type.
+       (M17N_FUNC): New macro.
+       (msymbol_put_func, msymbol_get_func): Extern them.
+       (mplist_put_func, mplist_get_func): Extern them.
+       
+       * m17n-gui.h (mface_get_hook, mface_put_hook): Extern them.
+
+       * m17n-gui.c (mframe): Add a proper casting.
+
+       * plist.h (struct MPlist): Make the member val a union.
+       (MPLIST_VAL): Adjusted for the above change.
+       (MPLIST_FUNC): New macro.
+       (MPLIST_VAL_FUNC_P, MPLIST_SET_VAL_FUNC_P): New macros.
+
+       * plist.c (mplist_put_func, mplist_get_func): New functions.
+
+       * symbol.c (msymbol__fini): Use MPLIST_VAL.
+       (msymbol_put_func, msymbol_get_func): New functions.
+
+       * textprop.c (mtext_serialize): Use msymbol_get_func.
+       (mtext_deserialize): Likewise.
+
+2007-03-28  Kenichi Handa  <handa@m17n.org>
+
+       * input.c (get_candidate_list): Avoid unnecessary unref.
+
+2007-03-23  Kenichi Handa  <handa@m17n.org>
+
+       * database.c (mdatabase__update): Unref plist at the tail.
+
+2007-03-21  Kenichi Handa  <handa@m17n.org>
+
+       * input.c (update_custom_info): Fix for the case "name == Mnil &&
+       extra != Mnil".
+       (config_command): Fix for the case that configuration is
+       cancelled.
+       (config_variable): Likewise.
+       (minput_config_command): If keyseqlist is an empty list, cancel
+       the customization.
+       (minput_config_variable) If value is an empty list, cancel the
+       customization.
+       (minput_save_config): Handle cancellation of config and customize
+       correctly.
+
+2007-03-15  Kenichi Handa  <handa@m17n.org>
+
+       * input.c (minput_config_variable): Check custom->vars (not
+       custom->cmds).
+
+2007-03-01  Kenichi Handa  <handa@m17n.org>
+
+       * input.c (reload_im_info): Setup cmds, vars, and title of
+       im_info.
+       (check_variable_value): Fix the return value.
+
+       * database.c (mdatabase__check): If necessary, update database and
+       find a new file.
+
+2007-02-28  Kenichi Handa  <handa@m17n.org>
+
+       * database.c (get_dir_info): Set dir_info->status to
+       MDB_STATUS_OUTDATED.
+       (check_version): New function.
+       (register_database): Don't call find_database.
+       (register_databases_in_files): Don't register a database of
+       invalid version.
+       (mdatabase__update): Likewise.  Avoid unnecessary scanning.
+
+       * database.h (enum MDatabaseStatus): New membes MDB_STATUS_UPDATED
+       and MDB_STATUS_OUTDATED.
+
+       * font.h (struct MFont): Types of members type, source, and
+       spacing changed to unsigned.
+
+       * internal-gui.h (struct): Types of members category and type
+       changed to unsigned.
+
+       * internal.h (struct MText): Types of members format and coverage
+       changed to unsigned.
+
+       * m17n-core.h (M17NLIB_PATCH_LEVEL): Changed to 5.
+       (M17NLIB_VERSION_NAME): Changed to "1.3.5".
+
+2007-02-23  Kenichi Handa  <handa@m17n.org>
+
+       * input.c (Mpop): New variable.
+       (fully_initialize): Initialize Mpop.
+       (parse_action_list): Handle Mpop.
+       (take_action_list): Likewise.
+       (handle_key): When a key is unhandled, shift to the initial state
+       only if the current state has no branch action.
+
+>>>>>>> 1.284
+2007-02-12  Kenichi Handa  <handa@m17n.org>
+
+       * input.c (get_preceding_char): Unref mt if necessary.
+       (get_following_char): Likewise.
+       (parse_action_list): Fix handling of `insert' action as
+       candidates.
+       (get_candidate_list): Fix for handling (("CANDIDATE1" ...)).
+       (take_action_list): Check invalid candidate list.
+
 2007-02-06  Kenichi Handa  <handa@m17n.org>
 
        * input.c (integer_value): Check also ic->produced for @-N.