From: Denis Vlasenko Date: Sat, 30 Sep 2006 21:05:25 +0000 (-0000) Subject: dpkg: fix use-after-free (bug 939) X-Git-Tag: 1_4_0~567 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=aecabffb8bf47ee8bf02c1fa1011ca97fc0b97d4;p=oweals%2Fbusybox.git dpkg: fix use-after-free (bug 939) --- diff --git a/archival/dpkg.c b/archival/dpkg.c index b26a11631..b55822460 100644 --- a/archival/dpkg.c +++ b/archival/dpkg.c @@ -304,16 +304,13 @@ static int version_compare(const unsigned int ver1, const unsigned int ver2) deb_ver2++; } result = version_compare_part(upstream_ver1, upstream_ver2); + if (!result) + /* Compare debian versions */ + result = version_compare_part(deb_ver1, deb_ver2); free(upstream_ver1); free(upstream_ver2); - - if (result != 0) { - return result; - } - - /* Compare debian versions */ - return version_compare_part(deb_ver1, deb_ver2); + return result; } static int test_version(const unsigned int version1, const unsigned int version2, const unsigned int operator)