From: David Reitter <david.reitter@gmail.com>
To: emacs-pretest-bug@gnu.org
Subject: bug#3286: NS hang in event handling
Date: Wed, 13 May 2009 23:17:43 -0700 [thread overview]
Message-ID: <E7F436A1-BC34-451F-A465-86C38CD969BC@gmail.com> (raw)
I can reproduce a hang (C-g doesn't work) pretty reliably in a current
build (NS port, on OS X 10.5.7) using this recipe:
[Prerequisite: ESS must be installed]
Emacs -q (actually, Aquamacs)
Evaluate the bit of code shown at the bottom of this e-mail
C-x b test-buffer RET
M-x R-mode RET
M-x R RET ;; to open an R process
then switch back to test-buffer and start typing randomly. I don't
need to type much to reproduce this.
Emacs wil hang and not react to anything except changing faces when
the mouse cursor is moved over text with `mouse-face' properties.
I don't get this if I simplify `ess-maybe-show-arg-list' to just show
a message.
If you want me to do something specific with gdb, then I can do that
of course.
(defvar ess-arglist-show-timer nil)
(progn
(if ess-arglist-show-timer
(cancel-timer ess-arglist-show-timer))
(setq ess-arglist-show-timer
(run-with-idle-timer 0.2 t
(defun ess-maybe-show-arg-list ()
(interactive)
(and (eq major-mode 'ess-mode)
(or (not (current-message))
(and (equal ess-r-args-show-as 'tooltip)
ess-has-tooltip))
;; to do check tooltip
(condition-case nil
(ess-r-args-show)
;; avoid showing error if not over function
(error nil)))))))
(defun ess-r-args-current-function ()
"Returns the name of the R function assuming point is currently
within the argument list or nil if no possible function name is
found."
(save-excursion
(condition-case nil (up-list -1)
(error "Can't find opening parenthesis."))
(let ((posend (point)))
(backward-sexp 1)
(let ((rfunname (buffer-substring-no-properties posend (point))))
(if (posix-string-match "^[a-zA-Z0-9_\.]+$" rfunname)
rfunname nil)))))
from ESS:
#0 0x9021e286 in mach_msg_trap ()
#1 0x90225a7c in mach_msg ()
#2 0x9012a04e in CFRunLoopRunSpecific ()
#3 0x9012ac78 in CFRunLoopRunInMode ()
#4 0x9272b28c in RunCurrentEventLoopInMode ()
#5 0x9272b0a5 in ReceiveNextEventCommon ()
#6 0x9272af19 in BlockUntilNextEventMatchingListInMode ()
#7 0x93f15d0d in _DPSNextEvent ()
#8 0x93f155c0 in -[NSApplication
nextEventMatchingMask:untilDate:inMode:dequeue:] ()
#9 0x93f0e5fb in -[NSApplication run] ()
#10 0x001a6083 in ns_read_socket ()
#11 0x000c0a41 in read_avail_input ()
#12 0x000c0bb5 in gobble_input ()
#13 0x001a6454 in ns_select ()
#14 0x00185c02 in wait_reading_process_output ()
#15 0x00187198 in Faccept_process_output ()
#16 0x0013d750 in Ffuncall ()
#17 0x0017e10a in Fbyte_code ()
#18 0x0013cfa4 in funcall_lambda ()
#19 0x0013d4ab in Ffuncall ()
#20 0x0017e10a in Fbyte_code ()
#21 0x0013cfa4 in funcall_lambda ()
#22 0x0013d4ab in Ffuncall ()
#23 0x0017e10a in Fbyte_code ()
#24 0x0013cfa4 in funcall_lambda ()
#25 0x0013d4ab in Ffuncall ()
#26 0x0017e10a in Fbyte_code ()
#27 0x0013cfa4 in funcall_lambda ()
#28 0x001402f9 in apply_lambda ()
#29 0x0013fea2 in Feval ()
#30 0x001415b2 in internal_lisp_condition_case ()
#31 0x0014163b in Fcondition_case ()
#32 0x001401a8 in Feval ()
#33 0x00140b5f in Fand ()
#34 0x001401a8 in Feval ()
#35 0x0013d1b1 in funcall_lambda ()
#36 0x0013d4ab in Ffuncall ()
#37 0x0013e0a0 in Fapply ()
#38 0x0013d6a6 in Ffuncall ()
#39 0x0017e10a in Fbyte_code ()
#40 0x00140146 in Feval ()
#41 0x001415b2 in internal_lisp_condition_case ()
#42 0x0017eb1e in Fbyte_code ()
#43 0x0013cfa4 in funcall_lambda ()
#44 0x0013d4ab in Ffuncall ()
#45 0x0013db39 in call1 ()
#46 0x000b8aea in timer_check ()
#47 0x000c1858 in detect_input_pending_run_timers ()
#48 0x00185cd1 in wait_reading_process_output ()
#49 0x00004226 in sit_for ()
#50 0x000c761d in read_char ()
#51 0x000c9133 in read_key_sequence ()
#52 0x000cb4b0 in command_loop_1 ()
#53 0x0013baad in internal_condition_case ()
#54 0x000b77b8 in command_loop_2 ()
#55 0x0013b98c in internal_catch ()
#56 0x000be29b in recursive_edit_1 ()
#57 0x000be454 in Frecursive_edit ()
#58 0x000b691b in main ()
next reply other threads:[~2009-05-14 6:17 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-05-14 6:17 David Reitter [this message]
2016-05-17 18:02 ` bug#3286: NS hang in event handling Alan Third
2016-05-17 18:12 ` David Reitter
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=E7F436A1-BC34-451F-A465-86C38CD969BC@gmail.com \
--to=david.reitter@gmail.com \
--cc=3286@emacsbugs.donarmstrong.com \
--cc=emacs-pretest-bug@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.