GNU bug report logs - #12774
24.2.50; EMACS 24.2.50.1 crashing‏

Previous Next

Package: emacs;

Reported by: Vincent Belaïche <vincent.b.1 <at> hotmail.fr>

Date: Thu, 1 Nov 2012 05:39:01 UTC

Severity: normal

Found in version 24.2.50

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Vincent Belaïche <vincent.b.1 <at> hotmail.fr> 
To: Eli Zaretskii <eliz <at> gnu.org> 
Cc: 12774 <at> debbugs.gnu.org
Subject: bug#12774: RE: bug#12774: 24.2.50; EMACS 24.2.50.1 crashing
Date: Sun, 04 Nov 2012 09:52:02 +0100
[Message part 1 (text/plain, inline)]

> Date: Sun, 4 Nov 2012 05:46:16 +0200
> From: eliz <at> gnu.org
> Subject: Re: RE: bug#12774: RE: bug#12774: 24.2.50; EMACS 24.2.50.1 crashing‏
> To: vincent.b.1 <at> hotmail.fr
> CC: 12774 <at> debbugs.gnu.org
> 
> > From: Vincent Belaïche <vincent.b.1 <at> hotmail.fr>
> > Date: Sat, 3 Nov 2012 23:24:15 +0100
> > 
> > The crash can happen without my doing anything special previously except opening that attached file USING_CEDET_FROM_BZR which causes loading orgmode. Also it seems that it has to do with the size of my init.el file --- and not only to its content.
> > 
> > 
> > 
> > For instance there was in my init file some doit-1 function definition (which is some trash code which I wrote for some purpose and I don't need any longer), here is the definition:
> > 
> > 
> > (defun doit-1 ()
> > (interactive)
> > (save-excursion
> > ; (goto-char (point-min))
> > (while (re-search-forward "--\\|\\." nil t)
> > (when (save-match-data (texmathp))
> > (cond
> > ((string= (match-string 0) "--")
> > (replace-match "-"))
> > ((string= (match-string 0) ".")
> > (unless (looking-back "\\\\right")
> > (replace-match "\\cdot " t t))))))))
> > 
> > 
> > 
> > If I comment out this definition from the init file, then I cannot re-produce the crash (or at least I could not succeed in doing it, but it may still be possible), but if I let it, then I can rather easily make the crash occur. I cannot believe that this function per se is the root cause of the problem. However the simple fact that its definition takes some memory space suffices to increase the likelihood the crash when I open that file.
> 
> Is this doit-1 function actually used somewhere in your init.el or in
> your .emacs? If it is, can you show the code that uses it?
> 

No it is not used anywhere else, this is some leftover trash code...

> > BTW, here is the end of my *Message* buffer when the opening of USING_CEDET_FROM_BZR does cause any crash, this reflects what should happen when this file is visited --- the `Loading dired-x...done' is because I open USING_CEDET_FROM_BZR from a Dired buffer, so what happens is from line `flet' is an obsolete macro (as of 24.3); use either `cl-flet' or `cl-letf'. [2 times]. 
> > 
> > 
> > Loading dired-x...done
> > `flet' is an obsolete macro (as of 24.3); use either `cl-flet' or `cl-letf'. [2 times]
> > File mode specification error: (void-function org-mode-p)
> > Loading vc-bzr...done
> 
> Can you turn on debug-on-error and show the Lisp backtrace for these
> messages? Each time a backtrace appears, type "C-]" to get out of the
> debugger and continue to the next error.

For your information, to get the backtrace I had to open directly
USING_CEDET_FROM_BZR without going through Dired, because going through
Dired beforehand increases considerably the risk of trash.

When I did `C-]' I got again and again the same backtrace.

For your information also, I did not get any bracktrace for

 `flet' is an obsolete macro (as of 24.3); use either `cl-flet' or
 `cl-letf'

   Vincent.

[backtrace_1st.txt (text/plain, inline)]
Debugger entered--Lisp error: (void-function org-mode-p)
  (org-mode-p)
  (if (org-mode-p) (setq bl nil))
  (while bl (set-buffer (car (prog1 bl (setq bl (cdr bl))))) (if (org-mode-p) (setq bl nil)))
  (save-excursion (while bl (set-buffer (car (prog1 bl (setq bl (cdr bl))))) (if (org-mode-p) (setq bl nil))) (if (org-mode-p) (progn (easy-menu-change (quote ("Org")) "File List for Agenda" (append (list ["Edit File List" (org-edit-agenda-file-list) t] ["Add/Move Current File to Front of List" org-agenda-file-to-front t] ["Remove Current File from List" org-remove-file t] ["Cycle through agenda files" org-cycle-agenda-files t] ["Occur in all agenda files" org-occur-in-agenda-files t] "--") (mapcar (quote org-file-menu-entry) (org-agenda-files t)))))))
  (let ((bl (buffer-list))) (save-excursion (while bl (set-buffer (car (prog1 bl (setq bl (cdr bl))))) (if (org-mode-p) (setq bl nil))) (if (org-mode-p) (progn (easy-menu-change (quote ("Org")) "File List for Agenda" (append (list ["Edit File List" ... t] ["Add/Move Current File to Front of List" org-agenda-file-to-front t] ["Remove Current File from List" org-remove-file t] ["Cycle through agenda files" org-cycle-agenda-files t] ["Occur in all agenda files" org-occur-in-agenda-files t] "--") (mapcar (quote org-file-menu-entry) (org-agenda-files t))))))))
  org-install-agenda-files-menu()
  (let ((delay-mode-hooks t)) (outline-mode) (setq major-mode (quote org-mode)) (setq mode-name "Org") (progn (if (get (quote outline-mode) (quote mode-class)) (put (quote org-mode) (quote mode-class) (get (quote outline-mode) (quote mode-class)))) (if (keymap-parent org-mode-map) nil (set-keymap-parent org-mode-map (current-local-map))) (let ((parent (char-table-parent org-mode-syntax-table))) (if (and parent (not (eq parent (standard-syntax-table)))) nil (set-char-table-parent org-mode-syntax-table (syntax-table)))) (if (or (abbrev-table-get org-mode-abbrev-table :parents) (eq org-mode-abbrev-table local-abbrev-table)) nil (abbrev-table-put org-mode-abbrev-table :parents (list local-abbrev-table)))) (use-local-map org-mode-map) (set-syntax-table org-mode-syntax-table) (setq local-abbrev-table org-mode-abbrev-table) (if nil (if (boundp (quote outline-mode-menu-heading)) (progn (easy-menu-remove outline-mode-menu-heading) (easy-menu-remove outline-mode-menu-show) (easy-menu-remove outline-mode-menu-hide))) (define-key org-mode-map [menu-bar headings] (quote undefined)) (define-key org-mode-map [menu-bar hide] (quote undefined)) (define-key org-mode-map [menu-bar show] (quote undefined))) (org-load-modules-maybe) (easy-menu-add org-org-menu) (easy-menu-add org-tbl-menu) (org-install-agenda-files-menu) (if org-descriptive-links (add-to-invisibility-spec (quote (org-link)))) (add-to-invisibility-spec (quote (org-cwidth))) (add-to-invisibility-spec (quote (org-hide-block . t))) (if nil (progn (org-set-local (quote line-move-ignore-invisible) t))) (org-set-local (quote outline-regexp) org-outline-regexp) (org-set-local (quote outline-level) (quote org-outline-level)) (if (and org-ellipsis (fboundp (quote set-display-table-slot)) (boundp (quote buffer-display-table)) (fboundp (quote make-glyph-code))) (progn (if org-display-table nil (setq org-display-table (make-display-table))) (set-display-table-slot org-display-table 4 (vconcat (mapcar (function (lambda ... ...)) (if (stringp org-ellipsis) org-ellipsis "...")))) (setq buffer-display-table org-display-table))) (org-set-regexps-and-options) (if (and org-tag-faces (not org-tags-special-faces-re)) (progn (org-set-tag-faces (quote org-tag-faces) org-tag-faces))) (org-set-local (quote calc-embedded-open-mode) "# ") (modify-syntax-entry 64 "w") (if org-startup-truncated (setq truncate-lines t)) (org-set-local (quote font-lock-unfontify-region-function) (quote org-unfontify-region)) (org-set-local (quote org-table-may-need-update) t) (org-add-hook (quote before-change-functions) (quote org-before-change-function) nil (quote local)) (org-add-hook (quote kill-buffer-hook) (quote org-check-running-clock) nil (quote local)) (org-set-autofill-regexps) (setq indent-line-function (quote org-indent-line-function)) (org-update-radio-target-regexp) (org-set-local (quote beginning-of-defun-function) (quote org-beginning-of-defun)) (org-set-local (quote end-of-defun-function) (quote org-end-of-defun)) (org-set-local (quote next-error-function) (quote org-occur-next-match)) (if org-enforce-todo-dependencies (add-hook (quote org-blocker-hook) (quote org-block-todo-from-children-or-siblings-or-parent)) (remove-hook (quote org-blocker-hook) (quote org-block-todo-from-children-or-siblings-or-parent))) (if org-enforce-todo-checkbox-dependencies (add-hook (quote org-blocker-hook) (quote org-block-todo-from-checkboxes)) (remove-hook (quote org-blocker-hook) (quote org-block-todo-from-checkboxes))) (org-set-local (quote comment-start) "#") (org-set-local (quote comment-padding) " ") (org-set-local (quote align-mode-rules-list) (quote ((org-in-buffer-settings (regexp . "^#\\+[A-Z_]+:\\(\\s-*\\)\\S-+") (modes quote (org-mode)))))) (org-set-local (quote imenu-create-index-function) (quote org-imenu-get-tree)) (if (or nil (not (boundp (quote outline-isearch-open-invisible-function)))) (org-add-hook (quote isearch-mode-end-hook) (quote org-isearch-end) (quote append) (quote local)) (org-set-local (quote outline-isearch-open-invisible-function) (function (lambda (&rest ignore) (org-show-context (quote isearch)))))) (and org-startup-with-beamer-mode (org-beamer-mode 1)) (set (make-local-variable (quote pcomplete-command-completion-function)) (quote org-pcomplete-initial)) (set (make-local-variable (quote pcomplete-command-name-function)) (quote org-command-at-point)) (set (make-local-variable (quote pcomplete-default-completion-function)) (quote ignore)) (set (make-local-variable (quote pcomplete-parse-arguments-function)) (quote org-parse-arguments)) (set (make-local-variable (quote pcomplete-termination-string)) "") (if (and org-insert-mode-line-in-empty-file (interactive-p) (= (point-min) (point-max))) (insert "#    -*- mode: org -*-\n\n")) ...)
  (progn (make-local-variable (quote delay-mode-hooks)) (let ((delay-mode-hooks t)) (outline-mode) (setq major-mode (quote org-mode)) (setq mode-name "Org") (progn (if (get (quote outline-mode) (quote mode-class)) (put (quote org-mode) (quote mode-class) (get (quote outline-mode) (quote mode-class)))) (if (keymap-parent org-mode-map) nil (set-keymap-parent org-mode-map (current-local-map))) (let ((parent (char-table-parent org-mode-syntax-table))) (if (and parent (not (eq parent ...))) nil (set-char-table-parent org-mode-syntax-table (syntax-table)))) (if (or (abbrev-table-get org-mode-abbrev-table :parents) (eq org-mode-abbrev-table local-abbrev-table)) nil (abbrev-table-put org-mode-abbrev-table :parents (list local-abbrev-table)))) (use-local-map org-mode-map) (set-syntax-table org-mode-syntax-table) (setq local-abbrev-table org-mode-abbrev-table) (if nil (if (boundp (quote outline-mode-menu-heading)) (progn (easy-menu-remove outline-mode-menu-heading) (easy-menu-remove outline-mode-menu-show) (easy-menu-remove outline-mode-menu-hide))) (define-key org-mode-map [menu-bar headings] (quote undefined)) (define-key org-mode-map [menu-bar hide] (quote undefined)) (define-key org-mode-map [menu-bar show] (quote undefined))) (org-load-modules-maybe) (easy-menu-add org-org-menu) (easy-menu-add org-tbl-menu) (org-install-agenda-files-menu) (if org-descriptive-links (add-to-invisibility-spec (quote (org-link)))) (add-to-invisibility-spec (quote (org-cwidth))) (add-to-invisibility-spec (quote (org-hide-block . t))) (if nil (progn (org-set-local (quote line-move-ignore-invisible) t))) (org-set-local (quote outline-regexp) org-outline-regexp) (org-set-local (quote outline-level) (quote org-outline-level)) (if (and org-ellipsis (fboundp (quote set-display-table-slot)) (boundp (quote buffer-display-table)) (fboundp (quote make-glyph-code))) (progn (if org-display-table nil (setq org-display-table (make-display-table))) (set-display-table-slot org-display-table 4 (vconcat (mapcar (function ...) (if ... org-ellipsis "...")))) (setq buffer-display-table org-display-table))) (org-set-regexps-and-options) (if (and org-tag-faces (not org-tags-special-faces-re)) (progn (org-set-tag-faces (quote org-tag-faces) org-tag-faces))) (org-set-local (quote calc-embedded-open-mode) "# ") (modify-syntax-entry 64 "w") (if org-startup-truncated (setq truncate-lines t)) (org-set-local (quote font-lock-unfontify-region-function) (quote org-unfontify-region)) (org-set-local (quote org-table-may-need-update) t) (org-add-hook (quote before-change-functions) (quote org-before-change-function) nil (quote local)) (org-add-hook (quote kill-buffer-hook) (quote org-check-running-clock) nil (quote local)) (org-set-autofill-regexps) (setq indent-line-function (quote org-indent-line-function)) (org-update-radio-target-regexp) (org-set-local (quote beginning-of-defun-function) (quote org-beginning-of-defun)) (org-set-local (quote end-of-defun-function) (quote org-end-of-defun)) (org-set-local (quote next-error-function) (quote org-occur-next-match)) (if org-enforce-todo-dependencies (add-hook (quote org-blocker-hook) (quote org-block-todo-from-children-or-siblings-or-parent)) (remove-hook (quote org-blocker-hook) (quote org-block-todo-from-children-or-siblings-or-parent))) (if org-enforce-todo-checkbox-dependencies (add-hook (quote org-blocker-hook) (quote org-block-todo-from-checkboxes)) (remove-hook (quote org-blocker-hook) (quote org-block-todo-from-checkboxes))) (org-set-local (quote comment-start) "#") (org-set-local (quote comment-padding) " ") (org-set-local (quote align-mode-rules-list) (quote ((org-in-buffer-settings (regexp . "^#\\+[A-Z_]+:\\(\\s-*\\)\\S-+") (modes quote (org-mode)))))) (org-set-local (quote imenu-create-index-function) (quote org-imenu-get-tree)) (if (or nil (not (boundp (quote outline-isearch-open-invisible-function)))) (org-add-hook (quote isearch-mode-end-hook) (quote org-isearch-end) (quote append) (quote local)) (org-set-local (quote outline-isearch-open-invisible-function) (function (lambda (&rest ignore) (org-show-context (quote isearch)))))) (and org-startup-with-beamer-mode (org-beamer-mode 1)) (set (make-local-variable (quote pcomplete-command-completion-function)) (quote org-pcomplete-initial)) (set (make-local-variable (quote pcomplete-command-name-function)) (quote org-command-at-point)) (set (make-local-variable (quote pcomplete-default-completion-function)) (quote ignore)) (set (make-local-variable (quote pcomplete-parse-arguments-function)) (quote org-parse-arguments)) (set (make-local-variable (quote pcomplete-termination-string)) "") (if (and org-insert-mode-line-in-empty-file (interactive-p) (= (point-min) (point-max))) (insert "#    -*- mode: org -*-\n\n")) ...))
  org-mode()
  set-auto-mode-0(org-mode nil)
  byte-code("\237\305\211\203/

This bug report was last modified 12 years and 203 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.