[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] /srv/bzr/emacs/trunk r99851: Fix crash due to incorrect re
From: |
Eli Zaretskii |
Subject: |
[Emacs-diffs] /srv/bzr/emacs/trunk r99851: Fix crash due to incorrect resolution of type of NSM characters (bug#5858). |
Date: |
Thu, 08 Apr 2010 20:35:10 +0300 |
User-agent: |
Bazaar (2.0.3) |
------------------------------------------------------------
revno: 99851
committer: Eli Zaretskii <address@hidden>
branch nick: trunk
timestamp: Thu 2010-04-08 20:35:10 +0300
message:
Fix crash due to incorrect resolution of type of NSM characters (bug#5858).
bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
prev.orig_type, for resolving type of NSM.
modified:
src/ChangeLog
src/bidi.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog 2010-04-08 16:20:32 +0000
+++ b/src/ChangeLog 2010-04-08 17:35:10 +0000
@@ -1,3 +1,8 @@
+2010-04-08 Eli Zaretskii <address@hidden>
+
+ * bidi.c (bidi_resolve_weak): Use prev.type_after_w1, instead of
+ prev.orig_type, for resolving type of NSM. (Bug#5858)
+
2010-04-08 Jan Djärv <address@hidden>
* xsettings.c (current_font, SYSTEM_FONT, XSETTINGS_FONT_NAME): New.
=== modified file 'src/bidi.c'
--- a/src/bidi.c 2010-04-03 13:43:23 +0000
+++ b/src/bidi.c 2010-04-08 17:35:10 +0000
@@ -1347,12 +1347,14 @@
if (type == WEAK_NSM) /* W1 */
{
/* Note that we don't need to consider the case where the
- prev character has its type overridden by an RLO or LRO:
- such characters are outside the current level run, and
- thus not relevant to this NSM. Thus, NSM gets the
- orig_type of the previous character. */
+ prev character has its type overridden by an RLO or LRO,
+ because then either the type of this NSM would have been
+ also overridden, or the previous character is outside the
+ current level run, and thus not relevant to this NSM.
+ This is why NSM gets the type_after_w1 of the previous
+ character. */
if (bidi_it->prev.type != UNKNOWN_BT)
- type = bidi_it->prev.orig_type;
+ type = bidi_it->prev.type_after_w1;
else if (bidi_it->sor == R2L)
type = STRONG_R;
else if (bidi_it->sor == L2R)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/trunk r99851: Fix crash due to incorrect resolution of type of NSM characters (bug#5858).,
Eli Zaretskii <=