From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dan Davison Subject: Re: [babel] (wrong-type-argument number-or-marker-p nil) Date: Mon, 08 Feb 2010 07:50:46 -0500 Message-ID: <87tytrao2h.fsf@stats.ox.ac.uk> References: <87r5owk5j8.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1NeT4r-00011L-Ns for emacs-orgmode@gnu.org; Mon, 08 Feb 2010 07:50:57 -0500 Received: from [199.232.76.173] (port=56017 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1NeT4r-00011A-78 for emacs-orgmode@gnu.org; Mon, 08 Feb 2010 07:50:57 -0500 Received: from Debian-exim by monty-python.gnu.org with spam-scanned (Exim 4.60) (envelope-from ) id 1NeT4m-0005na-5A for emacs-orgmode@gnu.org; Mon, 08 Feb 2010 07:50:56 -0500 Received: from markov.stats.ox.ac.uk ([163.1.210.1]:35446) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1NeT4l-0005mo-NV for emacs-orgmode@gnu.org; Mon, 08 Feb 2010 07:50:52 -0500 In-Reply-To: (Thomas S. Dye's message of "Sun, 7 Feb 2010 18:44:25 -1000") 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: "Thomas S. Dye" Cc: org-mode mailing list "Thomas S. Dye" writes: > Hi Eric, > > Thanks for looking at this so quickly. > > Patching from email is a skill still on my horizon. I tried several > times without success and without gaining any idea how to resolve the > problem(s). You might not want to wait for me to figure out how to > patch. It took longer than I'm willing to admit on this list for me > to get to the point where I could make an emacs backtrace=20 I have a question: would someone tell me how to interpret or use an emacs backtrace or point me to reading material? > and longer > still to understand git sufficiently to make sense out of git bisect. > git am looks very mysterious to me right now. 1. Extract the patch from the email and save it to a file "thepatch" 2. cd into the repo and make sure you are on master using git status. 3. Hopefully git status will say 'working directory clean'. But if it shows that there are modified files, and *if* these modifications are junk resulting from your previous attempt to apply the patch then you can blow all outstanding changes away and revert to the last 'proper' commit with git reset --hard HEAD 4. At this point 'git status' should report that you are on master and working dir is clean. 5. Create a temp branch with git checkout -b branch-with-patch 6. Check that you are on the new branch with git status 7. Apply the patch with git apply < thepatch 8. Commit the change in the temp branch with git commit -am "the commit message" Now you can restart emacs and org will pick up the modified files. To go back to the master branch without the patch that would be git checkout master Make sure you don't apply the patch in the master branch. Dan > > All the best, > Tom > > On Feb 7, 2010, at 12:53 PM, Eric Schulte wrote: > >> Hi Tom, >> >> Could you try the attached patch and let me know if it fixes the >> problem? >> >> If so I'll apply it to the main repo. >> >> Thanks -- Eric >> >> diff --git a/contrib/babel/lisp/org-babel-tangle.el b/contrib/babel/ >> lisp/org-babel-tangle.el >> index cad8cec..dd76195 100644 >> --- a/contrib/babel/lisp/org-babel-tangle.el >> +++ b/contrib/babel/lisp/org-babel-tangle.el >> @@ -48,8 +48,8 @@ file using `load-file'." >> (flet ((age (file) >> (time-to-seconds >> (time-subtract (current-time) >> - (sixth (file-attributes >> - (file-truename file))))))) >> + (sixth (or (file-attributes (file- >> truename file)) >> + (file-attributes file))))))) >> (let* ((base-name (file-name-sans-extension file)) >> (exported-file (concat base-name ".el"))) >> ;; tangle if the org-mode file is newer than the elisp file >> >> "Thomas S. Dye" writes: >> >>> Aloha all, >>> >>> I pulled the latest org-mode this morning and got an error starting >>> emacs afterwards that appears to >>> be tied to org-babel-load-file. >>> >>> I ran git bisect and ended up here: >>> >>> 131441dbd2d16e92f863864ed536f37fcd4a85fc is first bad commit >>> commit 131441dbd2d16e92f863864ed536f37fcd4a85fc >>> Author: Eric Schulte >>> Date: Thu Feb 4 09:43:11 2010 -0700 >>> >>> babel: load-file works for symlinks -- Thanks to Martin K=E2=88=9A= =C2=BAhl >>> >>> :040000 040000 b4e1b1d95a9c1bfd182ad3a834830c4494566679 >>> 7ae93fe06479799b0d7dc233caa00ddfd6daec3a M >>> contrib >>> >>> The backtrace from starting emacs with --debug-init follows: >>> >>> Debugger entered--Lisp error: (wrong-type-argument number-or- >>> marker-p nil) >>> time-subtract((19311 14612 450479) nil) >>> (time-to-seconds (time-subtract (current-time) (sixth ...))) >>> (catch (quote --cl-block-age--) (time-to-seconds (time- >>> subtract ... ...))) >>> (cl-block-wrapper (catch (quote --cl-block-age--) (time-to- >>> seconds ...))) >>> (block age (time-to-seconds (time-subtract ... ...))) >>> age("td.org") >>> (> (age file) (age exported-file)) >>> (and (file-exists-p exported-file) (> (age file) (age >>> exported- >>> file))) >>> (if (and (file-exists-p exported-file) (> ... ...)) nil (org- >>> babel-tangle-file file base-name >>> "emacs-lisp")) >>> (unless (and (file-exists-p exported-file) (> ... ...)) (org- >>> babel-tangle-file file base-name >>> "emacs-lisp")) >>> (let* ((base-name ...) (exported-file ...)) (unless (and >>> ... ...) (org-babel-tangle-file file >>> base-name "emacs-lisp")) (load-file exported-file) (message >>> "loaded %s" exported-file)) >>> (progn (fset (quote age) (function* ...)) (let* (... ...) >>> (unless ... ...) (load-file >>> exported-file) (message "loaded %s" exported-file))) >>> (unwind-protect (progn (fset ... ...) (let* ... ... ... ...)) >>> (if --cl-letf-bound-- (fset ... >>> --cl-letf-save--) (fmakunbound ...))) >>> (let* ((--cl-letf-bound-- ...) (--cl-letf-save-- ...)) >>> (unwind- >>> protect (progn ... ...) (if >>> --cl-letf-bound-- ... ...))) >>> (letf ((... ...)) (let* (... ...) (unless ... ...) (load-file >>> exported-file) (message "loaded >>> %s" exported-file))) >>> (letf* ((... ...)) (let* (... ...) (unless ... ...) (load-file >>> exported-file) (message "loaded >>> %s" exported-file))) >>> (flet ((age ... ...)) (let* (... ...) (unless ... ...) (load- >>> file exported-file) (message >>> "loaded %s" exported-file))) >>> org-babel-load-file("td.org") >>> mapc(org-babel-load-file ("td.org")) >>> (let ((default-directory user-specific-dir)) (mapc (function >>> load) (directory-files >>> user-specific-dir nil ".*el$")) (mapc (function org-babel-load- >>> file) (directory-files >>> user-specific-dir nil ".*org$"))) >>> (progn (let (...) (mapc ... ...) (mapc ... ...))) >>> (if (file-exists-p user-specific-dir) (progn (let ... ... ...))) >>> (when (file-exists-p user-specific-dir) (let (...) (mapc >>> ... ...) (mapc ... ...))) >>> eval-buffer(#> nil "/Users/dk/.emacs.d/ >>> starter-kit.el" nil t) ; Reading at >>> buffer position 6504 >>> load-with-code-conversion("/Users/dk/.emacs.d/starter-kit.el" >>> "/Users/dk/.emacs.d/ >>> starter-kit.el" nil nil) >>> load("/Users/dk/.emacs.d/starter-kit.el" nil nil t) >>> load-file("/Users/dk/.emacs.d/starter-kit.el") >>> (let* ((base-name ...) (exported-file ...)) (unless (and >>> ... ...) (org-babel-tangle-file file >>> base-name "emacs-lisp")) (load-file exported-file) (message >>> "loaded %s" exported-file)) >>> (progn (fset (quote age) (function* ...)) (let* (... ...) >>> (unless ... ...) (load-file >>> exported-file) (message "loaded %s" exported-file))) >>> (unwind-protect (progn (fset ... ...) (let* ... ... ... ...)) >>> (if --cl-letf-bound-- (fset ... >>> --cl-letf-save--) (fmakunbound ...))) >>> (let* ((--cl-letf-bound-- ...) (--cl-letf-save-- ...)) >>> (unwind- >>> protect (progn ... ...) (if >>> --cl-letf-bound-- ... ...))) >>> (letf ((... ...)) (let* (... ...) (unless ... ...) (load-file >>> exported-file) (message "loaded >>> %s" exported-file))) >>> (letf* ((... ...)) (let* (... ...) (unless ... ...) (load-file >>> exported-file) (message "loaded >>> %s" exported-file))) >>> (flet ((age ... ...)) (let* (... ...) (unless ... ...) (load- >>> file exported-file) (message >>> "loaded %s" exported-file))) >>> org-babel-load-file("/Users/dk/.emacs.d/starter-kit.org") >>> eval-buffer(# nil "/Users/dk/.emacs.d/init.el" >>> nil t) ; Reading at buffer >>> position 884 >>> load-with-code-conversion("/Users/dk/.emacs.d/init.el" >>> "/Users/ >>> dk/.emacs.d/init.el" t t) >>> load("/Users/dk/.emacs.d/init" t t) >>> #[nil "\205\264 \306=3D\203. \307\310Q\2027 \311=3D\2033 >>> \312\307\313\314#\203# \315\2027 \312\ >>> 307\313\316#\203/ \317\2027 \315\2027 \307\320Q.\321.\322\n >>> \321\211#\210 \321=3D\203_ \323\324\ >>> 325\307\326Q!\".\322\f\321\211#\210 \321=3D\203^ \n.) \203\244 >>> \327 !\330\232\203\244 \331 !\211. >>> \332P.\"\333.\"!\203\200 .\"\202\213 \333 >>> !\203\212 >>> \202\213 \313\211.\203\243 \334 >>> \"\203\241 \335\336 >>> #\210\337\340!\210 >>> .*.#?\205\263 \313.$\322\341\321\211#))\207" [init-file-user >>> system-type user-init-file-1 >>> user-init-file otherfile source ms-dos "~" "/_emacs" windows-nt >>> directory-files nil "^\\.emacs\\ >>> (\\.elc?\\)?$" "~/.emacs" "^_emacs\\(\\.elc?\\)?$" "~/_emacs" >>> "/.emacs" t load expand-file-name >>> "init" file-name-as-directory "/.emacs.d" file-name-extension >>> "elc" file-name-sans-extension >>> ".el" file-exists-p file-newer-than-file-p message "Warning: %s >>> is newer than %s" sit-for 1 >>> "default" alt inhibit-default-init inhibit-startup-screen] 7]() >>> command-line() >>> normal-top-level() >>> >>> hth, >>> Tom >>> >>> _______________________________________________ >>> Emacs-orgmode mailing list >>> Please use `Reply All' to send replies to the list. >>> Emacs-orgmode@gnu.org >>> http://lists.gnu.org/mailman/listinfo/emacs-orgmode > > > > _______________________________________________ > Emacs-orgmode mailing list > Please use `Reply All' to send replies to the list. > Emacs-orgmode@gnu.org > http://lists.gnu.org/mailman/listinfo/emacs-orgmode