Wrong type argument: listp, =\?iso-2022-jp\?Q\?
When I open the mbox file as a plain text file and search for
"iso-2022" I invariably find it tucked away in an X-VM-v5-Data: header
in a message near the end of the mbox in a message which most
decidedly does not have an iso-2022-jp encoding. For example, I see
this right now:
X-VM-v5-Data: ([nil nil nil nil nil nil nil nil nil]
["15279" "Sunday" "16" "August" "2009" "12:10:44" "-0500" "Carl
M. Zapf\fe" "cmza...@comcast.net" nil "266" =?iso-2022-jp?Q?#
("Fra_lein?= Zuffie's Hom\ecoming Party" 0 33 (vm-coding iso-latin-1
vm-charset "ISO-8859-1" vm-string t \charset iso-8859-1) 33 34 (vm-
coding iso-latin-1 vm-charset "ISO-8859-1" vm-str\ing t)) "^From:" nil
nil "8" nil =?iso-2022-jp?Q?#("Fra_lein?= Zuffie's Homecom\ing Party"
0 8 (vm-coding iso-latin-1 vm-charset "ISO-8859-1" vm-string t chars
\et iso-8859-1) 9 17 (vm-coding iso-latin-1 vm-charset "ISO-8859-1" vm-
string t \charset iso-8859-1) 18 28 (vm-coding iso-latin-1 vm-charset
"ISO-8859-1" vm-str\ing t charset iso-8859-1) 29 33 (vm-coding iso-
latin-1 vm-charset "ISO-8859-1" \vm-string t charset iso-8859-1) 33 34
(vm-coding iso-latin-1 vm-charset "ISO-88\59-1" vm-string t)) (number
" " mark " Carl M. Zapffe Aug 16 266/15279 \" thread-indent
"\"=?ISO-8859-1?Q?Fra=FClein_Zuffie's_Homecoming_Party?=\"\n") \nil
nil nil nil nil nil nil]
while the subject is iso-8859-1-encoded:
Subject: =?ISO-8859-1?Q?Fra=FClein_Zuffie's_Homecoming_Party?=
If I delete the offending X-VM-v5-Data: header and reopen the file in
VM it works fine. For a bit. It seems the next time I visit that
file though, the error is back.
Here's what I currently see in *Messages* which seems related to the
problem:
Reading /Users/skip/Mail/mbox... done
Parsing messages... done
Reading attributes... done
963 messages, 0 new, 2 unread, 0 deleted [2 times]
Checking for new mail for /Users/skip/Mail/mbox...
Added to /Users/skip/Mail/mbox
Got mail from ~/incoming/mbox.
964 messages, 1 new, 2 unread, 0 deleted [2 times]
Generating summary... 952
vm-do-summary: Wrong type argument: listp, =\?iso-2022-jp\?Q\?
Warning: Bug in vm-summary-mode: it forgets to call `run-mode-
hooks'
Wrong type argument: listp, =\?iso-2022-jp\?Q\?
Quitting...
Stuffing attributes...
1 message to stuff
Ordering updates...
Stuffing 100% complete...
Stuffing attributes... done
Generating summary... 950
vm-do-summary: Wrong type argument: listp, =\?iso-2022-jp\?Q\?
Warning: Bug in vm-mode: it forgets to call `run-mode-hooks'
Wrong type argument: listp, =\?iso-2022-jp\?Q\?
Buffer mbox modified; kill anyway? (y or n)
Warning: Bug in vm-presentation-mode: it forgets to call `run-mode-
hooks'
Mark saved where search started
Mark set
Mark saved where search started
Loading vm-revno...done
VM version is: 8.0.12
Let me know if I can provide more details or do some further debugging
(enable various debug settings, etc).
Skip Montanaro
sk...@pobox.com
Dear Skip, There were clear bugs mentioned in the *Messages* buffer.
Would you like to try out the version 8.1 I announced in the vm.info
newsgroup, and see if it solves the problems?
Thanks,
Uday
([nil nil nil nil nil nil nil nil nil]
["15279" "Sunday" "16" "August" "2009" "12:10:44" "-0500"
"Carl M. Zapf\fe" "cmza...@comcast.net" nil "266"
=?iso-2022-jp?Q?#("Fra_lein?= Zuffie's Hom\ecoming Party" 0 33
(vm-coding iso-latin-1 vm-charset "ISO-8859-1"
vm-string t \charset iso-8859-1)
33 34 (vm-coding iso-latin-1 vm-charset
"ISO-8859-1" vm-str\ing t))
"^From:" nil nil "8" nil
=?iso-2022-jp?Q?#("Fra_lein?= Zuffie's Homecom\ing Party"
0 8 (vm-coding iso-latin-1 vm-charset "ISO-8859-1"
vm-string t chars \et iso-8859-1)
9 17 (vm-coding iso-latin-1 vm-charset
"ISO-8859-1" vm-string t \charset
iso-8859-1)
18 28 (vm-coding iso-latin-1 vm-charset
"ISO-8859-1" vm-str\ing t charset
iso-8859-1)
29 33 (vm-coding iso-latin-1 vm-charset
"ISO-8859-1" \vm-string t charset
iso-8859-1)
33 34 (vm-coding iso-latin-1 vm-charset
"ISO-88\59-1" vm-string t))
(number " " mark
" Carl M. Zapffe Aug 16 266/15279 "
thread-indent
"\"=?ISO-8859-1?Q?Fra=FClein_Zuffie's_Homecoming_Party?=\"\n")
\nil nil nil nil nil nil nil]
There are three copies of the subject string here: "Fraulein Zuffie's
Homecoming Party" (written in ASCII). The last copy is good. That is
how the string is supposed to appear. The first two copies are some
badly corrupted versions of the string. We have to figure out where
they are coming from. Some change that was incorporated between
revisions 610 and 623 is causing this. That is a guess. I am guessing
that revision 610 was all right because it was merged into the devo
version, which I use, and I haven't noticed the problem. Revision 623
was released as v8.0.12.
Here is a pointer to the revisions:
http://bazaar.launchpad.net/~hack-robf/viewmail/vm-8.0.x/changes
Cheers,
Uday
> Here is a pointer to the revisions:
>
> http://bazaar.launchpad.net/~hack-robf/viewmail/vm-8.0.x/changes
Oh, you would notice that the revision 624 claims to have fixed the
problem and the revision 625 also has a clean up routine to
automatically clean badly formed v5-Data headers. It is possible that
these fixes work. But I can't be entirely sure because I didn't find a
mapvector procedure (which was used in revision 624).
If you would like to try out the revision 625 and see if it works
correctly, you can use this mapvector procedure:
(defun mapvector (proc vec)
(let ((new-vec (make-vector (length vec) nil))
(i 0)
(n (length vec)))
(while (< i n)
(aset new-vec i (apply proc (aref vec i) nil))
(setq i (1+ i)))
new-vec))
Cheers,
Uday