unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Peter Dyballa <Peter_Dyballa@Freenet.DE>
To: Eli Zaretskii <eliz@gnu.org>
Cc: schwab@suse.de, emacs-pretest-bug@gnu.org
Subject: Re: 23.0.50; Possible bug with bzip2 compressed tar files?
Date: Sat, 12 Jan 2008 20:41:16 +0100	[thread overview]
Message-ID: <707A108C-B846-4043-B165-70798E3D90DA@Freenet.DE> (raw)
In-Reply-To: <umyrbqahh.fsf@gnu.org>


Am 12.01.2008 um 17:23 schrieb Eli Zaretskii:

>>    -rw-r--r--     1 pete  pete   15234352 10 Jan 22:59 OmniWeb-5.7-
>> r97021-Alpha.tbz2
>
> .tbz2?  I don't think Emacs automatically tries to un-bzip2 and untar
> that, does it?  Does it help to tweak jka-compr-compression-info-list?


Yes, of course: this extension is missing! It only has, tar and bzip2  
related:

	["\\.tbz\\'" "bzip2ing" "bzip2" nil "bunzip2ing" "bzip2"
	  ("-d")
	  nil nil "BZh"]

Since it's much easier to create a hard link OmniWeb-5.7-r97021- 
Alpha.tbz I first did that. And now I get an error:

	Debugger entered--Lisp error: (error "{
	    IBClasses = (
	        {
	            ACTIONS = {replace = id; replaceAll = id;  
replaceAndFind  has size -48678843 - corrupted")
	  signal(error ("{\n    IBClasses = (\n        {\n             
ACTIONS = {replace = id; replaceAll = id; replaceAndFind  has size  
-48678843 - corrupted"))
	  error("%s has size %s - corrupted" "{\n    IBClasses = (\n         
{\n            ACTIONS = {replace = id; replaceAll = id;  
replaceAndFind " -48678843)
	  tar-summarize-buffer()
	  tar-mode()
	  set-auto-mode-0(tar-mode nil)
	  set-auto-mode()
	  normal-mode(t)
	  after-find-file(nil t)
	  find-file-noselect-1(#<buffer OmniWeb-5.7-r97021-Alpha.tbz> "/ 
Volumes/drau\x8df\ en/weich/OmniWeb-5.7-r97021-Alpha.tbz" nil nil "/ 
Volumes/drau\x8df\ en/weich/OmniWeb-5.7-r97021-Alpha.tbz" (4696  
234881037))
	  find-file-noselect("/Volumes/drau\x8df\ en/weich/OmniWeb-5.7- 
r97021-Alpha.tbz")
	  view-file("/Volumes/drau\x8df\ en/weich/OmniWeb-5.7-r97021- 
Alpha.tbz")
	  dired-view-file()
	  call-interactively(dired-view-file nil nil)

It works to view other bzip2 or gzip compressed TAR files on that  
external disk in the same directory. *Messages* contains:

	File OmniWeb-5.7-r97021-Alpha.tbz is large (14MB), really open? (y  
or n)
	bunzip2ing OmniWeb-5.7-r97021-Alpha.tbz...done
	Parsing tar file...
	Entering debugger...


So I made my test case, adding

	(add-to-list 'auto-mode-alist '("\\.tbz2\\'" . tar-mode))

and adjusting the original \.tbz\' value to \.tbz\(\|2\)\':

	'(jka-compr-compression-info-list (quote (["\\.Z\\(~\\|\\.~[0-9]+~\ 
\)?\\'" "compressing" "compress" ("-c") "uncompressing" "gzip" ("-c"  
"-q" "-d") nil t "\x1f\x9d"] ["\\.bz2\\(~\\|\\.~[0-9]+~\\)?\\'"  
"bzip2ing" "bzip2" nil "bunzip2ing" "bzip2" ("-d") nil t "BZh"] ["\ 
\.tbz\\(\\|2\\)\\'" "bzip2ing" "bzip2" nil "bunzip2ing" "bzip2" ("- 
d") nil nil "BZh"] ["\\.\\(?:tgz\\|svgz\\)\\'" "compressing"  
"gzip" ("-c" "-q") "uncompressing" "gzip" ("-c" "-q" "-d") t nil  
"\x1f\x8b"] ["\\.g?z\\(~\\|\\.~[0-9]+~\\)?\\'" "compressing" "gzip" ("- 
c" "-q") "uncompressing" "gzip" ("-c" "-q" "-d") t t "\x1f\x8b"] ["\\.dz\ 
\'" nil nil nil "uncompressing" "gzip" ("-c" "-q" "-d") nil t  
"\x1f\x8b"])))

So I have the test files

   -rw-r--r--   3 pete pete   15M 10. Jan 22:59 OmniWeb-5.7-r97021- 
Alpha.tar.bz2
   -rw-r--r--   3 pete pete   15M 10. Jan 22:59 OmniWeb-5.7-r97021- 
Alpha.tbz
• -rw-r--r--   3 pete pete   15M 10. Jan 22:59 OmniWeb-5.7-r97021- 
Alpha.tbz2

and

• -rw-r--r--   3 pete pete  306K 16. Sep 2006  MesaGLUT-6.5.1.tar.bz2
   -rw-r--r--   3 pete pete  306K 16. Sep 2006  MesaGLUT-6.5.1.tbz
   -rw-r--r--   3 pete pete  306K 16. Sep 2006  MesaGLUT-6.5.1.tbz2

the original file marked with •. I have no problem viewing the  
MesaGLUT-6.5.1 archive from dired, but the OmniWeb-5.7 files produce  
an error, the same as mentioned above:

	Debugger entered--Lisp error: (error "{
	    IBClasses = (
	        {
	            ACTIONS = {replace = id; replaceAll = id;  
replaceAndFind  has size -48678843 - corrupted")
	  signal(error ("{\n    IBClasses = (\n        {\n             
ACTIONS = {replace = id; replaceAll = id; replaceAndFind  has size  
-48678843 - corrupted"))
	  error("%s has size %s - corrupted" "{\n    IBClasses = (\n         
{\n            ACTIONS = {replace = id; replaceAll = id;  
replaceAndFind " -48678843)
	  tar-summarize-buffer()
	  tar-mode()
	  set-auto-mode-0(tar-mode nil)
	  set-auto-mode()
	  normal-mode(t)
	  after-find-file(nil t)
	  find-file-noselect-1(#<buffer OmniWeb-5.7-r97021-Alpha.tar.bz2> "/ 
Volumes/drau\x8df\ en/weich/OmniWeb-5.7-r97021-Alpha.tar.bz2" nil nil  
"/Volumes/drau\x8df\ en/weich/OmniWeb-5.7-r97021-Alpha.tar.bz2" (4696  
234881037))
	  find-file-noselect("/Volumes/drau\x8df\ en/weich/OmniWeb-5.7- 
r97021-Alpha.tar.bz2")
	  view-file("/Volumes/drau\x8df\ en/weich/OmniWeb-5.7-r97021- 
Alpha.tar.bz2")
	  dired-view-file()
	  call-interactively(dired-view-file nil nil)

The OmniWeb... buffer starts with

	OmniWeb.app/^@^@^@

*Messages* contains:

	bunzip2ing MesaGLUT-6.5.1.tar.bz2...done
	Parsing tar file...done
	Not using View mode because the major mode is special
	bunzip2ing MesaGLUT-6.5.1.tbz...done
	Parsing tar file...done
	Not using View mode because the major mode is special
	bunzip2ing MesaGLUT-6.5.1.tbz2...done
	Parsing tar file...done
	Not using View mode because the major mode is special
	Mark saved where search started
	File OmniWeb-5.7-r97021-Alpha.tar.bz2 is large (14MB), really open?  
(y or n)
	bunzip2ing OmniWeb-5.7-r97021-Alpha.tar.bz2...done
	Parsing tar file...
	Entering debugger...

So it's one of the rare times when size does matter? On disk the  
archive is almost 48 MB with almost 4,000 files and directories.

The other hard links produce in *Messages*

	File OmniWeb-5.7-r97021-Alpha.tbz is large (14MB), really open? (y  
or n)
	bunzip2ing OmniWeb-5.7-r97021-Alpha.tbz...done
	Parsing tar file...
	File mode specification error: (error "{
	    IBClasses = (
	        {
	            ACTIONS = {replace = id; replaceAll = id;  
replaceAndFind  has size -48678843 - corrupted")
	Not using View mode because the major mode is special
	File OmniWeb-5.7-r97021-Alpha.tbz2 is large (14MB), really open? (y  
or n)
	bunzip2ing OmniWeb-5.7-r97021-Alpha.tbz2...done
	Parsing tar file...
	File mode specification error: (error "{
	    IBClasses = (
	        {
	            ACTIONS = {replace = id; replaceAll = id;  
replaceAndFind  has size -48678843 - corrupted")
	Not using View mode because the major mode is special
	Mark set

The OmniWeb... buffers start each time also with

	OmniWeb.app/^@^@^@

Opening the hard-linked OmniWeb archive in other sequence (.tbz  
or .tbz2 first) brings the same "success" ...

--
Greetings

   Pete

The human animal differs from the lesser primates in his passion for  
lists of "Ten Best."
				– H. Allen Smith

  reply	other threads:[~2008-01-12 19:41 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-01-12 14:12 23.0.50; Possible bug with bzip2 compressed tar files? Peter Dyballa
2008-01-12 14:25 ` Andreas Schwab
2008-01-12 15:14   ` Peter Dyballa
2008-01-12 15:56     ` Eli Zaretskii
2008-01-12 16:03       ` Peter Dyballa
2008-01-12 16:23         ` Eli Zaretskii
2008-01-12 19:41           ` Peter Dyballa [this message]
2008-01-14 22:22           ` Peter Dyballa

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=707A108C-B846-4043-B165-70798E3D90DA@Freenet.DE \
    --to=peter_dyballa@freenet.de \
    --cc=eliz@gnu.org \
    --cc=emacs-pretest-bug@gnu.org \
    --cc=schwab@suse.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).