# HG changeset patch # User Richard M. Stallman # Date 827119577 0 # Node ID df37dc2b9bfbbb0c476953e471a3fdf332b5bf4f # Parent 34db919835d311a020883f8cd5bcdb84fe0597d3 (X_I18N_INHIBITED): New macro--define this instead of undefining HAVE_X_I18N. (x_window) [HAVE_X_I18N]: Set FRAME_XIM. [X_I18N_INHIBITED]: Set FRAME_XIM and FRAME_XIC to 0. diff -r 34db919835d3 -r df37dc2b9bfb src/xfns.c --- a/src/xfns.c Mon Mar 18 03:20:06 1996 +0000 +++ b/src/xfns.c Mon Mar 18 03:26:17 1996 +0000 @@ -44,7 +44,7 @@ /* On some systems, the character-composition stuff is broken in X11R5. */ #if defined (HAVE_X11R5) && ! defined (HAVE_X11R6) #ifdef X11R5_INHIBIT_I18N -#undef HAVE_X_I18N +#define X_I18N_INHIBITED #endif #endif @@ -2656,6 +2656,7 @@ XSetClassHint (FRAME_X_DISPLAY (f), XtWindow (shell_widget), &class_hints); #ifdef HAVE_X_I18N +#ifndef X_I18N_INHIBITED { XIM xim; XIC xic = NULL; @@ -2671,11 +2672,19 @@ NULL); if (xic == 0) - XCloseIM (xim); + { + XCloseIM (xim); + xim = NULL; + } } + FRAME_XIM (f) = xim; FRAME_XIC (f) = xic; } -#endif +#else /* X_I18N_INHIBITED */ + FRAME_XIM (f) = 0; + FRAME_XIC (f) = 0; +#endif /* X_I18N_INHIBITED */ +#endif /* HAVE_X_I18N */ f->output_data.x->wm_hints.input = True; f->output_data.x->wm_hints.flags |= InputHint; @@ -2769,6 +2778,7 @@ FRAME_X_DISPLAY_INFO (f)->visual, attribute_mask, &attributes); #ifdef HAVE_X_I18N +#ifndef X_I18N_INHIBITED { XIM xim; XIC xic = NULL; @@ -2784,12 +2794,20 @@ NULL); if (!xic) - XCloseIM (xim); + { + XCloseIM (xim); + xim = NULL; + } } + FRAME_XIM (f) = xim; FRAME_XIC (f) = xic; } -#endif +#else /* X_I18N_INHIBITED */ + FRAME_XIM (f) = 0; + FRAME_XIC (f) = 0; +#endif /* X_I18N_INHIBITED */ +#endif /* HAVE_X_I18N */ validate_x_resource_name ();