Subject: bug#7380: 23.2; Dead keys misinterpreted in gtk emacs

From: Ian D. Leroux <[email-masked]>
Date: Sat, 20 Nov 2010 19:31:58 -0500

At Tue, 16 Nov 2010 11:57:05 -0500,
Stefan Monnier <[email-masked]> wrote:
> Now, as to why this X11 key composition does not work for you.
> Could you maybe try to rebuild it and show us the output of "configure"?

The full config.log is up at:
http://web.mit.edu/~idleroux/Public/emacsbug7380/config.log

The summary printed at the end of configure was:

Configured for `x86_64--netbsd'.

  Where should the build process find the source code?    /pkg_comp/obj/pkgsrc/editors/emacs/default/emacs-23.2
  What operating system and machine description files should Emacs use?
        `s/netbsd.h' and `m/amdx86-64.h'
  What compiler should emacs be built with?               cc -O2 -pipe -I/usr/pkg/include -I/usr/include -I/usr/X11R7/include -I/usr/X11R7/include/freetype2
  Should Emacs use the GNU version of malloc?             yes
  Should Emacs use a relocating allocator for buffers?    yes
  Should Emacs use mmap(2) for buffer allocation?         no
  What window system should Emacs use?                    x11
  What toolkit should Emacs use?                          GTK
  Where do we find X Windows header files?                /usr/X11R7/include
  Where do we find X Windows libraries?                   /usr/X11R7/lib
  Does Emacs use -lXaw3d?                                 no
  Does Emacs use -lXpm?                                   yes
  Does Emacs use -ljpeg?                                  yes
  Does Emacs use -ltiff?                                  yes
  Does Emacs use a gif library?                           yes -lgif
  Does Emacs use -lpng?                                   yes
  Does Emacs use -lrsvg-2?                                yes
  Does Emacs use -lgpm?                                   no
  Does Emacs use -ldbus?                                  yes
  Does Emacs use -lgconf?                                 no
  Does Emacs use -lfreetype?                              yes
  Does Emacs use -lm17n-flt?                              yes
  Does Emacs use -lotf?                                   yes
  Does Emacs use -lxft?                                   yes
  Does Emacs use toolkit scroll bars?                     yes

D-Bus integration has been tested for GNU/Linux only.

configure: creating ./config.status
config.status: creating Makefile
config.status: creating lib-src/Makefile.c
config.status: creating oldXMenu/Makefile
config.status: creating doc/emacs/Makefile
config.status: creating doc/misc/Makefile
config.status: creating doc/lispintro/Makefile
config.status: creating doc/lispref/Makefile
config.status: creating src/Makefile.c
config.status: creating lwlib/Makefile
config.status: creating lisp/Makefile
config.status: creating leim/Makefile
config.status: creating src/config.h
config.status: executing default commands
creating src/epaths.h
creating lib-src/Makefile
creating src/Makefile
configure: WARNING: Unrecognized options: --without-libiconv-prefix, --without-libintl-prefix

> Not sure it'll help, tho.  We'll need either someone to be able to
> reproduce it, or you'll need to dig in the code, play with GDB to try
> and see what's going on there.  If you're up to it, you can try and
> place breakpoints near the call to XmbLookupString in xterm.c and single
> step there.  Normally, the dead-acute event should not escape from this
> part of the code: instead it should turn into "nothing" (just change
> some state somewhere either in compose_status or in "FRAME_XIC (f)"
> depending on whether that frame uses XIM/XIC),

I had a first crack at this.  XmbLookupString is never called because
FRAME_XIC (f) is NULL, so lines 6413--6441 are skipped and
XLookupString is called instead.  The result gets categorized as a
NON_ASCII_KEYSTROKE_EVENT.

Where is FRAME_XIC (f) supposed to be set?  My first impression is
that that is where the problem is (possibly a configuration problem?)

Any further guidance or tips will be appreciated.

Ian Leroux