Subject: bug#11047: 24.0.94; Hangs when creating buffer starting with multiple spaces and there exists buffers with multiple spaces

From: Charles Magid <[email-masked]>
Date: Tue, 20 Mar 2012 09:37:11 -0400

This bug report will be sent to the Bug-GNU-Emacs mailing list
and the GNU bug tracker at debbugs.gnu.org.  Please check that
the From: line contains a valid email address.  After a delay of up
to one day, you should receive an acknowledgement at that address.

Please write in English if possible, as the Emacs maintainers
usually do not have translators for other languages.

Please describe exactly what actions triggered the bug, and
the precise symptoms of the bug.  If you can, give a recipe
starting from `emacs -Q':

Please read the main issue on step 8 first.  This stuff is just a crazy workaround for that.

1. Started emacs on mac os x lion 10.7.3
2. Started shell M-x shell
3. Created buffer with very long text name starting with 4 spaces
   c-x b c-q spc c-q spc c-q spc c-q spc Now, start the server and you are ready to sign in and sign out. You can also block user access in any controller by calling authenticate_user! in a before filter. Just remember that, if you add the filter to your application controller, remember to skip the filter on the sessions controller, otherwise you won’t be able to sign in in the first place.
4. confirm with a 'return'
5. Repeat with slightly more spaces and complex buffer name
    c-x b c-q spc c-q spc c-q spc c-q spc c-q spc c-q spc You can now freely proceed to implement the other controllers and views in your application. Keep in mind that if you have devise :recoverable in your model, all the related methods like User.send_reset_password_instructions will already be available in your model, so you can use them straight away to implement your own reset password feature. Since Devise use all those methods internally, if you have any questions about implementing your own reset password feature, you can always take a look at Devise own controllers for some help.
     confirm by 'return'
 6. Emacs hangs using ~100% of cpu
 7. I sampled emacs from the activity monitor and attached file.

 8. Reason:  Why would anyone want to do this you ask.  Please see: https://gist.github.com/2127333
     It turns out emacs will read the name of the buffer when requested to read the highlighted text.  So the above is a workaround for the real problem.

If Emacs crashed, and you have the Emacs process in the gdb debugger,
please include the output from the following gdb commands:
    `bt full' and `xbacktrace'.
For information about debugging Emacs, please read the file
/Applications/Emacs.app/Contents/Resources/etc/DEBUG.

In GNU Emacs 24.0.94.1 (x86_64-apple-darwin, NS apple-appkit-1038.36)
of 2012-02-27 on bob.porkrind.org
Windowing system distributor `Apple', version 10.3.1138
Configured using:
`configure '--host=x86_64-apple-darwin' '--build=i686-apple-darwin'
'--with-ns' 'build_alias=i686-apple-darwin'
'host_alias=x86_64-apple-darwin' 'CC=gcc -mmacosx-version-min=10.5''

Important settings:
  value of $LC_ALL: nil
  value of $LC_COLLATE: nil
  value of $LC_CTYPE: nil
  value of $LC_MESSAGES: nil
  value of $LC_MONETARY: nil
  value of $LC_NUMERIC: nil
  value of $LC_TIME: nil
  value of $LANG: nil
  value of $XMODIFIERS: nil
  locale-coding-system: nil
  default enable-multibyte-characters: t

Major mode: Fundamental

Minor modes in effect:
  yas/global-mode: t
  save-visited-files-mode: t
  wrap-region-global-mode: t
  show-paren-mode: t
  textmate-mode: t
  tooltip-mode: t
  mouse-wheel-mode: t
  menu-bar-mode: t
  file-name-shadow-mode: t
  global-font-lock-mode: t
  blink-cursor-mode: t
  auto-composition-mode: t
  auto-encryption-mode: t
  auto-compression-mode: t
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent input:
<help-echo> <help-echo> <escape> x r e p o r SPC e 
m <tab> <return>

Recent messages:
Loading /Users/cmmagid/.emacs.d/plugins/yasnippet/extras/imported/rails-mode/.yas-setup.el (source)...
[yas] don't know anything about menu entry yas/ignore-item [38 times]
Loading /Users/cmmagid/.emacs.d/plugins/yasnippet/extras/imported/rails-mode/.yas-setup.el (source)...done
Loading /Users/cmmagid/.emacs.d/plugins/yasnippet/extras/imported/ruby-mode/.yas-setup.el (source)...
[yas] don't know anything about menu entry yas/ignore-item [27 times]
Loading /Users/cmmagid/.emacs.d/plugins/yasnippet/extras/imported/ruby-mode/.yas-setup.el (source)...done
[yas] Loaded ~/.emacs.d/plugins/yasnippet/extras/imported
[yas] Loaded ~/.emacs.d/plugins/yasnippet/snippets
[yas] Reloaded everything....
For information about GNU Emacs and the GNU system, type C-h C-a.

Load-path shadows:
/Users/cmmagid/.emacs.d/elpa/inflections-1.0/inflections hides /Users/cmmagid/.emacs.d/el-get/rails-el/inflections
~/.emacs.d/vendor/textmate hides ~/.emacs.d/vendor/textmate.el/textmate
/Users/cmmagid/.emacs.d/elpa/ruby-mode-1.1/ruby-mode hides /Applications/Emacs.app/Contents/Resources/lisp/progmodes/ruby-mode

Features:
(shadow sort gnus-util mail-extr emacsbug message rfc822 mml mml-sec
mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils
mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr
mail-utils server rename-sgml-tag mark-more-like-this
inline-string-rectangle mark-multiple dirtree dired-x windata tree-mode
tree-widget iy-go-to-char yas/ruby yasnippet dropdown-list assoc
image-mode org-indent sh-script executable rhtml-mode rhtml-navigation
derived rhtml-sgml-hacks rhtml-ruby-hook sgml-mode rhtml-erb rhtml-fonts
org-wl org-w3m org-vm org-rmail org-mhe org-mew org-irc org-jsinfo
org-infojs org-html format-spec org-exp ob-exp org-exp-blocks org-agenda
org-info org-gnus org-docview org-bibtex bibtex org-bbdb vc-git rinari
jump inflections findr ruby-compilation which-func inf-ruby
save-visited-files cus-edit cus-start cus-load wrap-region
Save-visited-files-autoloads iy-go-to-char-autoloads
rainbow-mode-autoloads rinari-autoloads jump-autoloads
inflections-autoloads findr-autoloads ruby-compilation-autoloads
inf-ruby-autoloads ruby-mode-autoloads yaml-mode-autoloads remember
org-remember org-datetree org byte-opt warnings advice advice-preload
ob-emacs-lisp ob-tangle ob-ref ob-lob ob-table org-footnote org-src
ob-comint ob-keys ob ob-eval org-pcomplete pcomplete org-list org-faces
org-compat org-entities org-macs noutline outline cal-menu calendar
cal-loaddefs grep compile paren color-theme-railscasts .loaddefs yari
thingatpt sudo-save vline coffee-mode comint ring rvm rspec-mode
ansi-color edmacro kmacro ruby-mode color-theme wid-edit el-get
help-mode easymenu view autoload help-fns bytecomp byte-compile cconv
macroexp package tabulated-list dired regexp-opt ido peepopen textmate
easy-mmode cl imenu time-date tooltip ediff-hook vc-hooks
lisp-float-type mwheel ns-win tool-bar dnd fontset image fringe
lisp-mode register page menu-bar rfn-eshadow timer select scroll-bar
mouse jit-lock font-lock syntax facemenu font-core frame cham georgian
utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean
japanese hebrew greek romanian slovak czech european ethiopic indian
cyrillic chinese case-table epa-hook jka-cmpr-hook help simple abbrev
minibuffer loaddefs button faces cus-face files text-properties overlay
sha1 md5 base64 format env code-pages mule custom widget
hashtable-print-readable backquote make-network-process ns multi-tty
emacs)