Hello, Dale <d...@codefu.org> writes:
> Hi! I think org-mode from master currently has a bug in agenda's > clockcheck mode. Steps to reproduce: > > 1. Start emacs -Q and load org-mode master (b1353cb6f83) > > 2. Open a empty org-mode buffer, e.g.: C-x C-f test.org RET > > 3. M-x org-agenda RET > > 4. Hit "a" for "Agenda for current day or week" > > 5. Hit "v" then "c" to switch to clockcheck view > > Expected results: clockcheck view is engaged (albeit empty given the > empty org-mode file) > > Observed results: I receive the following error: > > org-duration-to-minutes: Wrong type argument: stringp, 0 > > Due to this error, clockcheck mode does not seem to activate. > > Emacs : GNU Emacs 25.1.1 (x86_64-apple-darwin15.6.0) > of 2017-01-30 > Package: Org mode version 9.0.5 (release_9.0.5-318-gb1353c @ > /tmp/emacs/org-mode/lisp/) > > Other information: > > I suspect this is happening as of the recent switch to using the > org-duration library (7e8cf5f4c20), which replaced some/all uses of > org-hh:mm-string-to-minutes with org-duration-to-minutes. > org-hh:mm-string-to-minutes accepted an integer as its argument > (despite its name): > > (cond > ((integerp s) s) > ... > > In contrast, org-duration-to-minutes only expects a string as its > argument. The "Wrong type argument" seems to be coming from its first > string-match-p call. > > org-agenda-show-clocking-issues will potentially call > org-duration-to-minutes with the integer 0 as its argument: > > (mintime (org-duration-to-minutes > (or (plist-get pl :min-duration) 0))) > > The default value for org-agenda-clock-consistency-checks also > specifies :min-duration 0; that is, an integer rather than a string. > > I cannot say whether org-duration-string should accept a number, as > org-hh:mm-string-to-minutes did, or instead whether org-agenda.el > should be changed to always pass it a string. I did the former. This is now fixed. Thank you. Regards, -- Nicolas Goaziou