Subject: bug#14688: closed (Re: bug#14688: 24.3; todo-show errors: wrong-type-argument and file-error)

From: [email-masked] (GNU bug Tracking System)
Date: Fri, 05 Jul 2013 14:08:03 +0000

Your bug report

#14688: 24.3; todo-show errors: wrong-type-argument and file-error

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
14688: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=14688
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#14688: 24.3; todo-show errors: wrong-type-argument and file-error
From: Stephen Berman <[email-masked]>
To: Leo Liu <[email-masked]>
Cc: [email-masked]
Date: Fri, 05 Jul 2013 16:07:44 +0200
List-Id: <debbugs-submit.debbugs.gnu.org>

On Mon, 24 Jun 2013 21:11:10 +0200 Stephen Berman <[email-masked]> wrote:

> On Mon, 24 Jun 2013 09:25:39 +0800 Leo Liu <[email-masked]> wrote:
>
>> On 2013-06-24 06:18 +0800, Stephen Berman wrote:
>>> The patch fixes some other problems beside those you reported, but which
>>> arise similarly.  I found them when I tried to reproduce your recipe.
>>> When I do exactly the above four steps in your recipe, I actually don't
>>> get the errors you reported and the category is displayed normally.
>>> However, if between steps 3 and 4 of your recipe I kill the buffer
>>> visiting the todo file, then I do get the errors.  But if I don't kill
>>> the buffer and also don't save it before trying to use other Todo mode
>>> commands, other problems arise.  The patch tries to avoid these problems
>>> as well as the ones you reported.
>>
>> The patch seems to work well. Thanks.
>
> Thanks for checking.  However, I'm convinced that the problem is more
> pervasive, and rather than tacking similar patches to each place in the
> code it can arise, I'd like to see if I can modularize the fix at least
> to some extent.  This may take a bit of time.

I've now committed a revised patch as part of revision 113288 and am
closing this bug.

This is more modular than my previous patch, and it also handles the
interaction with external file deletion in some other cases, but I
haven't had time to check all cases.  Still, I've committed it now since
it's better than the status quo.  (The revision also includes a new file
deletion command and also fixes several related bugs and does some code,
doc string and comment clean up.)

Steve Berman

Subject: 24.3; todo-show errors: wrong-type-argument and file-error
From: Leo Liu <[email-masked]>
To: [email-masked]
Date: Sat, 22 Jun 2013 12:05:13 +0800
List-Id: <debbugs-submit.debbugs.gnu.org>

Make sure nothing is in ~/.emacs.d/todo

1. start emacs
2. todo-show and answer its queries and save the buffer
3. go to ~/.emacs.d/todo and delete files there
4. M-x todo-show

you will get a couple of errors such as:

Debugger entered--Lisp error: (wrong-type-argument stringp nil)
  expand-file-name(nil)
  find-file-noselect(nil)
  todo-read-category("Enter a new category name: " add nil)
  todo-add-category(nil "")
  byte-code
  todo-show(nil)
  call-interactively(todo-show record nil)
  command-execute(todo-show record)
  execute-extended-command(nil "todo-show")
  call-interactively(execute-extended-command nil nil)
  command-execute(execute-extended-command)

Debugger entered--Lisp error: (file-error "Removing old name" "no such file or directory" "/home/leo/.emacs.d/todo/TODO.todo")
  delete-file("/home/leo/.emacs.d/todo/TODO.todo")
  byte-code
  byte-code
  todo-show(nil)
  call-interactively(todo-show record nil)
  command-execute(todo-show record)
  execute-extended-command(nil "todo-show")
  call-interactively(execute-extended-command nil nil)
  command-execute(execute-extended-command)