unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
From: Chris Hall <cjh@insidernewswire.com>
To: Dan Nicolaescu <dann@ics.uci.edu>
Cc: Emacs bugs <bug-gnu-emacs@gnu.org>
Subject: Re: 23.0.60;	Seg fault in xfaces.c at line 6703 (Emacs.app on GNUstep)
Date: Sat, 02 Feb 2008 21:20:39 -1000	[thread overview]
Message-ID: <02035fa87c0c1718bb87cabf307c74cc@lagorda> (raw)
In-Reply-To: <200802022013.m12KDmuP012794@sallyv1.ics.uci.edu>

On 2008-02-02 10:13:41 -1000 Dan Nicolaescu <dann@ics.uci.edu> wrote:

> Please note the Emacs.app is not included in emacs CVS, so we cannot
> help debug this. Your best choice is probably to report this to the
> Emacs.app maintainers.

Thank you for taking the time to reply.  I appreciate what you are 
saying, and realize I should have been clearer as to why I submitted 
the patch to this forum.

I think there are 2 issues here: the presence of the value '0x0' in a 
field meant to contain a pointer to a face_cache struct, and what the 
presence of that value causes to happen.

To me it seems that while almost certainly the former is an Emacs.app 
issue, the latter is more likely an Emacs 23.0.60 issue.  I don't know 
for sure, since I'm not an Emacs or Emacs.app hacker.

I am aware that sometimes some classes of errors are perhaps best 
allowed to happen and to result in catastrophic failures like 
segmentation faults, but in this case, were this one of my programs 
I'd probably consider it a bug. Being unaware of the larger program 
execution picture, I can't say for sure.

Therefore, on the off chance that you folks also might consider it a 
bug, in the sense of "unintended and/or undesirable program behavior", 
I submit the patch below.  Since I do not at present have a release 
form on file with FSF, I hereby assign the copyright(s) for it to FSF.

On my machine, the patch allows execution until the statement:

xfaces.c:6707  error ("Cannot realize default face");

is encountered.

Aloha,

Chris Hall

==========================================
*** xfaces.c    2007-11-11 07:18:45.000000000 -1000
--- ../src/xfaces.c     2008-02-02 19:24:15.000000000 -1000
*************** face for italic.  */)
*** 6700,6706 ****
       attrs[i] = Qunspecified;
     merge_face_ref (f, attributes, attrs, 1, 0);

!   def_face = FACE_FROM_ID (f, DEFAULT_FACE_ID);
     if (def_face == NULL)
       {
         if (! realize_basic_faces (f))
--- 6700,6710 ----
       attrs[i] = Qunspecified;
     merge_face_ref (f, attributes, attrs, 1, 0);

!   if (FRAME_FACE_CACHE (f))
!     def_face = FACE_FROM_ID (f, DEFAULT_FACE_ID);
!   else
!     def_face = NULL;
!
     if (def_face == NULL)
       {
         if (! realize_basic_faces (f))
*************** realize_default_face (f)
*** 7501,7506 ****
--- 7505,7512 ----
     Lisp_Object frame_font;
     struct face *face;

+   if (!c)
+     return 0;
     /* If the `default' face is not yet known, create it.  */
     lface = lface_from_face_name (f, Qdefault, 0);
     if (NILP (lface))
=========================================





  reply	other threads:[~2008-02-03  7:20 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-02-02  3:51 23.0.60; Seg fault in xfaces.c at line 6703 (Emacs.app on GNUstep) Chris
2008-02-02 20:13 ` Dan Nicolaescu
2008-02-03  7:20   ` Chris Hall [this message]
2008-02-03 17:19     ` Dan Nicolaescu
2008-02-04  1:39       ` YAMAMOTO Mitsuharu
2008-02-04  7:28         ` Chris Hall
2008-02-04  7:38           ` YAMAMOTO Mitsuharu
2008-02-04  9:55             ` Chris Hall
2008-02-04 10:15             ` William Xu
2008-02-04 10:57               ` YAMAMOTO Mitsuharu
2008-02-04 11:35                 ` William Xu
2008-02-05 11:07             ` Chris Hall
2008-02-06  1:34               ` YAMAMOTO Mitsuharu
2008-02-06  9:53                 ` Chris Hall
2008-02-05 13:30             ` Chris Hall
2008-02-03 20:52     ` Jason Rumney
2008-02-04  3:20       ` Chris Hall
2008-02-04  4:40         ` William Xu
2008-02-04  8:47         ` Jason Rumney
2008-02-04 10:32           ` Chris Hall

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=02035fa87c0c1718bb87cabf307c74cc@lagorda \
    --to=cjh@insidernewswire.com \
    --cc=bug-gnu-emacs@gnu.org \
    --cc=dann@ics.uci.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).