VM

string-to-number(nil) error in 8.1.93a

Bug #785845 reported by Uday Reddy
This bug report is a duplicate of:  Bug #782620: Errors in numbering and summarizing. Edit Remove
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
VM
Incomplete
Medium
Uday Reddy

Bug Description

Terry Jones (on viewmail-bugs, 13 May):

Hi. I regularly run into errors when using VM. One species results in the
following in the debugger. I don't know enough to be able to dig into this.
When it happens, the things I try in VM (moving, saving) all result in a
similar error and I am unable to save my mail buffer. Sometimes I can
manage to get things back to normal, but I don't know how. Often I just
sigh and kill my modified mail buffer.

Sample output below (I removed a couple of sensitive vars with email
addresses in them).
Debugger entered--Lisp error: (wrong-type-argument stringp nil)
  string-to-number(nil)
  vm-number-messages(([[#<marker at 91210665 in INBOX> #<marker at 91210770 in
INBOX> nil #<marker at 91213596 in INBOX> #<marker at 91360456 in INBOX>
#<marker at 91360457 in INBOX>] [nil nil nil nil nil <<>> <-- From_ "147943"
#<buffer INBOX> nil nil nil nil nil nil nil nil nil nil ...] [t nil nil nil nil
nil nil nil nil] [nil nil nil nil nil nil nil nil nil
"<email address hidden>" nil "[intranet] History was
updated" nil nil nil nil "2011051319:59:24" "[intranet] History was updated"
nil nil nil nil nil nil nil nil] [nil <v> nil nil nil nil]]) nil)
  vm-do-needed-renumbering()
  #[(b) ... [b vm-buffers-needing-undo-boundaries
vm-use-toolbar vm-summary-show-threads vm-thread-obarray vm-summary-buffer
get-buffer symbol-name intern buffer-name vm-check-for-killed-summary
vm-toolbar-support-possible-p vm-toolbar-update-toolbar vectorp
vm-build-threads nil vm-do-needed-renumbering vm-do-needed-summary-rebuild
vm-do-needed-mode-line-update] 4](INBOX)
  mapatoms(#[(b) ... [b vm-buffers-needing-undo-boundaries
vm-use-toolbar vm-summary-show-threads vm-thread-obarray vm-summary-buffer
get-buffer symbol-name intern buffer-name vm-check-for-killed-summary
vm-toolbar-support-possible-p vm-toolbar-update-toolbar vectorp
vm-build-threads nil vm-do-needed-renumbering vm-do-needed-summary-rebuild
vm-do-needed-mode-line-update] 4] [0 0 0 0 0 0 INBOX 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0])
  vm-update-summary-and-mode-line()
  vm-decode-mime-message()
  vm-show-current-message()
  vm-preview-current-message()
  vm-next-message(-1 1 1)
  vm-previous-message(1 1 1)
  call-interactively(vm-previous-message nil nil)

Tags: new
Revision history for this message
Uday Reddy (reddyuday) wrote :

Here is a possible theory of what might have generated the debug trace that
you sent us.

When you get new mail, the new messages are linked to the existing
messages and then the new messages are numbered. The starting point for
this numbering is found by looking at the predecessor of the first new
message (which should be the last of the existing messages).

If the get new mail operation is aborted for some reason, then the numbering
of the new messages would not have been done, and VM does it at the next
opportunity. You debug trace indicates that this is happening. (The
message with lots of nil's must be a new message that has not been numbered
yet.)

However, in your debug trace, the predecessor of the first new message also
doesn't have a message number. That is what is getting the error. That
means that something must have gone wrong in the previous get-new-mail
operation as well.

So, it seems that get-new-mil is what you need to watch to track down this
problem.

Revision history for this message
Uday Reddy (reddyuday) wrote :

Thanks for your replies, and sorry for my slow response. I still run into
these kinds of problems quite often, and for no obvious reason. E.g., I
just switched over to my VM window and did an 'n' to move to the next
message, and got thrown into the debugger:

    Debugger entered--Lisp error: (wrong-type-argument number-or-marker-p nil)
      vm-follow-summary-cursor()
      vm-next-message(1 1 1)
      call-interactively(vm-next-message nil nil)

I wonder if my INBOX file might contain some old VM metadata crud that
causes these occasional errors. It would be relatively easy to clean it,
but I don't know what might be causing the problem. The first message
contains headers:

X-VM-Last-Modified: (19926 30147 764868)
X-VM-VHeader: ("^From" "^From " "^Subject" "^Date" "^To" "^Cc" "^X-Oblique-Strategy" "X-Spambayes-Classification:" "X-Terry-Known-From" "X-Terry-Image-Spam" "X-Terry-Send-Autoreply" "X-Terry-Immediate-Delivery") nil
X-VM-v5-Data: ([nil nil nil nil nil nil nil nil nil]
        ["1571" "Sunday" "8" "February" "2009" "22:41:17" "-0500" "Denis XXX" "<email address hidden>" nil "45" "Re: Thrift + AMQP" "^From:" nil nil "2" nil "Thrift + AMQP" (number " " mark " Denis XXX Feb 8 22:41 45 1571 " thread-indent "Re: Thrift + AMQP\n") nil nil nil nil nil nil nil]
        nil)
X-VM-Labels: nil
X-VM-Summary-Format: "%3n %*%a %-17.17F %3.3m %2d %H %5l %7c %I%s\n"
X-VM-Message-Order:
        (1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
...
         5806 5807 5808 5809 5810 5811 5812 5813 5814)
X-VM-IMAP-Retrieved: nil
X-VM-POP-Retrieved: nil
X-VM-Bookmark: 5814

And the subsequent ones only have X-VM-v5-Data.

Revision history for this message
Uday Reddy (reddyuday) wrote :

> 1. VM 8.2.0a has now been released. I recommend that you upgrade to this
> version. There is some chance that the error you are getting might have
> been fixed in this release.

I've upgraded. Bonus: I can now see attachments in Apple Mail messages! :-)

If I hit the error again, I'll try removing all .elc so as to send a better
report. I don't know what message triggered the error, sorry.

It's really great to see VM under active development! Thank you.

Terry

Changed in vm:
status: Triaged → Incomplete
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.