VM

vm-su-attachment-indicator buggy

Bug #1908468 reported by Jeff K
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
VM
Triaged
Low
Unassigned

Bug Description

When I get mail delivery error messages from Google ( Mail Delivery Subsystem <email address hidden>), it "crashes" any subsequent action I take in the folder containing that message, each time giving me the following error "Wrong type argument: arrayp, nil".
Specifically, this occurs if I try to read any other messages in the same folder, show the summary, navigate the summary, save the folder, etc.

The only thing I can do is to kill all the related buffers for the folder, manually delete the offending email (outside of vm) and then re-read the folder.

The debugging traceback is as follows:

Debugger entered--Lisp error: (wrong-type-argument arrayp nil)
  vm-mm-layout-type(nil)
  vm-mime-operate-on-attachments(nil :action #[(msg layout type file) " T\211 \207" [attachments] 2] :included nil :excluded nil :messages ([[#<marker at 1 in mymailfolder> #<marker at 46 in mymailfolder> nil #<marker at 11764 in mymailfolder> #<marker at 30611 in mymailfolder> #<marker at 30612 in mymailfolder>] ["1" " 1" nil 1 nil <<>> <-- From_ "15427" #<buffer mymailfolder> nil nil nil nil nil nil [("multipart/report" "boundary=000000000000f8e46b05b69d31c0" "report-type=delivery-status") ("multipart/report" "boundary=\"000000000000f8e46b05b69d31c0\"" "report-type=delivery-status") "7bit" nil nil nil nil #<marker at 46 in mymailfolder> #<marker at 11763 in mymailfolder> #<marker at 11764 in mymailfolder> #<marker at 30611 in mymailfolder> ([("multipart/related" "boundary=000000000000f8e49c05b69d31c1") ("multipart/related" "boundary=\"000000000000f8e49c05b69d31c1\"") "7bit" nil nil nil nil #<marker at 11795 in mymailfolder> #<marker at 11868 in mymailfolder> #<marker at 11869 in mymailfolder> #<marker at 19461 in mymailfolder> ([... ... "7bit" nil nil nil nil #<marker at 11900 in mymailfolder> #<marker at 11977 in mymailfolder> #<marker at 11978 in mymailfolder> #<marker at 13960 in mymailfolder> ... <<c>> <<m>> nil nil nil] [... ... "base64" "<icon.png>" nil ... ... #<marker at 13992 in mymailfolder> #<marker at 14143 in mymailfolder> #<marker at 14144 in mymailfolder> #<marker at 19428 in mymailfolder> nil <<c>> <<m>> nil nil nil]) <<c>> <<m>> nil nil nil] [("message/delivery-status") ("message/delivery-status") "7bit" nil nil nil nil #<marker at 19493 in mymailfolder> #<marker at 19531 in mymailfolder> #<marker at 19532 in mymailfolder> #<marker at 20039 in mymailfolder> nil <<c>> <<m>> nil nil nil] [("message/rfc822") ("message/rfc822") "binary" nil nil nil nil #<marker at 20071 in mymailfolder> #<marker at 20144 in mymailfolder> #<marker at 20145 in mymailfolder> #<marker at 30577 in mymailfolder> ([... ... "7bit" nil nil nil nil #<marker at 20145 in mymailfolder> #<marker at 28382 in mymailfolder> #<marker at 28383 in mymailfolder> #<marker at 30577 in mymailfolder> nil <<c>> <<m>> nil nil nil]) <<c>> <<m>> nil nil nil]) <<c>> <<m>> 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 nil nil] [nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil] [nil <v> nil nil nil nil]]))
  vm-su-attachment-indicator([[#<marker at 1 in mymailfolder> #<marker at 46 in mymailfolder> nil #<marker at 11764 in mymailfolder> #<marker at 30611 in mymailfolder> #<marker at 30612 in mymailfolder>] ["1" " 1" nil 1 nil <<>> <-- From_ "15427" #<buffer mymailfolder> nil nil nil nil nil nil [("multipart/report" "boundary=000000000000f8e46b05b69d31c0" "report-type=delivery-status") ("multipart/report" "boundary=\"000000000000f8e46b05b69d31c0\"" "report-type=delivery-status") "7bit" nil nil nil nil #<marker at 46 in mymailfolder> #<marker at 11763 in mymailfolder> #<marker at 11764 in mymailfolder> #<marker at 30611 in mymailfolder> ([("multipart/related" "boundary=000000000000f8e49c05b69d31c1") ("multipart/related" "boundary=\"000000000000f8e49c05b69d31c1\"") "7bit" nil nil nil nil #<marker at 11795 in mymailfolder> #<marker at 11868 in mymailfolder> #<marker at 11869 in mymailfolder> #<marker at 19461 in mymailfolder> ([("multipart/alternative" "boundary=000000000000f8e4a205b69d31c2") ("multipart/alternative" "boundary=\"000000000000f8e4a205b69d31c2\"") "7bit" nil nil nil nil #<marker at 11900 in mymailfolder> #<marker at 11977 in mymailfolder> #<marker at 11978 in mymailfolder> #<marker at 13960 in mymailfolder> ([... ... "7bit" nil nil nil nil #<marker at 12009 in mymailfolder> #<marker at 12051 in mymailfolder> #<marker at 12052 in mymailfolder> #<marker at 12361 in mymailfolder> nil <<c>> <<m>> nil nil nil] [... ... "quoted-printable" nil nil nil nil #<marker at 12393 in mymailfolder> #<marker at 12478 in mymailfolder> #<marker at 12479 in mymailfolder> #<marker at 13927 in mymailfolder> nil <<c>> <<m>> nil nil nil]) <<c>> <<m>> nil nil nil] [("image/png" "name=icon.png") ("image/png" "name=\"icon.png\"") "base64" "<icon.png>" nil ("attachment" "filename=icon.png") ("attachment" "filename=\"icon.png\"") #<marker at 13992 in mymailfolder> #<marker at 14143 in mymailfolder> #<marker at 14144 in mymailfolder> #<marker at 19428 in mymailfolder> nil <<c>> <<m>> nil nil nil]) <<c>> <<m>> nil nil nil] [("message/delivery-status") ("message/delivery-status") "7bit" nil nil nil nil #<marker at 19493 in mymailfolder> #<marker at 19531 in mymailfolder> #<marker at 19532 in mymailfolder> #<marker at 20039 in mymailfolder> nil <<c>> <<m>> nil nil nil] [("message/rfc822") ("message/rfc822") "binary" nil nil nil nil #<marker at 20071 in mymailfolder> #<marker at 20144 in mymailfolder> #<marker at 20145 in mymailfolder> #<marker at 30577 in mymailfolder> ([("multipart/mixed" "charset=3Dutf8" "boundary=3DAbuse-bfbb0f920793ac03cb8634bde14d8a1e") ("multipart/mixed" "charset=3Dutf8" "boundary=3DAbuse-bfbb0f920793ac03cb8634bde14d8a1e") "7bit" nil nil nil nil #<marker at 20145 in mymailfolder> #<marker at 28382 in mymailfolder> #<marker at 28383 in mymailfolder> #<marker at 30577 in mymailfolder> nil <<c>> <<m>> nil nil nil]) <<c>> <<m>> nil nil nil]) <<c>> <<m>> 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 nil nil] [nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil] [nil <v> nil nil nil nil]])
  (vm-decode-mime-encoded-words-in-string (vm-su-attachment-indicator vm-su-message))
  (vm-right-justify-string (vm-decode-mime-encoded-words-in-string (vm-su-attachment-indicator vm-su-message)) 1)
  (format "%s%s %s %s %s %s%s " (vm-right-justify-string (vm-decode-mime-encoded-words-in-string (vm-su-attachment-indicator vm-su-message)) 1) (vm-decode-mime-encoded-words-in-string (vm-su-attribute-indicators vm-su-message)) (vm-truncate-string (vm-left-justify-string (vm-decode-mime-encoded-words-in-string (vm-su-interesting-full-name vm-su-message)) 17) 17) (vm-truncate-string (vm-decode-mime-encoded-words-in-string (vm-su-month vm-su-message)) 3) (vm-right-justify-string (vm-decode-mime-encoded-words-in-string (vm-su-monthday vm-su-message)) 2) (vm-truncate-string (vm-decode-mime-encoded-words-in-string (vm-run-user-summary-function (quote vm-summary-function-Y) vm-su-message)) -3) (vm-truncate-string (vm-left-justify-string (vm-decode-mime-encoded-words-in-string (vm-su-size vm-su-message)) 4) 4))
  (list (quote number) (quote mark) (format "%s%s %s %s %s %s%s " (vm-right-justify-string (vm-decode-mime-encoded-words-in-string (vm-su-attachment-indicator vm-su-message)) 1) (vm-decode-mime-encoded-words-in-string (vm-su-attribute-indicators vm-su-message)) (vm-truncate-string (vm-left-justify-string (vm-decode-mime-encoded-words-in-string (vm-su-interesting-full-name vm-su-message)) 17) 17) (vm-truncate-string (vm-decode-mime-encoded-words-in-string (vm-su-month vm-su-message)) 3) (vm-right-justify-string (vm-decode-mime-encoded-words-in-string (vm-su-monthday vm-su-message)) 2) (vm-truncate-string (vm-decode-mime-encoded-words-in-string (vm-run-user-summary-function (quote vm-summary-function-Y) vm-su-message)) -3) (vm-truncate-string (vm-left-justify-string (vm-decode-mime-encoded-words-in-string (vm-su-size vm-su-message)) 4) 4)) (quote thread-indent) (format "%s\n" (vm-decode-mime-encoded-words-in-string (vm-su-summary-subject vm-su-message))))
  eval((list (quote number) (quote mark) (format "%s%s %s %s %s %s%s " (vm-right-justify-string (vm-decode-mime-encoded-words-in-string (vm-su-attachment-indicator vm-su-message)) 1) (vm-decode-mime-encoded-words-in-string (vm-su-attribute-indicators vm-su-message)) (vm-truncate-string (vm-left-justify-string (vm-decode-mime-encoded-words-in-string (vm-su-interesting-full-name vm-su-message)) 17) 17) (vm-truncate-string (vm-decode-mime-encoded-words-in-string (vm-su-month vm-su-message)) 3) (vm-right-justify-string (vm-decode-mime-encoded-words-in-string (vm-su-monthday vm-su-message)) 2) (vm-truncate-string (vm-decode-mime-encoded-words-in-string (vm-run-user-summary-function (quote vm-summary-function-Y) vm-su-message)) -3) (vm-truncate-string (vm-left-justify-string (vm-decode-mime-encoded-words-in-string (vm-su-size vm-su-message)) 4) 4)) (quote thread-indent) (format "%s\n" (vm-decode-mime-encoded-words-in-string (vm-su-summary-subject vm-su-message)))))
  vm-summary-sprintf("%n%*%1P%a %-17.17F %.3m %2d %.-3UY%-4.4S %I%s\n" [[#<marker at 1 in mymailfolder> #<marker at 46 in mymailfolder> nil #<marker at 11764 in mymailfolder> #<marker at 30611 in mymailfolder> #<marker at 30612 in mymailfolder>] ["1" " 1" nil 1 nil <<>> <-- From_ "15427" #<buffer mymailfolder> nil nil nil nil nil nil [("multipart/report" "boundary=000000000000f8e46b05b69d31c0" "report-type=delivery-status") ("multipart/report" "boundary=\"000000000000f8e46b05b69d31c0\"" "report-type=delivery-status") "7bit" nil nil nil nil #<marker at 46 in mymailfolder> #<marker at 11763 in mymailfolder> #<marker at 11764 in mymailfolder> #<marker at 30611 in mymailfolder> ([("multipart/related" "boundary=000000000000f8e49c05b69d31c1") ("multipart/related" "boundary=\"000000000000f8e49c05b69d31c1\"") "7bit" nil nil nil nil #<marker at 11795 in mymailfolder> #<marker at 11868 in mymailfolder> #<marker at 11869 in mymailfolder> #<marker at 19461 in mymailfolder> ([("multipart/alternative" "boundary=000000000000f8e4a205b69d31c2") ("multipart/alternative" "boundary=\"000000000000f8e4a205b69d31c2\"") "7bit" nil nil nil nil #<marker at 11900 in mymailfolder> #<marker at 11977 in mymailfolder> #<marker at 11978 in mymailfolder> #<marker at 13960 in mymailfolder> ([... ... "7bit" nil nil nil nil #<marker at 12009 in mymailfolder> #<marker at 12051 in mymailfolder> #<marker at 12052 in mymailfolder> #<marker at 12361 in mymailfolder> nil <<c>> <<m>> nil nil nil] [... ... "quoted-printable" nil nil nil nil #<marker at 12393 in mymailfolder> #<marker at 12478 in mymailfolder> #<marker at 12479 in mymailfolder> #<marker at 13927 in mymailfolder> nil <<c>> <<m>> nil nil nil]) <<c>> <<m>> nil nil nil] [("image/png" "name=icon.png") ("image/png" "name=\"icon.png\"") "base64" "<icon.png>" nil ("attachment" "filename=icon.png") ("attachment" "filename=\"icon.png\"") #<marker at 13992 in mymailfolder> #<marker at 14143 in mymailfolder> #<marker at 14144 in mymailfolder> #<marker at 19428 in mymailfolder> nil <<c>> <<m>> nil nil nil]) <<c>> <<m>> nil nil nil] [("message/delivery-status") ("message/delivery-status") "7bit" nil nil nil nil #<marker at 19493 in mymailfolder> #<marker at 19531 in mymailfolder> #<marker at 19532 in mymailfolder> #<marker at 20039 in mymailfolder> nil <<c>> <<m>> nil nil nil] [("message/rfc822") ("message/rfc822") "binary" nil nil nil nil #<marker at 20071 in mymailfolder> #<marker at 20144 in mymailfolder> #<marker at 20145 in mymailfolder> #<marker at 30577 in mymailfolder> ([("multipart/mixed" "charset=3Dutf8" "boundary=3DAbuse-bfbb0f920793ac03cb8634bde14d8a1e") ("multipart/mixed" "charset=3Dutf8" "boundary=3DAbuse-bfbb0f920793ac03cb8634bde14d8a1e") "7bit" nil nil nil nil #<marker at 20145 in mymailfolder> #<marker at 28382 in mymailfolder> #<marker at 28383 in mymailfolder> #<marker at 30577 in mymailfolder> nil <<c>> <<m>> nil nil nil]) <<c>> <<m>> nil nil nil]) <<c>> <<m>> 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 nil nil] [nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil] [nil <v> nil nil nil nil]] t)
  vm-su-summary([[#<marker at 1 in mymailfolder> #<marker at 46 in mymailfolder> nil #<marker at 11764 in mymailfolder> #<marker at 30611 in mymailfolder> #<marker at 30612 in mymailfolder>] ["1" " 1" nil 1 nil <<>> <-- From_ "15427" #<buffer mymailfolder> nil nil nil nil nil nil [("multipart/report" "boundary=000000000000f8e46b05b69d31c0" "report-type=delivery-status") ("multipart/report" "boundary=\"000000000000f8e46b05b69d31c0\"" "report-type=delivery-status") "7bit" nil nil nil nil #<marker at 46 in mymailfolder> #<marker at 11763 in mymailfolder> #<marker at 11764 in mymailfolder> #<marker at 30611 in mymailfolder> ([("multipart/related" "boundary=000000000000f8e49c05b69d31c1") ("multipart/related" "boundary=\"000000000000f8e49c05b69d31c1\"") "7bit" nil nil nil nil #<marker at 11795 in mymailfolder> #<marker at 11868 in mymailfolder> #<marker at 11869 in mymailfolder> #<marker at 19461 in mymailfolder> ([("multipart/alternative" "boundary=000000000000f8e4a205b69d31c2") ("multipart/alternative" "boundary=\"000000000000f8e4a205b69d31c2\"") "7bit" nil nil nil nil #<marker at 11900 in mymailfolder> #<marker at 11977 in mymailfolder> #<marker at 11978 in mymailfolder> #<marker at 13960 in mymailfolder> ([... ... "7bit" nil nil nil nil #<marker at 12009 in mymailfolder> #<marker at 12051 in mymailfolder> #<marker at 12052 in mymailfolder> #<marker at 12361 in mymailfolder> nil <<c>> <<m>> nil nil nil] [... ... "quoted-printable" nil nil nil nil #<marker at 12393 in mymailfolder> #<marker at 12478 in mymailfolder> #<marker at 12479 in mymailfolder> #<marker at 13927 in mymailfolder> nil <<c>> <<m>> nil nil nil]) <<c>> <<m>> nil nil nil] [("image/png" "name=icon.png") ("image/png" "name=\"icon.png\"") "base64" "<icon.png>" nil ("attachment" "filename=icon.png") ("attachment" "filename=\"icon.png\"") #<marker at 13992 in mymailfolder> #<marker at 14143 in mymailfolder> #<marker at 14144 in mymailfolder> #<marker at 19428 in mymailfolder> nil <<c>> <<m>> nil nil nil]) <<c>> <<m>> nil nil nil] [("message/delivery-status") ("message/delivery-status") "7bit" nil nil nil nil #<marker at 19493 in mymailfolder> #<marker at 19531 in mymailfolder> #<marker at 19532 in mymailfolder> #<marker at 20039 in mymailfolder> nil <<c>> <<m>> nil nil nil] [("message/rfc822") ("message/rfc822") "binary" nil nil nil nil #<marker at 20071 in mymailfolder> #<marker at 20144 in mymailfolder> #<marker at 20145 in mymailfolder> #<marker at 30577 in mymailfolder> ([("multipart/mixed" "charset=3Dutf8" "boundary=3DAbuse-bfbb0f920793ac03cb8634bde14d8a1e") ("multipart/mixed" "charset=3Dutf8" "boundary=3DAbuse-bfbb0f920793ac03cb8634bde14d8a1e") "7bit" nil nil nil nil #<marker at 20145 in mymailfolder> #<marker at 28382 in mymailfolder> #<marker at 28383 in mymailfolder> #<marker at 30577 in mymailfolder> nil <<c>> <<m>> nil nil nil]) <<c>> <<m>> nil nil nil]) <<c>> <<m>> 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 nil nil] [nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil] [nil <v> nil nil nil nil]])
  vm-do-summary(nil)
  vm-do-needed-summary-rebuild()
  #[(b) "\306\307 !!\211 \205<

Revision history for this message
Jeff K (kosowsky) wrote :

OK - I diagnosed the source of the problem.
The error occurs within a mime encoded message with:

  Content-Type: message/rfc822
  Content-Transfer-Encoding: quoted-printable

Then there is a mime message within it that says:

  Content-Type: multipart/mixed; charset=3Dutf8;
     boundary=3DAbuse-bfbb0f920793ac03cb8634bde14d8a1e;

However instead of interpreting '=3D' as being '=' in quoted printable, it interprets the boundary as being "3DAbuse-bfbb0f920793ac03cb8634bde14d8a1e"

So, for some reason it is not un-encoding the quoted printable part...

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

The bug is in vm-su-attachment-indicator, which is supposed to find out whether the message has an attachment. This was a feature added by RobH. It is apparently buggy in handling nested MIME parts.

If you remove the "P" field from your vm-summary-format, you can avoid the buggy code. But obviously you won't get the attachment indicator your summaries.

summary: - "Wrong type argument: arrayp, nil" on reading certain MIME messages
+ vm-su-attachment-indicator buggy
Changed in vm:
status: New → Triaged
importance: Undecided → Low
Revision history for this message
Jeff K (kosowsky) wrote : [Bug 1908468] Re: "Wrong type argument: arrayp, nil" on reading certain MIME messages
Download full text (17.3 KiB)

Thanks Uday.
Changing vm-summary-format, does indeed avoid the "Wrong type
argument: arrayp, nil" error.

However, vm still has issues reading messages after this message.
Specifically, I get the error:
      byte-code: Trailing garbage following expression [2 times]
So that neither the message nor any following show up in the summary
buffer.

Any thoughts on how to fix the underlying "buggy code"?

Best,
Jeff

Uday Reddy wrote at about 12:38:48 -0000 on Thursday, December 17, 2020:
 > The bug is in vm-su-attachment-indicator, which is supposed to find out
 > whether the message has an attachment. This was a feature added by RobH.
 > It is apparently buggy in handling nested MIME parts.
 >
 > If you remove the "P" field from your vm-summary-format, you can avoid
 > the buggy code. But obviously you won't get the attachment indicator
 > your summaries.
 >
 >
 > ** Summary changed:
 >
 > - "Wrong type argument: arrayp, nil" on reading certain MIME messages
 > + vm-su-attachment-indicator buggy
 >
 > ** Changed in: vm
 > Status: New => Triaged
 >
 > ** Changed in: vm
 > Importance: Undecided => Low
 >
 > --
 > You received this bug notification because you are subscribed to the bug
 > report.
 > https://bugs.launchpad.net/bugs/1908468
 >
 > Title:
 > vm-su-attachment-indicator buggy
 >
 > Status in VM:
 > Triaged
 >
 > Bug description:
 > When I get mail delivery error messages from Google ( Mail Delivery Subsystem <email address hidden>), it "crashes" any subsequent action I take in the folder containing that message, each time giving me the following error "Wrong type argument: arrayp, nil".
 > Specifically, this occurs if I try to read any other messages in the same folder, show the summary, navigate the summary, save the folder, etc.
 >
 > The only thing I can do is to kill all the related buffers for the
 > folder, manually delete the offending email (outside of vm) and then
 > re-read the folder.
 >
 > The debugging traceback is as follows:
 >
 > Debugger entered--Lisp error: (wrong-type-argument arrayp nil)
 > vm-mm-layout-type(nil)
 > vm-mime-operate-on-attachments(nil :action #[(msg layout type file) " T\211 \207" [attachments] 2] :included nil :excluded nil :messages ([[#<marker at 1 in mymailfolder> #<marker at 46 in mymailfolder> nil #<marker at 11764 in mymailfolder> #<marker at 30611 in mymailfolder> #<marker at 30612 in mymailfolder>] ["1" " 1" nil 1 nil <<>> <-- From_ "15427" #<buffer mymailfolder> nil nil nil nil nil nil [("multipart/report" "boundary=000000000000f8e46b05b69d31c0" "report-type=delivery-status") ("multipart/report" "boundary=\"000000000000f8e46b05b69d31c0\"" "report-type=delivery-status") "7bit" nil nil nil nil #<marker at 46 in mymailfolder> #<marker at 11763 in mymailfolder> #<marker at 11764 in mymailfolder> #<marker at 30611 in mymailfolder> ([("multipart/related" "boundary=000000000000f8e49c05b69d31c1") ("multipart/related" "boundary=\"000000000000f8e49c05b69d31c1\"") "7bit" nil nil nil nil #<marker at 11795 in mymailfolder> #<marker at 11868 in mymailfolder> #<marker at 11869 in mymailfold...

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

It is not worth the trouble to fix it. Parsing an entire MIME message
correctly is not something that should be done while generating the summary.
But we should do "exception handling" to catch any errors that might arise
in the rudimentary parsing that this function does.

Uday

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

You might need to do 'vm-fix-my-summary' to regenerate the summary. That
might get rid of the "trailing garbage" error. (That is an emacs error, not
given by VM.)

Revision history for this message
Jeff K (kosowsky) wrote :
Download full text (16.8 KiB)

That makes sense.
Is that an easy fix that you plan to do... or can you show me what I
need to do.
For now, I hacked around it by using procmail to pre-filter out the
regex "^\s+boundary=3D"

Also, btw, are you still maintaining an updated stream on launchpad...

Best,
Jeff

Uday Reddy wrote at about 12:37:41 -0000 on Friday, December 18, 2020:
 > It is not worth the trouble to fix it. Parsing an entire MIME message
 > correctly is not something that should be done while generating the summary.
 > But we should do "exception handling" to catch any errors that might arise
 > in the rudimentary parsing that this function does.
 >
 > Uday
 >
 > --
 > You received this bug notification because you are subscribed to the bug
 > report.
 > https://bugs.launchpad.net/bugs/1908468
 >
 > Title:
 > vm-su-attachment-indicator buggy
 >
 > Status in VM:
 > Triaged
 >
 > Bug description:
 > When I get mail delivery error messages from Google ( Mail Delivery Subsystem <email address hidden>), it "crashes" any subsequent action I take in the folder containing that message, each time giving me the following error "Wrong type argument: arrayp, nil".
 > Specifically, this occurs if I try to read any other messages in the same folder, show the summary, navigate the summary, save the folder, etc.
 >
 > The only thing I can do is to kill all the related buffers for the
 > folder, manually delete the offending email (outside of vm) and then
 > re-read the folder.
 >
 > The debugging traceback is as follows:
 >
 > Debugger entered--Lisp error: (wrong-type-argument arrayp nil)
 > vm-mm-layout-type(nil)
 > vm-mime-operate-on-attachments(nil :action #[(msg layout type file) " T\211 \207" [attachments] 2] :included nil :excluded nil :messages ([[#<marker at 1 in mymailfolder> #<marker at 46 in mymailfolder> nil #<marker at 11764 in mymailfolder> #<marker at 30611 in mymailfolder> #<marker at 30612 in mymailfolder>] ["1" " 1" nil 1 nil <<>> <-- From_ "15427" #<buffer mymailfolder> nil nil nil nil nil nil [("multipart/report" "boundary=000000000000f8e46b05b69d31c0" "report-type=delivery-status") ("multipart/report" "boundary=\"000000000000f8e46b05b69d31c0\"" "report-type=delivery-status") "7bit" nil nil nil nil #<marker at 46 in mymailfolder> #<marker at 11763 in mymailfolder> #<marker at 11764 in mymailfolder> #<marker at 30611 in mymailfolder> ([("multipart/related" "boundary=000000000000f8e49c05b69d31c1") ("multipart/related" "boundary=\"000000000000f8e49c05b69d31c1\"") "7bit" nil nil nil nil #<marker at 11795 in mymailfolder> #<marker at 11868 in mymailfolder> #<marker at 11869 in mymailfolder> #<marker at 19461 in mymailfolder> ([... ... "7bit" nil nil nil nil #<marker at 11900 in mymailfolder> #<marker at 11977 in mymailfolder> #<marker at 11978 in mymailfolder> #<marker at 13960 in mymailfolder> ... <<c>> <<m>> nil nil nil] [... ... "base64" "<icon.png>" nil ... ... #<marker at 13992 in mymailfolder> #<marker at 14143 in mymailfolder> #<marker at 14144 in mymailfolder> #<marker at 19428 in mymailfolder> nil <<c>> <<m>> nil nil nil]) <<c>> <<m>> nil nil nil] [("message/delivery-stat...

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.