[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: perl code for decoding tar files...

> joost witteveen:
> > And, that libg++272-2.7.2_5.orig.tar.gz currently cannot be extracted
> > by dpkg-source, an error that doesn't relate to the 100+ character
> > problem (I've tried moving my source tree to /, and extract it there.
> > Same problem, while the filenames inside the .tar.gz really aren't
> > longer than about 50 chars).
> Didn't you get my reply (and completly untested patch) for that? Here it is 
> again:

Sorry, no I didn't. But I'm sorry to say it isn't a completely untested patch
now: I just tested it, and it works, too. You really made me happy there!

> +    $epfx=quotemeta($epfx);

> It's a perl coding error, but a very newbish mistake, IMHO. Experienced perl
> coders know to quotemeta variables before feeding them to s/// commands.
>  -- I'm thinking it'd be better to just rewrite dpkg-source
> > or whatever in C
> I don't see what the gain would be over cleaning it up/rewriting it in perl. 
> :-)

Well, the gain would be that
  - I would be able to understand the source,
  - in C you don't need to use "quotemeta()", so _that_ error wouldn't
    be made any more (well, I'm sure there would be others, though).

I'll trust you that it's a newbish error, and that it should be an uncommon
one. But to me the way it looked (and for several weeks (from my point of
view cause I missed your email) nobody knew a fix, so it seemed a difficult
problem) it was some obscure perl problem where perl interpreted stuff 
different than you intended. And this wouldn't happen with C "char *"'s or
C++ "String".

> > using the normal tar programme and checking the
> > resulting source tree afterwards.
> This, I agree, would be much better. Same with all the braindead patch
> checking it does.

Along with checking the source tree _before_ the source package is made,
so that you _never_  can create source packages that cannot be extracted
any more.

joost witteveen, joostje@debian.org
#!/usr/bin/perl -sp0777i<X+d*lMLa^*lN%0]dsXx++lMlN/dsM0<j]dsj
$/=unpack('H*',$_);$_=`echo 16dio\U$k"SK$/SM$n\EsN0p[lN*1
#what's this? see http://www.dcs.ex.ac.uk/~aba/rsa/

TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-devel-request@lists.debian.org . 
Trouble?  e-mail to templin@bucknell.edu .

Reply to: