Je poste en publique car je voudrais l'avis des experts perl dans la salle...
Je pense que j'ai résolu mon probleme. Voici le diff: --- /usr/bin/ddts-script Sun Feb 10 18:38:52 2002 +++ /tmp/ddts-script Sun Feb 10 20:45:07 2002 @@ -886,13 +886,13 @@ next unless (defined $filename); next if ($filename =~ /^close-bug/); # skip bug closure - 0, until (<> =~ /^$/); + 0, until (<> =~ /^\s*$/); $filename =~ s/^new(\..*)?/new/; # new\..* contains descriptions to translate open FILE, ">$temp_dir/ddts-$filename-$$" || die "Can't create temp file `ddts-$filename-$$': $!"; print FILE "begin-base64 400 $temp_dir/ddts-$filename-$$\n"; #print FILE $_ until (($_=<>) =~ /^$/); while (<>) { - last if /^$/; + last if /^\s*$/; print FILE $_; } print FILE "===="; ---------------------------- L'histoire, c'est que $_ n'est pas chompé à cet endroit. Donc la ligne vide vaut "\n". Donc, la correspondance ne se fait pas. Avec ce changement, j'ai tout plein de messages de deboggage (je suis en debug=5), qui m'indique que ca se passe bien. Je pense que du coup, tu peux inverser le patch until -> while. Mon probleme devait venir du fait que le until ne s'arretait pas sur la premiere ligne vide, et continuait jusqu'a l'undef suivant... La vraie question, c'est, pourquoi ca marchait jusque la... [EMAIL PROTECTED]:~$ dpkg -l perl\*|grep ii ii perl 5.6.1-7 Larry Wall's Practical Extraction and Report ii perl-5.6 6.3 Transitional package. ii perl-base 5.6.1-7 The Pathologically Eclectic Rubbish Lister. ii perl-doc 5.6.1-7 Perl documentation. ii perl-modules 5.6.1-7 Core Perl modules. ii perl-suid 5.6.1-7 Runs setuid Perl scripts. ii perlmagick 5.4.2.3-1 A perl interface to the libMagick graphics r C'est peut etre la différence. Suis je le seul à tester le script sur une instable fraiche ? Les experts voient ils la un probleme connu de transition entre les versions de perl ? Merci, Mt. On Sat, Feb 09, 2002 at 11:43:40PM +0100, Nicolas Bertolissio wrote: > Bonjour, > > Journal des modification : > ddts-script (0.4.14) unstable; urgency=low [...] > * turn `until' loop into `while' [...] > > Je ne comprends pas pourquoi la deuxième modification est nécessaire, il > me semble que ça fait la même chose, si quelqu'un peut m'expliquer... [...] > --- ddts-script_0.4.13 Sat Feb 9 00:00:00 2002 > +++ ddts-script_0.4.14 Sat Feb 9 00:00:00 2002 > @@ -888,7 +890,11 @@ > $filename =~ s/^new(\..*)?/new/; # > new\..* contains descriptions to translate > open FILE, ">$temp_dir/ddts-$filename-$$" || die "Can't > create temp file `ddts-$filename-$$': $!"; > print FILE "begin-base64 400 $temp_dir/ddts-$filename-$$\n"; > - print FILE $_ until (($_=<>) =~ /^$/); > + #print FILE $_ until (($_=<>) =~ /^$/); > + while (<>) { > + last if /^$/; > + print FILE $_; > + } > print FILE "===="; > close FILE || die "Can't > write temp file `ddts-$filename-$$': $!"; > -- Si les grands esprits se rencontrent, les petits esprits, eux, se cognent.