I've prepared repepro 3.5.2-2 with some fixes from 3.6.0 (which is in
experimental, so this could go via unstable).

The debdiff is as follows:

diff -u reprepro-3.5.2/debian/changelog reprepro-3.5.2/debian/changelog
--- reprepro-3.5.2/debian/changelog
+++ reprepro-3.5.2/debian/changelog
@@ -1,3 +1,12 @@
+reprepro (3.5.2-2) unstable; urgency=low
+
+  * backport some bugfixes of 3.6.0 to 3.5.2:
+  - no longer double-free with --export=never
+  - no longer trigger assert() in wrong argument of list arguments
+  - no longer trigger assert() in restorefiler
+
+ -- Bernhard R. Link <[EMAIL PROTECTED]>  Wed, 06 Aug 2008 17:10:04 +0200
+
 reprepro (3.5.2-1) unstable; urgency=medium
 
   * new bugfix release
only in patch2:
unchanged:
--- reprepro-3.5.2.orig/distribution.c
+++ reprepro-3.5.2/distribution.c
@@ -792,7 +792,7 @@
        if( when == EXPORT_NEVER ) {
                if( verbose > 10 )
                        fprintf(stderr, "Not exporting anything as 
--export=never specified\n");
-               return distribution_freelist(distributions);
+               return RET_NOTHING;
        }
 
        for( d=distributions; d != NULL; d = d->next ) {
only in patch2:
unchanged:
--- reprepro-3.5.2.orig/main.c
+++ reprepro-3.5.2/main.c
@@ -1330,7 +1330,7 @@
        struct distribution *destination;
        retvalue result, r;
 
-       assert( argc == 3 );
+       assert( argc == 4 );
 
        result = distribution_get(alldistributions, argv[1], true, 
&destination);
        assert( result != RET_NOTHING );
@@ -2417,7 +2417,7 @@
        {"removesrc",           A_D(removesrc),
                2, 3, "removesrc <codename> <source-package-names> 
[<source-version>]"},
        {"list",                A_ROBact(list),
-               2, -1, "[-C <component>] [-A <architecture>] [-T <type>] list 
<codename> <package-name>"},
+               2, 2, "[-C <component>] [-A <architecture>] [-T <type>] list 
<codename> <package-name>"},
        {"listfilter",          A_ROBact(listfilter),
                2, 2, "[-C <component>] [-A <architecture>] [-T <type>] 
listfilter <codename> <term to describe which packages to list>"},
        {"removefilter",        A_Dact(removefilter),

Is there a chance to get a freeze exception for that?
(Note that assert (and glibc's variant in memory handling) cause
reprepro not to touch a repository again until manually repaired, so
this is not only a cosmetic problem).

Hochachtungsvoll,
        Bernhard R. Link
-- 
"Never contain programs so few bugs, as when no debugging tools are available!"
        Niklaus Wirth


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to