This service will be undergoing maintenance at 00:00 UTC, 2016-09-28. It is expected to last about 1 hours
Bug 5617 - macro causing emacs to segfault / spew rubbish
macro causing emacs to segfault / spew rubbish
Status: CLOSED RAWHIDE
Product: Red Hat Linux
Classification: Retired
Component: emacs (Show other bugs)
6.1
i386 Linux
medium Severity medium
: ---
: ---
Assigned To: Cristian Gafton
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 1999-10-06 00:01 EDT by tkhl1
Modified: 2008-05-01 11:37 EDT (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2000-02-16 19:07:04 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:


Attachments (Terms of Use)

  None (edit)
Description tkhl1 1999-10-06 00:01:56 EDT
I have declaration in .emacs that allows me to logout of
emacs by hitting F12:

(global-set-key [f12] "\C-x\C-c")

Hitting the hot key with a file that has been changed forces
emacs to quit with a segmentation fault or spew rubbish. In
previous versions (?), emacs would not exit but complain
that the macro was terminated by a command ringing the
bell.

This has been reported to gnu.org and a simple fix has been
found:

diff -c /home/rms/e21/src/keymap.c.\~1\~
/home/rms/e21/src/keymap.c
*** /home/rms/e21/src/keymap.c.~1~ Sun Sep 12 20:41:30 1999
--- /home/rms/e21/src/keymap.c  Tue Sep 28 15:09:35 1999
****************** 1954,1960 ****
        }
        else
        {
!         char tem[20];
          *push_key_description (XUINT (key), tem) = 0;
          return build_string (tem);
--- 1954,1960 ----
        }
        else
        {
!         char tem[30];
          *push_key_description (XUINT (key), tem) = 0;
          return build_string (tem);
****************** 2425,2431 ****
        for (c = 0; c < translate_len; c++)
        if (translate[c] != c)
          {
!           char buf[20];
            char *bufend;
            if (alternate_heading)
--- 2425,2431 ----
        for (c = 0; c < translate_len; c++)
        if (translate[c] != c)
          {
!           char buf[30];
            char *bufend;
            if (alternate_heading)
Comment 1 Cristian Gafton 2000-02-16 19:07:59 EST
Already fixed in current rawhide

Note You need to log in before you can comment on or make changes to this bug.