← Back to team overview

vm team mailing list archive

[Bug 495089] Re: "Display using External Viewer" produces corrupt file under emacs 23

 

Richard, thanks for reporting this.  I believe the problem exists with
the current version of VM as well.  So this report is valuable.
However, the specific line that you identified as the cause isn't in the
current version.   So, we will have to hunt it down.  There are a few
other occurrences of set-buffer-multibyte in vm-mime.el.  We will have
to check all of them, I suppose.

The test.jpg file that you attached is presumably the image that was
attached in the message?

Cheers,
Uday

-- 
"Display using External Viewer" produces corrupt file under emacs 23
https://bugs.launchpad.net/bugs/495089
You received this bug notification because you are a member of VM
development team, which is the registrant for VM.

Status in VM (View Mail) for Emacs: Confirmed

Bug description:
The "Display using External Viewer" menu option isn't working under
Emacs-23.  The file produced is corrupted and typically is slightly
smaller than it should be.  This is with vm 7.19.   With emacs 22.1
this problem doesn't happen.

The "Save to File" does work, however.

I found that by removing the call to set-buffer-multibyte in
vm-mime-display-external-generic the problem went away.

% diff -c vm-mime.el.orig vm-mime.el
*** vm-mime.el.orig	Tue Dec  1 11:07:31 2009
--- vm-mime.el	Thu Dec 10 10:12:31 2009
***************
*** 1967,1973 ****
  			    (vm-mime-transfer-decode-region layout
  							    (point-min)
  							    (point-max))
! 			    (set-buffer-multibyte t)
  			    (set-buffer target)
  			    (setq start (point))
  			    (insert-buffer-substring work-buffer)
--- 1967,1973 ----
  			    (vm-mime-transfer-decode-region layout
  							    (point-min)
  							    (point-max))
! 			    ;; (set-buffer-multibyte t)
  			    (set-buffer target)
  			    (setq start (point))
  			    (insert-buffer-substring work-buffer)
% 


Examples of using the "Save to File"  
-rw-------  1 sharman gx5000 3310 Dec 10 10:13 test.gif
-rw-------  1 sharman gx5000 3424 Dec 10 10:13 test.jpeg
sharmanpc 19% 

whearas when using "Display using External Viewer" the temporary file
was a different size
-rw-------  1 sharman gx5000 3302 Dec 10 10:12 test.gif
-rw-------  1 sharman gx5000 3420 Dec 10 10:12 test.jpeg





Follow ups

References