bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#527: input-input-method / Many crashes / Japanese input


From: David Reitter
Subject: bug#527: input-input-method / Many crashes / Japanese input
Date: Fri, 4 Jul 2008 08:18:39 +0100

José,

I've added this patch and started a new build; please download at nightly build from about 12 noon Edinburgh time.

- David

On 4 Jul 2008, at 04:29, YAMAMOTO Mitsuharu wrote:

On Thu, 3 Jul 2008 11:45:07 +0100, David Reitter <david.reitter@gmail.com > said:

Begin forwarded message:

From: "Jose Figueroa-O'Farrill" <j.m.figueroa@ed.ac.uk>
Date: 3 July 2008 10:52:27 BST
To: aquamacs-bugs@aquamacs.org
Subject: [Aquamacs-bugs] Many crashes in 1.4
Reply-To: j.m.figueroa@ed.ac.uk


Hi,

It's the third time that Aquamacs 1.4 crashes while typing.  This
had not happened in a looooong time. This time I managed to save the crash report which I include below. I'm afraid that I don't know how
to reproduce it.

Cheers, José


Date/Time:      2008-07-02 23:06:09.682 +0200
OS Version:     10.4.11 (Build 8S165)
Report Version: 4

Command: Aquamacs Emacs
Path:    /Applications/Aquamacs Emacs.app/Contents/MacOS/Aquamacs
Emacs
Parent:  WindowServer [62]

Version: Aquamacs 1.4, GNU Emacs 22 ()

PID:    14598
Thread: 0

Exception:  EXC_BAD_ACCESS (0x0001)
Codes:      KERN_PROTECTION_FAILURE (0x0002) at 0x00000008

Thread 0 Crashed:
0   org.gnu.AquamacsEmacs               0x00175138
mac_handle_text_input_event + 1720
(snip)
Thread 0 crashed with PPC Thread State 64:
r4: 0x0000000000000000   r5: 0x00000000081f0800   r6:
0x0000000000000000   r7: 0x0000000000000059

If your object file is not much different from mine, the crash seems
to happen just before a call to Long2Fix.

_mac_handle_text_input_event:

+1708  00000a6c  81230008  lwz      r9,0x8(r3)
+1712  00000a70  5402103a  rlwinm   r2,r0,2,0,29
+1716  00000a74  7cc2482e  lwzx     r6,r2,r9
+1720  00000a78  83a60008  lwz      r29,0x8(r6)
+1724  00000a7c  2f9d0000  cmpwi    cr7,r29,0x0
+1728  00000a80  419efe88  beq      cr7,0x908
+1732  00000a84  807d0008  lwz      r3,0x8(r29)
+1736  00000a88  48008959  bl       0x93e0           _Long2Fix

Could you try the patch below?

                                     YAMAMOTO Mitsuharu
                                mituharu@math.s.chiba-u.ac.jp

Index: src/mactoolbox.c
===================================================================
RCS file: /cvsroot/emacs/emacs/src/mactoolbox.c,v
retrieving revision 1.1.2.4
diff -c -p -r1.1.2.4 mactoolbox.c
*** src/mactoolbox.c    23 Apr 2008 08:56:20 -0000      1.1.2.4
--- src/mactoolbox.c    4 Jul 2008 03:20:27 -0000
*************** mac_handle_text_input_event (next_handle
*** 575,581 ****
            int hpos, vpos, x, y;
            struct glyph_row *row;
            struct glyph *glyph;
!           XFontStruct *font;

            f = mac_focus_frame (&one_mac_display_info);
            w = XWINDOW (f->selected_window);
--- 575,581 ----
            int hpos, vpos, x, y;
            struct glyph_row *row;
            struct glyph *glyph;
!           struct face *face;

            f = mac_focus_frame (&one_mac_display_info);
            w = XWINDOW (f->selected_window);
*************** mac_handle_text_input_event (next_handle
*** 600,608 ****
                   + row->visible_height
                   + f->top_pos + FRAME_OUTER_TO_INNER_DIFF_Y (f));

!           font = FACE_FROM_ID (f, glyph->face_id)->font;
!           if (font)
              {
                Fixed point_size = Long2Fix (font->mac_fontsize);
                short height = row->visible_height;
                short ascent = row->ascent;
--- 600,609 ----
                   + row->visible_height
                   + f->top_pos + FRAME_OUTER_TO_INNER_DIFF_Y (f));

!           face = FACE_FROM_ID (f, glyph->face_id);
!           if (face && face->font)
              {
+               XFontStruct *font = face->font;
                Fixed point_size = Long2Fix (font->mac_fontsize);
                short height = row->visible_height;
                short ascent = row->ascent;


Attachment: smime.p7s
Description: S/MIME cryptographic signature


reply via email to

[Prev in Thread] Current Thread [Next in Thread]