r41650 - in /trunk/libconvert-uulib-perl: Changes META.yml README UUlib.pm debian/changelog debian/compat debian/control example-decoder uulib/uucheck.c uulib/uuint.h uulib/uunconc.c uulib/uuscan.c

gwolf at users.alioth.debian.org gwolf at users.alioth.debian.org
Tue Aug 11 00:57:19 UTC 2009


Author: gwolf
Date: Tue Aug 11 00:57:12 2009
New Revision: 41650

URL: http://svn.debian.org/wsvn/pkg-perl/?sc=1&rev=41650
Log:
Ready to upload new upstream release

Modified:
    trunk/libconvert-uulib-perl/Changes
    trunk/libconvert-uulib-perl/META.yml
    trunk/libconvert-uulib-perl/README
    trunk/libconvert-uulib-perl/UUlib.pm
    trunk/libconvert-uulib-perl/debian/changelog
    trunk/libconvert-uulib-perl/debian/compat
    trunk/libconvert-uulib-perl/debian/control
    trunk/libconvert-uulib-perl/example-decoder
    trunk/libconvert-uulib-perl/uulib/uucheck.c
    trunk/libconvert-uulib-perl/uulib/uuint.h
    trunk/libconvert-uulib-perl/uulib/uunconc.c
    trunk/libconvert-uulib-perl/uulib/uuscan.c

Modified: trunk/libconvert-uulib-perl/Changes
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconvert-uulib-perl/Changes?rev=41650&op=diff
==============================================================================
--- trunk/libconvert-uulib-perl/Changes (original)
+++ trunk/libconvert-uulib-perl/Changes Tue Aug 11 00:57:12 2009
@@ -1,11 +1,18 @@
 Revision history for Perl extension Convert::UUlib.
+
+1.12 Mon Oct 13 14:11:01 CEST 2008
+	- use the yencode filesize as additional matching criterium
+          to avoid false matches.
+        - made the example decoder more verbose w.r.t. error handling.
+        - removed potentially confusing decide_temp calls from
+          example decoder.
 
 1.11 Fri Jun 13 15:32:30 CEST 2008
 	- don't ask.
 
 1.10 Fri Jun 13 14:22:42 CEST 2008
 	- fix an infinite-looping problem when scanning in freestyle
-          mode (testcase provided by Pieter Geens).
+          mode (testcase provided by Pieter Geens and Reinhard Pfau).
 
 1.09 Fri May 25 19:38:11 CEST 2007
         - create something sensible, trust a windows program to fuck

Modified: trunk/libconvert-uulib-perl/META.yml
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconvert-uulib-perl/META.yml?rev=41650&op=diff
==============================================================================
--- trunk/libconvert-uulib-perl/META.yml (original)
+++ trunk/libconvert-uulib-perl/META.yml Tue Aug 11 00:57:12 2009
@@ -1,6 +1,6 @@
 --- #YAML:1.0
 name:                Convert-UUlib
-version:             1.11
+version:             1.12
 abstract:            ~
 license:             ~
 author:              ~

Modified: trunk/libconvert-uulib-perl/README
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconvert-uulib-perl/README?rev=41650&op=diff
==============================================================================
--- trunk/libconvert-uulib-perl/README (original)
+++ trunk/libconvert-uulib-perl/README Tue Aug 11 00:57:12 2009
@@ -260,107 +260,122 @@
     This is the file "example-decoder" from the distribution, put here
     instead of more thorough documentation.
 
-     # decode all the files in the directory uusrc/ and copy
-     # the resulting files to uudst/
-
-     use Convert::UUlib ':all';
-
-     sub namefilter {
-        my($path)=@_;
-        $path=~s/^.*[\/\\]//;
-        $path;
-     }
-
-     sub busycb {
-        my ($action, $curfile, $partno, $numparts, $percent, $fsize) = @_;
-        $_[0]=straction($action);
-        print "busy_callback(", (join ",", at _), ")\n";
-        0;
-     }
-
-     SetOption OPT_IGNMODE, 1;
-     SetOption OPT_VERBOSE, 1;
-
-     # show the three ways you can set callback functions. I normally
-     # prefer the one with the sub inplace.
-     SetFNameFilter \&namefilter;
-
-     SetBusyCallback "busycb", 333;
-
-     SetMsgCallback sub {
-        my ($msg, $level) = @_;
-        print uc strmsglevel $_[1], ": $msg\n";
-     };
-
-     # the following non-trivial FileNameCallback takes care
-     # of some subject lines not detected properly by uulib:
-     SetFileNameCallback sub {
-        return unless $_[1]; # skip "Re:"-plies et al.
-        local $_ = $_[0];
-
-        # the following rules are rather effective on some newsgroups,
-        # like alt.binaries.games.anime, where non-mime, uuencoded data
-        # is very common
-
-        # if we find some *.rar, take it as the filename
-        return $1 if /(\S{3,}\.(?:[rstuvwxyz]\d\d|rar))\s/i;
-
-        # one common subject format
-        return $1 if /- "(.{2,}?\..+?)" (?:yenc )?\(\d+\/\d+\)/i;
-
-        # - filename.par (04/55)
-        return $1 if /- "?(\S{3,}\.\S+?)"? (?:yenc )?\(\d+\/\d+\)/i;
-
-        # - (xxx) No. 1 sayuri81.jpg 756565 bytes
-        # - (20 files) No.17 Roseanne.jpg [2/2]
-        return $1 if /No\.[ 0-9]+ (\S+\....) (?:\d+ bytes )?\[/;
-
-        # otherwise just pass what we have
-        return ();
-     };
-
-     # now read all files in the directory uusrc/*
-     for(<uusrc/*>) {
-        my($retval,$count)=LoadFile ($_, $_, 1);
-        print "file($_), status(", strerror $retval, ") parts($count)\n";
-     }
-
-     SetOption OPT_SAVEPATH, "uudst/";
-
-     # now wade through all files and their source parts
-     $i = 0;
-     while ($uu = GetFileListItem($i)) {
-        $i++;
-        print "file nr. $i";
-        print " state ", $uu->state;
-        print " mode ", $uu->mode;
-        print " uudet ", strencoding $uu->uudet;
-        print " size ", $uu->size;
-        print " filename ", $uu->filename;
-        print " subfname ", $uu->subfname;
-        print " mimeid ", $uu->mimeid;
-        print " mimetype ", $uu->mimetype;
-        print "\n";
-
-        # print additional info about all parts
-        for ($uu->parts) {
-           while (my ($k, $v) = each %$_) {
-              print "$k > $v, ";
-           }
-           print "\n";
-        }
-
-        $uu->decode_temp;
-        print " temporarily decoded to ", $uu->binfile, "\n";
-        $uu->remove_temp;
-
-        print strerror $uu->decode;
-        print " saved as uudst/", $uu->filename, "\n";
-     }
-
-     print "cleanup...\n";
-
-     CleanUp();
+       #!/usr/bin/perl
+
+       # decode all the files in the directory uusrc/ and copy
+       # the resulting files to uudst/
+
+       use Convert::UUlib ':all';
+
+       sub namefilter {
+          my ($path) = @_;
+
+          $path=~s/^.*[\/\\]//;
+
+          $path
+       }
+
+       sub busycb {
+          my ($action, $curfile, $partno, $numparts, $percent, $fsize) = @_;
+          $_[0]=straction($action);
+          print "busy_callback(", (join ",", at _), ")\n";
+          0
+       }
+
+       SetOption OPT_RBUF, 128*1024;
+       SetOption OPT_WBUF, 1024*1024;
+       SetOption OPT_IGNMODE, 1;
+       SetOption OPT_IGNMODE, 1;
+       SetOption OPT_VERBOSE, 1;
+
+       # show the three ways you can set callback functions. I normally
+       # prefer the one with the sub inplace.
+       SetFNameFilter \&namefilter;
+
+       SetBusyCallback "busycb", 333;
+
+       SetMsgCallback sub {
+          my ($msg, $level) = @_;
+          print uc strmsglevel $_[1], ": $msg\n";
+       };
+
+       # the following non-trivial FileNameCallback takes care
+       # of some subject lines not detected properly by uulib:
+       SetFileNameCallback sub {
+          return unless $_[1]; # skip "Re:"-plies et al.
+          local $_ = $_[0];
+
+             return $1 if /(\S+\s+IMG_\d+.jpg)/i;
+
+          # the following rules are rather effective on some newsgroups,
+          # like alt.binaries.games.anime, where non-mime, uuencoded data
+          # is very common
+
+          # if we find some *.rar, take it as the filename
+          return $1 if /(\S{3,}\.(?:[rstuvwxyz]\d\d|rar))\s/i;
+
+          # one common subject format
+          return $1 if /- "(.{2,}?\..+?)" (?:yenc )?\(\d+\/\d+\)/i;
+
+          # - filename.par (04/55)
+          return $1 if /- "?(\S{3,}\.\S+?)"? (?:yenc )?\(\d+\/\d+\)/i;
+
+          # - (xxx) No. 1 sayuri81.jpg 756565 bytes
+          # - (20 files) No.17 Roseanne.jpg [2/2]
+          return $1 if /No\.[ 0-9]+ (\S+\....) (?:\d+ bytes )?\[/;
+
+          # try to detect some common forms of filenames
+          return $1 if /([a-z0-9_\-+.]{3,}\.[a-z]{3,4}(?:.\d+))/i;
+
+          # otherwise just pass what we have
+          ()
+       };
+
+       # now read all files in the directory uusrc/*
+       for(<uusrc/*>) {
+          my ($retval, $count) = LoadFile ($_, $_, 1);
+          print "file($_), status(", strerror $retval, ") parts($count)\n";
+       }
+
+       SetOption OPT_SAVEPATH, "uudst/";
+
+       # now wade through all files and their source parts
+       $i = 0;
+       while ($uu = GetFileListItem $i) {
+          $i++;
+          print "file nr. $i";
+          print " state ", $uu->state;
+          print " mode ", $uu->mode;
+          print " uudet ", strencoding $uu->uudet;
+          print " size ", $uu->size;
+          print " filename ", $uu->filename;
+          print " subfname ", $uu->subfname;
+          print " mimeid ", $uu->mimeid;
+          print " mimetype ", $uu->mimetype;
+          print "\n";
+
+          # print additional info about all parts
+          for ($uu->parts) {
+             while (my ($k, $v) = each %$_) {
+                print "$k > $v, ";
+             }
+             print "\n";
+          }
+
+          print $uu->filename;
+
+          $uu->remove_temp;
+
+          if (my $err = $uu->decode ()) {
+             print ", ", strerror $err, "\n";
+          } else {
+             print ", saved as uudst/", $uu->filename, "\n";
+          }
+       }
+
+       print "cleanup...\n";
+
+       CleanUp;
 
 AUTHOR
     Marc Lehmann <schmorp at schmorp.de>, the original uulib library was

Modified: trunk/libconvert-uulib-perl/UUlib.pm
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconvert-uulib-perl/UUlib.pm?rev=41650&op=diff
==============================================================================
--- trunk/libconvert-uulib-perl/UUlib.pm (original)
+++ trunk/libconvert-uulib-perl/UUlib.pm Tue Aug 11 00:57:12 2009
@@ -8,7 +8,7 @@
 require Exporter;
 require DynaLoader;
 
-our $VERSION = '1.11';
+our $VERSION = '1.12';
 
 our @ISA = qw(Exporter DynaLoader);
 
@@ -439,107 +439,122 @@
 This is the file C<example-decoder> from the distribution, put here
 instead of more thorough documentation.
 
- # decode all the files in the directory uusrc/ and copy
- # the resulting files to uudst/
-
- use Convert::UUlib ':all';
-
- sub namefilter {
-    my($path)=@_;
-    $path=~s/^.*[\/\\]//;
-    $path;
- }
-
- sub busycb {
-    my ($action, $curfile, $partno, $numparts, $percent, $fsize) = @_;
-    $_[0]=straction($action);
-    print "busy_callback(", (join ",", at _), ")\n";
-    0;
- }
-
- SetOption OPT_IGNMODE, 1;
- SetOption OPT_VERBOSE, 1;
-
- # show the three ways you can set callback functions. I normally
- # prefer the one with the sub inplace.
- SetFNameFilter \&namefilter;
-
- SetBusyCallback "busycb", 333;
-
- SetMsgCallback sub {
-    my ($msg, $level) = @_;
-    print uc strmsglevel $_[1], ": $msg\n";
- };
-
- # the following non-trivial FileNameCallback takes care
- # of some subject lines not detected properly by uulib:
- SetFileNameCallback sub {
-    return unless $_[1]; # skip "Re:"-plies et al.
-    local $_ = $_[0];
-
-    # the following rules are rather effective on some newsgroups,
-    # like alt.binaries.games.anime, where non-mime, uuencoded data
-    # is very common
-
-    # if we find some *.rar, take it as the filename
-    return $1 if /(\S{3,}\.(?:[rstuvwxyz]\d\d|rar))\s/i;
-
-    # one common subject format
-    return $1 if /- "(.{2,}?\..+?)" (?:yenc )?\(\d+\/\d+\)/i;
-
-    # - filename.par (04/55)
-    return $1 if /- "?(\S{3,}\.\S+?)"? (?:yenc )?\(\d+\/\d+\)/i;
-
-    # - (xxx) No. 1 sayuri81.jpg 756565 bytes
-    # - (20 files) No.17 Roseanne.jpg [2/2]
-    return $1 if /No\.[ 0-9]+ (\S+\....) (?:\d+ bytes )?\[/;
-
-    # otherwise just pass what we have
-    return ();
- };
-
- # now read all files in the directory uusrc/*
- for(<uusrc/*>) {
-    my($retval,$count)=LoadFile ($_, $_, 1);
-    print "file($_), status(", strerror $retval, ") parts($count)\n";
- }
-
- SetOption OPT_SAVEPATH, "uudst/";
-
- # now wade through all files and their source parts
- $i = 0;
- while ($uu = GetFileListItem($i)) {
-    $i++;
-    print "file nr. $i";
-    print " state ", $uu->state;
-    print " mode ", $uu->mode;
-    print " uudet ", strencoding $uu->uudet;
-    print " size ", $uu->size;
-    print " filename ", $uu->filename;
-    print " subfname ", $uu->subfname;
-    print " mimeid ", $uu->mimeid;
-    print " mimetype ", $uu->mimetype;
-    print "\n";
-
-    # print additional info about all parts
-    for ($uu->parts) {
-       while (my ($k, $v) = each %$_) {
-          print "$k > $v, ";
-       }
-       print "\n";
-    }
-
-    $uu->decode_temp;
-    print " temporarily decoded to ", $uu->binfile, "\n";
-    $uu->remove_temp;
-
-    print strerror $uu->decode;
-    print " saved as uudst/", $uu->filename, "\n";
- }
-
- print "cleanup...\n";
-
- CleanUp();
+   #!/usr/bin/perl
+
+   # decode all the files in the directory uusrc/ and copy
+   # the resulting files to uudst/
+
+   use Convert::UUlib ':all';
+
+   sub namefilter {
+      my ($path) = @_;
+
+      $path=~s/^.*[\/\\]//;
+
+      $path
+   }
+
+   sub busycb {
+      my ($action, $curfile, $partno, $numparts, $percent, $fsize) = @_;
+      $_[0]=straction($action);
+      print "busy_callback(", (join ",", at _), ")\n";
+      0
+   }
+
+   SetOption OPT_RBUF, 128*1024;
+   SetOption OPT_WBUF, 1024*1024;
+   SetOption OPT_IGNMODE, 1;
+   SetOption OPT_IGNMODE, 1;
+   SetOption OPT_VERBOSE, 1;
+
+   # show the three ways you can set callback functions. I normally
+   # prefer the one with the sub inplace.
+   SetFNameFilter \&namefilter;
+
+   SetBusyCallback "busycb", 333;
+
+   SetMsgCallback sub {
+      my ($msg, $level) = @_;
+      print uc strmsglevel $_[1], ": $msg\n";
+   };
+
+   # the following non-trivial FileNameCallback takes care
+   # of some subject lines not detected properly by uulib:
+   SetFileNameCallback sub {
+      return unless $_[1]; # skip "Re:"-plies et al.
+      local $_ = $_[0];
+
+         return $1 if /(\S+\s+IMG_\d+.jpg)/i;
+
+      # the following rules are rather effective on some newsgroups,
+      # like alt.binaries.games.anime, where non-mime, uuencoded data
+      # is very common
+
+      # if we find some *.rar, take it as the filename
+      return $1 if /(\S{3,}\.(?:[rstuvwxyz]\d\d|rar))\s/i;
+
+      # one common subject format
+      return $1 if /- "(.{2,}?\..+?)" (?:yenc )?\(\d+\/\d+\)/i;
+
+      # - filename.par (04/55)
+      return $1 if /- "?(\S{3,}\.\S+?)"? (?:yenc )?\(\d+\/\d+\)/i;
+
+      # - (xxx) No. 1 sayuri81.jpg 756565 bytes
+      # - (20 files) No.17 Roseanne.jpg [2/2]
+      return $1 if /No\.[ 0-9]+ (\S+\....) (?:\d+ bytes )?\[/;
+
+      # try to detect some common forms of filenames
+      return $1 if /([a-z0-9_\-+.]{3,}\.[a-z]{3,4}(?:.\d+))/i;
+
+      # otherwise just pass what we have
+      ()
+   };
+
+   # now read all files in the directory uusrc/*
+   for(<uusrc/*>) {
+      my ($retval, $count) = LoadFile ($_, $_, 1);
+      print "file($_), status(", strerror $retval, ") parts($count)\n";
+   }
+
+   SetOption OPT_SAVEPATH, "uudst/";
+
+   # now wade through all files and their source parts
+   $i = 0;
+   while ($uu = GetFileListItem $i) {
+      $i++;
+      print "file nr. $i";
+      print " state ", $uu->state;
+      print " mode ", $uu->mode;
+      print " uudet ", strencoding $uu->uudet;
+      print " size ", $uu->size;
+      print " filename ", $uu->filename;
+      print " subfname ", $uu->subfname;
+      print " mimeid ", $uu->mimeid;
+      print " mimetype ", $uu->mimetype;
+      print "\n";
+
+      # print additional info about all parts
+      for ($uu->parts) {
+         while (my ($k, $v) = each %$_) {
+            print "$k > $v, ";
+         }
+         print "\n";
+      }
+
+      print $uu->filename;
+
+      $uu->remove_temp;
+
+      if (my $err = $uu->decode ()) {
+         print ", ", strerror $err, "\n";
+      } else {
+         print ", saved as uudst/", $uu->filename, "\n";
+      }
+   }
+
+   print "cleanup...\n";
+
+   CleanUp;
 
 =head1 AUTHOR
 

Modified: trunk/libconvert-uulib-perl/debian/changelog
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconvert-uulib-perl/debian/changelog?rev=41650&op=diff
==============================================================================
--- trunk/libconvert-uulib-perl/debian/changelog (original)
+++ trunk/libconvert-uulib-perl/debian/changelog Tue Aug 11 00:57:12 2009
@@ -1,4 +1,4 @@
-libconvert-uulib-perl (1.11-2) UNRELEASED; urgency=low
+libconvert-uulib-perl (1.12-1) unstable; urgency=low
 
   [ Jonas Smedegaard ]
   * Depend on ${misc:Depends}.
@@ -16,7 +16,14 @@
   [ Nathan Handler ]
   * debian/watch: Update to ignore development releases.
 
- -- Jonas Smedegaard <dr at jones.dk>  Fri, 27 Jun 2008 12:16:21 +0200
+  [ Gunnar Wolf ]
+  * Standards-version 3.7.3 → 3.8.2 (no changes needed)
+    )
+  * Updated to debhelper compat level 7
+  * Added myself as an uploader
+  * Added build-dependency on quilt
+
+ -- Gunnar Wolf <gwolf at debian.org>  Mon, 10 Aug 2009 19:51:07 -0500
 
 libconvert-uulib-perl (1.11-1) unstable; urgency=medium
 

Modified: trunk/libconvert-uulib-perl/debian/compat
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconvert-uulib-perl/debian/compat?rev=41650&op=diff
==============================================================================
--- trunk/libconvert-uulib-perl/debian/compat (original)
+++ trunk/libconvert-uulib-perl/debian/compat Tue Aug 11 00:57:12 2009
@@ -1,1 +1,1 @@
-6
+7

Modified: trunk/libconvert-uulib-perl/debian/control
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconvert-uulib-perl/debian/control?rev=41650&op=diff
==============================================================================
--- trunk/libconvert-uulib-perl/debian/control (original)
+++ trunk/libconvert-uulib-perl/debian/control Tue Aug 11 00:57:12 2009
@@ -1,10 +1,10 @@
 Source: libconvert-uulib-perl
 Section: perl
 Priority: optional
-Build-Depends: cdbs (>= 0.4.39), devscripts (>= 2.10.7), dh-buildinfo, debhelper (>= 5.0.44), perl (>= 5.6.0-16)
+Build-Depends: cdbs (>= 0.4.39), devscripts (>= 2.10.7), dh-buildinfo, debhelper (>= 7), perl (>= 5.6.0-16), quilt
 Maintainer: Debian Perl Group <pkg-perl-maintainers at lists.alioth.debian.org>
-Uploaders: Jonas Smedegaard <dr at jones.dk>
-Standards-Version: 3.7.3
+Uploaders: Jonas Smedegaard <dr at jones.dk>, Gunnar Wolf <gwolf at debian.org>
+Standards-Version: 3.8.2
 Vcs-Svn: svn://svn.debian.org/pkg-perl/trunk/libconvert-uulib-perl/
 Vcs-Browser: http://svn.debian.org/viewsvn/pkg-perl/trunk/libconvert-uulib-perl/
 Homepage: http://search.cpan.org/dist/Convert::UUlib/

Modified: trunk/libconvert-uulib-perl/example-decoder
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconvert-uulib-perl/example-decoder?rev=41650&op=diff
==============================================================================
--- trunk/libconvert-uulib-perl/example-decoder (original)
+++ trunk/libconvert-uulib-perl/example-decoder Tue Aug 11 00:57:12 2009
@@ -42,6 +42,8 @@
 SetFileNameCallback sub {
    return unless $_[1]; # skip "Re:"-plies et al.
    local $_ = $_[0];
+
+      return $1 if /(\S+\s+IMG_\d+.jpg)/i;
 
    # the following rules are rather effective on some newsgroups,
    # like alt.binaries.games.anime, where non-mime, uuencoded data
@@ -98,14 +100,17 @@
       print "\n";
    }
 
-   $uu->decode_temp;
-   print " temporarily decoded to ", $uu->binfile, "\n";
+   print $uu->filename;
+
    $uu->remove_temp;
 
-   print strerror $uu->decode;
-   print " saved as uudst/", $uu->filename, "\n";
+   if (my $err = $uu->decode ()) {
+      print ", ", strerror $err, "\n";
+   } else {
+      print ", saved as uudst/", $uu->filename, "\n";
+   }
 }
 
 print "cleanup...\n";
 
-CleanUp();
+CleanUp;

Modified: trunk/libconvert-uulib-perl/uulib/uucheck.c
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconvert-uulib-perl/uulib/uucheck.c?rev=41650&op=diff
==============================================================================
--- trunk/libconvert-uulib-perl/uulib/uucheck.c (original)
+++ trunk/libconvert-uulib-perl/uulib/uucheck.c Tue Aug 11 00:57:12 2009
@@ -753,8 +753,9 @@
   else
     result->subfname = NULL;
 
-  result->mimeid   = _FP_strdup (data->mimeid);
-  result->mimetype = _FP_strdup (data->mimetype);
+  result->yefilesize = data->yefilesize;
+  result->mimeid     = _FP_strdup (data->mimeid);
+  result->mimetype   = _FP_strdup (data->mimetype);
 
   if (result->partno == -1 && 
       (data->uudet == PT_ENCODED || data->uudet == QP_ENCODED))
@@ -1003,6 +1004,7 @@
    *     (c) Both parts don't have different MIME-IDs
    *     (d) Both parts don't encode different files
    *     (e) The other part wants to stay alone (FL_SINGLE)
+   *     (g) The yencode file size matches.
    */
 
   /*
@@ -1014,16 +1016,15 @@
     if (data->data->flags & FL_SINGLE) {
       /* this space intentionally left blank */
     }
-    else if ((data->mimeid && iter->mimeid &&
-	      strcmp (data->mimeid, iter->mimeid) == 0) ||
-	     (_FP_stricmp (data->subfname, iter->subfname) == 0 &&
-	      !(iter->begin && data->data->begin) &&
-	      !(iter->end   && data->data->end) &&
-	      !(data->mimeid && iter->mimeid &&
-		strcmp (data->mimeid, iter->mimeid) != 0) &&
-	      !(data->filename && iter->filename &&
-		strcmp (data->filename, iter->filename) != 0) &&
-	      !(iter->flags & FL_SINGLE))) {
+    else if ((data->mimeid && iter->mimeid && strcmp (data->mimeid, iter->mimeid) == 0)
+             ||
+	     (_FP_stricmp (data->subfname, iter->subfname) == 0
+              && !(iter->thisfile && iter->thisfile->yefilesize != data->yefilesize)
+	      && !(iter->begin && data->data->begin)
+	      && !(iter->end   && data->data->end)
+	      && !(data->mimeid   && iter->mimeid   && strcmp (data->mimeid,   iter->mimeid)   != 0)
+	      && !(data->filename && iter->filename && strcmp (data->filename, iter->filename) != 0)
+	      && !(iter->flags & FL_SINGLE))) {
 
       /*
        * Don't insert a part that is already there.

Modified: trunk/libconvert-uulib-perl/uulib/uuint.h
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconvert-uulib-perl/uulib/uuint.h?rev=41650&op=diff
==============================================================================
--- trunk/libconvert-uulib-perl/uulib/uuint.h (original)
+++ trunk/libconvert-uulib-perl/uulib/uuint.h Tue Aug 11 00:57:12 2009
@@ -142,14 +142,15 @@
   char *origin;		/* Whole 'From:' line */
   char *mimeid;		/* the ID for Mime-encoded files */
   char *mimetype;	/* Content-Type */
-  short mode;		/* Mode of File (from 'begin') */
+  int   mode;		/* Mode of File (from 'begin') */
   int   begin;		/* begin detected */
   int   end;		/* end detected */
   int   flags;		/* associated flags */
-
-  short uudet;		/* valid encoded data. value indicates encoding */
-  short partno;		/* Mime-files have a part number within */
-  short maxpno;		/* ... plus the total number of parts   */
+  long  yefilesize;     /* the yencode file size, or 0 */
+
+  int   uudet;		/* valid encoded data. value indicates encoding */
+  int   partno;		/* Mime-files have a part number within */
+  int   maxpno;		/* ... plus the total number of parts   */
 
   char *sfname;		/* Associated source file */
   long startpos;	/* ftell() position where data starts */
@@ -168,8 +169,9 @@
   char     *subfname;
   char     *mimeid;
   char     *mimetype;
-  short     partno;
+  int       partno;
   fileread *data;
+  long      yefilesize;
   struct _uufile *NEXT;
 } uufile;
 

Modified: trunk/libconvert-uulib-perl/uulib/uunconc.c
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconvert-uulib-perl/uulib/uunconc.c?rev=41650&op=diff
==============================================================================
--- trunk/libconvert-uulib-perl/uulib/uunconc.c (original)
+++ trunk/libconvert-uulib-perl/uulib/uunconc.c Tue Aug 11 00:57:12 2009
@@ -1630,7 +1630,7 @@
     progress.action   = 0;
     progress.partno   = 0;
     progress.numparts = 1;
-    progress.fsize    = (numbytes)?numbytes:-1;
+    progress.fsize    = numbytes ? numbytes : -1;
     progress.foffset  = hb;
     progress.percent  = 0;
     progress.action   = UUACT_COPYING;

Modified: trunk/libconvert-uulib-perl/uulib/uuscan.c
URL: http://svn.debian.org/wsvn/pkg-perl/trunk/libconvert-uulib-perl/uulib/uuscan.c?rev=41650&op=diff
==============================================================================
--- trunk/libconvert-uulib-perl/uulib/uuscan.c (original)
+++ trunk/libconvert-uulib-perl/uulib/uuscan.c Tue Aug 11 00:57:12 2009
@@ -619,7 +619,7 @@
   int encoding=0, dflag=0, ctline=42;
   int dontcare=0, hadnl=0;
   long preheaders=0, oldposition;
-  long yefilesize=0, yepartends=0;
+  long yepartends=0;
   size_t dcc, bhopc;
 
   *errcode = UURET_OK;
@@ -983,10 +983,10 @@
 
       if ((ptr = _FP_strstr (line, " size=")) != NULL) {
 	ptr += 6;
-	yefilesize = atoi (ptr);
+	result->yefilesize = atoi (ptr);
       }
       else {
-	yefilesize = -1;
+	result->yefilesize = -1;
       }
 
       /*
@@ -1031,7 +1031,7 @@
 
     if (strncmp (line, "=yend ", 6) == 0 &&
 	result->uudet == YENC_ENCODED) {
-      if (yepartends == 0 || yepartends >= yefilesize) {
+      if (yepartends == 0 || yepartends >= result->yefilesize) {
 	result->end = 1;
       }
 #if 0




More information about the Pkg-perl-cvs-commits mailing list