emacs-devel
[Top][All Lists]
Advanced

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

Re: 64-bit emacs crashes a lot


From: Ryan Johnson
Subject: Re: 64-bit emacs crashes a lot
Date: Fri, 16 Aug 2013 07:37:53 -0400
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130801 Thunderbird/17.0.8

On 16/08/2013 4:56 AM, Eli Zaretskii wrote:
I'm not subscribed to this list, so if you want me to reply, please CC
me explicitly.  Besides, this discussion should be moved to
address@hidden, since I don't see anything Cygwin specific here
at this point.

Date: Thu, 15 Aug 2013 16:55:18 -0400
From: Ryan Johnson <address@hidden>

On 15/08/2013 1:10 PM, Eli Zaretskii wrote:
Date: Thu, 15 Aug 2013 12:58:02 -0400
From: Ken Brown <address@hidden>
CC: Eli Zaretskii <address@hidden>

Eli is the expert on bidi.c (he wrote it).  He can probably tell you
whether you've really bumped into an emacs bug here.
There's nothing wrong with bidi.c here, it just aborts because it is
handed an invalid character codepoint.  It would have been useful to
see the value of that character.
I guess I would just consider crashing to be overkill for a bad byte on
the input stream...
It's not a crash, it's a deliberate abort.  Any invalid codepoint at
such low level of the Emacs display engine means only one thing: a
bug, and a grave one at that.  Such bugs must be flagged prominently
and unequivocally, prompting users to report them.  We could in
principle "recover" by substituting some other character, but such
recovery would only sweep a grave problem under the carpet.  Since
Emacs isn't a safety-critical program, and auto-saves your edits
before it commits suicide, such recovery feature is deemed
inappropriate, and detrimental to the general quality of Emacs code in
the long run.
OK, makes sense.

and in any case, if 5-byte UTF-8 is illegal, and
worth dying for, wouldn't it make sense to die right away rather than
processing it so something else can croak down the road?
See above: yes, it's worth dying for, because I'm quite sure this is a
sign of a very serious trouble in the session anyway.  Why does it
matter for you, as a user, whether we abort here or "down the road"?
The principle is to die as soon as possible, because in many cases
this allows to identify the culprit faster and easier.  IOW, dying
sooner and faster helps the Emacs maintainers to find and fix problems
without any real effect on the users.
Re die as soon as possible: We're in violent agreement: I argued that---if 5-byte UTF-8 is illegal---emacs should abort at the decoding stage (= earlier) rather than at some later point when it discovers the too-large value. In any case, though, I can't repro on a debug build so this whole thing may be moot.

Ryan




reply via email to

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