From mboxrd@z Thu Jan 1 00:00:00 1970 From: Carsten Dominik Subject: Re: Infinite Loop with org-mode and speedbar with cc-mode Date: Tue, 18 Nov 2008 14:58:58 +0100 Message-ID: <4237CB01-1702-41FE-B519-170B032F1B53@uva.nl> References: <4922B863.7000105@ctilabs.de> Mime-Version: 1.0 (Apple Message framework v929.2) Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Return-path: Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1L2R6e-0006sO-AU for emacs-orgmode@gnu.org; Tue, 18 Nov 2008 08:59:04 -0500 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1L2R6e-0006sC-1n for emacs-orgmode@gnu.org; Tue, 18 Nov 2008 08:59:04 -0500 Received: from [199.232.76.173] (port=35880 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1L2R6d-0006s9-M1 for emacs-orgmode@gnu.org; Tue, 18 Nov 2008 08:59:03 -0500 Received: from ug-out-1314.google.com ([66.249.92.170]:45286) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1L2R6d-0004aY-C6 for emacs-orgmode@gnu.org; Tue, 18 Nov 2008 08:59:03 -0500 Received: by ug-out-1314.google.com with SMTP id 36so251016uga.17 for ; Tue, 18 Nov 2008 05:59:02 -0800 (PST) In-Reply-To: <4922B863.7000105@ctilabs.de> List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: Rolf Unger Cc: emacs-orgmode@gnu.org Hi Rolf, does this patch help? Best wishes. - Carsten Dominik ------------------------------------------------------------------------------------ diff -u org.el.orig org.el --- org.el.orig 2008-11-18 14:54:12.000000000 +0100 +++ org.el 2008-11-18 14:54:54.000000000 +0100 @@ -14510,7 +14510,7 @@ (define-key speedbar-file-key-map ">" 'org-agenda-remove- restriction-lock) (define-key speedbar-file-key-map "\C-c\C-x>" 'org-agenda- remove-restriction-lock) (add-hook 'speedbar-visiting-tag-hook - (lambda () (org-show-context 'org-goto))))) + (lambda () (and (org-mode-p) (org-show-context 'org- goto)))))) ;;; Fixes and Hacks for problems with other packages ----------------------------------------------------------------------------------- On Nov 18, 2008, at 1:43 PM, Rolf Unger wrote: > Hi, > > I am using org-mode in version 6.09a and ran into a problem > with speedbar and cc-mode. And I don't want to drop one of > these modes, because all three of them are great tools and > essential for my daily work. > > The emacs version that I am using is for win32: > > GNU Emacs 22.3.1 (i386-mingw-nt5.0.2195) > of 2008-09-06 on SOFT-MJASON > > I can't navigate from the speedbar frame to functions or > methods in the source code file. In my case speedbar is based > on imenu, not on the TAGS file. > > If I use imenu directly (M-x imenu and completion to find the > functions there is no problem), but when started from > speedbar, emacs eats up all the CPU resources and I need > to interrupt it with C-g. > > If I enable debug-on-quit I get the attached backtraces > for a plain c-file and for a java file. I send them as > attachments for the sake of the linebreaks, because several > lines are rather long. > > I am quite sure, that I am stuck in an infinite loop. > > Other modes that are not based on cc-mode like perl-mode or > sql-mode don't show this behaviour. And I did my tests with > several kind of c source files, even a minimalistic hello-world > has this problem: > > -------------------- plain.c -------------------------- > #include > > int main( int argc, char *argv[]) > { > printf("Hello, World!\n"); > return 0; > } > > my setup for org-mode is: > > (require 'org-install)) > > (add-to-list 'auto-mode-alist '("\\.org$" . org-mode)) > (global-set-key "\C-cl" 'org-store-link) > (global-set-key "\C-ca" 'org-agenda) > (global-set-key "\C-ct" 'org-todo-list) > > (setq org-agenda-files (list "~/org")) > (setq org-archive-location "done/%s::* Finished Tasks") > > (require 'remember) > (org-remember-insinuate) > (setq org-directory "~/org") > (setq org-default-notes-file (concat org-directory "/notes.org")) > (global-set-key "\C-cr" 'org-remember) > (global-set-key "\C-cc" 'remember-clipboard) > > Thanks, Rolf. > > GNU Emacs 22.3.1 (i386-mingw-nt5.0.2195) > of 2008-09-06 on SOFT-MJASON > > org-mode version: 6.09a > > Debugger entered--Lisp error: (quit) > (if siblings-p (progn (org-show-siblings))) > (when siblings-p (org-show-siblings)) > (while (and (condition-case nil ... ...) (not ...)) (org-flag- > heading nil) (when siblings-p (org-show-siblings))) > (save-excursion (while (and ... ...) (org-flag-heading nil) (when > siblings-p ...))) > (progn (save-excursion (while ... ... ...))) > (if hierarchy-p (progn (save-excursion ...))) > (when hierarchy-p (save-excursion (while ... ... ...))) > (catch (quote exit) (if (and heading-p ...) (org-flag-heading nil) > (and ... ...)) (when following-p (save-excursion ...)) (when > siblings-p (org-show-siblings)) (when hierarchy-p (save- > excursion ...))) > (let ((heading-p ...) (hierarchy-p ...) (following-p ...) (entry- > p ...) (siblings-p ...)) (catch (quote exit) (if ... ... ...) (when > following-p ...) (when siblings-p ...) (when hierarchy-p ...))) > org-show-context(org-goto) > (lambda nil (org-show-context (quote org-goto)))() > run-hooks(speedbar-visiting-tag-hook) > speedbar-tag-find("cmSetFont" # 2) > speedbar-do-function-pointer() > speedbar-edit-line() > call-interactively(speedbar-edit-line) > > Debugger entered--Lisp error: (quit) > outline-up-heading(1 t) > (if (fboundp (quote outline-up-heading-all)) (outline-up-heading- > all arg) (outline-up-heading arg t)) > org-up-heading-all(1) > (progn (org-up-heading-all 1) t) > (condition-case nil (progn (org-up-heading-all 1) t) (error nil)) > (and (condition-case nil (progn ... t) (error nil)) (not (bobp))) > (while (and (condition-case nil ... ...) (not ...)) (org-flag- > heading nil) (when siblings-p (org-show-siblings))) > (save-excursion (while (and ... ...) (org-flag-heading nil) (when > siblings-p ...))) > (progn (save-excursion (while ... ... ...))) > (if hierarchy-p (progn (save-excursion ...))) > (when hierarchy-p (save-excursion (while ... ... ...))) > (catch (quote exit) (if (and heading-p ...) (org-flag-heading nil) > (and ... ...)) (when following-p (save-excursion ...)) (when > siblings-p (org-show-siblings)) (when hierarchy-p (save- > excursion ...))) > (let ((heading-p ...) (hierarchy-p ...) (following-p ...) (entry- > p ...) (siblings-p ...)) (catch (quote exit) (if ... ... ...) (when > following-p ...) (when siblings-p ...) (when hierarchy-p ...))) > org-show-context(org-goto) > (lambda nil (org-show-context (quote org-goto)))() > run-hooks(speedbar-visiting-tag-hook) > speedbar-tag-find("MenuBar" # 1) > speedbar-do-function-pointer() > speedbar-edit-line() > call-interactively(speedbar-edit-line) > _______________________________________________ > Emacs-orgmode mailing list > Remember: use `Reply All' to send replies to the list. > Emacs-orgmode@gnu.org > http://lists.gnu.org/mailman/listinfo/emacs-orgmode