all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Thamer Mahmoud <thamer.mahmoud@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: 7012@debbugs.gnu.org
Subject: bug#7012: 24.0.50; bidi: crash while selecting region using mouse in X11
Date: Mon, 20 Sep 2010 16:04:11 +0300	[thread overview]
Message-ID: <19607.23499.733612.877623@zemblan.newkuwait.org> (raw)
In-Reply-To: <83k4mp4r5f.fsf@gnu.org>

Eli Zaretskii writes:
 > Thanks.  Unfortunately, I cannot reproduce this on my machine (which
 > runs MS-Windows).
 > 
 > How many times do you need to move the mouse back and forth before it
 > crashes? 

I did more testing, and I only had to drag the mouse once.  AFAICT,
it's not the multiple highlighting that is causing this crash, but
rather dragging the mouse upward (by pressing and holding the
left-button) while trying to position cursor on an Arabic line that
starts with L2R characters embedded in an R2L context (like the 2nd
line in the testcase).

For instance, if I have the following content in the middle of a
buffer:

‏
a ‏abcdef

Emacs crashes when dragging the mouse from any point below while
moving upward to position cursor between "abcdef".

Moreover, this crash seems specific to Arabic and reordered Latin text
using RLM (like the above example).  I couldn't reproduce this using
Hebrew.

 > If you can consistently reproduce the crash with the recipe you
 > posted, then please type "pr *bidi_it" in frame #1 and post the
 > results here.  Thanks.

Did you mean "p *bidi_it"?  (sorry, I'm not familiar with what "pr" is
and it returned an error).  Here is the output of both commands anyway
using the earlier testcase.

Thanks.

(gdb) p *bidi_it
$6 = {
  bytepos = 14, 
  charpos = 10, 
  ch = 110, 
  ch_len = 1, 
  type = STRONG_L, 
  type_after_w1 = STRONG_L, 
  orig_type = STRONG_L, 
  resolved_level = 2, 
  invalid_levels = 0, 
  invalid_rl_levels = -1, 
  prev_was_pdf = 0, 
  prev = {
    bytepos = 13, 
    charpos = 9, 
    type = STRONG_L, 
    type_after_w1 = STRONG_L, 
    orig_type = STRONG_L
  }, 
  last_strong = {
    bytepos = 13, 
    charpos = 9, 
    type = STRONG_L, 
    type_after_w1 = STRONG_L, 
    orig_type = STRONG_L
  }, 
  next_for_neutral = {
    bytepos = 10, 
    charpos = 6, 
    type = UNKNOWN_BT, 
    type_after_w1 = UNKNOWN_BT, 
    orig_type = UNKNOWN_BT
  }, 
  prev_for_neutral = {
    bytepos = 13, 
    charpos = 9, 
    type = STRONG_L, 
    type_after_w1 = STRONG_L, 
    orig_type = STRONG_L
  }, 
  next_for_ws = {
    bytepos = 0, 
    charpos = 0, 
    type = UNKNOWN_BT, 
    type_after_w1 = UNKNOWN_BT, 
    orig_type = UNKNOWN_BT
  }, 
  next_en_pos = -1, 
  ignore_bn_limit = 0, 
  sor = R2L, 
  scan_dir = -1, 
  stack_idx = 0, 
  level_stack = {{
      level = 1, 
      override = NEUTRAL_DIR
    }, {
      level = 0, 
      override = NEUTRAL_DIR
    } <repeats 63 times>}, 
  first_elt = 0, 
  paragraph_dir = R2L, 
  new_paragraph = 0, 
  separator_limit = -1
}

(gdb) pr *bidi_it
(
Program received signal SIGSEGV, Segmentation fault.
0x0820684e in print_object (obj=14, printcharfun=138920914, escapeflag=1) at print.c:1864
The program being debugged was signaled while in a function called from GDB.
GDB remains in the frame where the signal was received.
To change this behavior use "set unwindonsignal on".
Evaluation of the expression containing the function
(debug_print) will be abandoned.
When the function is done executing, GDB will silently stop.


-- 
Thamer







  reply	other threads:[~2010-09-20 13:04 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-09-11 12:04 bug#7012: 24.0.50; bidi: crash while selecting region using mouse in X11 Thamer Mahmoud
2010-09-13 15:09 ` Eli Zaretskii
2010-09-20 13:04   ` Thamer Mahmoud [this message]
2010-09-20 19:00     ` Eli Zaretskii
2010-09-22  2:56       ` Thamer Mahmoud
2010-09-22  8:56         ` Eli Zaretskii
2012-03-27 23:03           ` Glenn Morris

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

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

  git send-email \
    --in-reply-to=19607.23499.733612.877623@zemblan.newkuwait.org \
    --to=thamer.mahmoud@gmail.com \
    --cc=7012@debbugs.gnu.org \
    --cc=eliz@gnu.org \
    /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 external index

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

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.