I start emacs with emacs -Q. Then I open two remote files (foo.tgz and
foo.zip). I modify a file within both of them. I save them. foo.tgz gets
upated correctly and foo.zip gets corrupted (same happens with jar files, btw,
since they are zipped).
[ For reproducing the issue, you don't need the foo.tgz file, I just mention that
to point that other compressed formats work fine for me ].
The remote files are in a system available via SSH, so that is what tramp uses.
The funny thing is that when I modify the zip file locally, it works
fine and emacs does not remind me I need to save the zip file (emacs
reminds me to do it with the tgz file), but remotely emacs reminds me to
save the zip file. When I do, it gets corrupted.
I was not sure if the problem lies within tramp or in the emacs code that deals
with zip files, so I filed a bug report to tramp. Here is their answer:
I would say it is due to arc-mode.el. I've checked the code shortly; it uses
`call-process' internally, which is not prepared for remote files. Replacing
all such calls by `process-file' was not reasonable, at least handling of
temporary files must be improved as well.
I recommend to file a bug report towards Emacs, by "M-x report-emacs-bug".
(I would appreciate very much a way to get a patch for fixing this, if/when
value of $LANG: en_US.UTF-8
default enable-multibyte-characters: t
Minor modes in effect:
(shadow sort gnus-util mail-extr emacsbug message format-spec rfc822 mml
easymenu mml-sec mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mm-util mail-prsvr mail-utils time-date tooltip ediff-hook vc-hooks
lisp-float-type mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt
fringe tabulated-list newcomment lisp-mode register page menu-bar
rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax
facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak
czech european ethiopic indian cyrillic chinese case-table epa-hook
jka-cmpr-hook help simple abbrev minibuffer loaddefs button faces
cus-face macroexp files text-properties overlay sha1 md5 base64 format
env code-pages mule custom widget hashtable-print-readable backquote
make-network-process dynamic-setting system-font-setting
font-render-setting move-toolbar gtk x-toolkit x multi-tty emacs)