The MinGW.org Installation Manager Tool
Revision | 0a456b3f28c8c1d5223cac0188e2eb4b199c53b8 (tree) |
---|---|
Time | 2013-09-19 23:37:17 |
Author | Keith Marshall <keithmarshall@user...> |
Commiter | Keith Marshall |
Handle meta-package removal correctly; (cf. MinGW-Bug #2051)
@@ -1,3 +1,11 @@ | ||
1 | +2013-09-19 Keith Marshall <keithmarshall@users.sourceforge.net> | |
2 | + | |
3 | + Handle meta-package removal correctly; (cf. MinGW-Bug #2051) | |
4 | + | |
5 | + * src/pkgunst.cpp (pkgRemove) [archive == none]: Ensure the pending | |
6 | + action flag is cleared; previously this was done during manifest clean | |
7 | + up, and since a meta-package has no manifest, it was overlooked. | |
8 | + | |
1 | 9 | 2013-09-10 Keith Marshall <keithmarshall@users.sourceforge.net> |
2 | 10 | |
3 | 11 | mingw-get-0.6.1-mingw32-beta-20130910-1 released. |
@@ -4,7 +4,7 @@ | ||
4 | 4 | * $Id$ |
5 | 5 | * |
6 | 6 | * Written by Keith Marshall <keithmarshall@users.sourceforge.net> |
7 | - * Copyright (C) 2011, 2012, MinGW.org Project | |
7 | + * Copyright (C) 2011-2013, MinGW.org Project | |
8 | 8 | * |
9 | 9 | * |
10 | 10 | * Implementation of the primary package removal methods. |
@@ -330,9 +330,14 @@ EXTERN_C void pkgRemove( pkgActionItem *current ) | ||
330 | 330 | * have no associated archive file, no installed footprint on disk, |
331 | 331 | * and no associated content manifest to process; thus... |
332 | 332 | */ |
333 | - if( ! match_if_explicit( pkg->ArchiveName(), value_none ) ) | |
333 | + if( match_if_explicit( pkg->ArchiveName(), value_none ) ) | |
334 | 334 | { |
335 | - /* ...only in the case of packages identified as "real", (which | |
335 | + /* ...we may simply assert the removal action as successful... | |
336 | + */ | |
337 | + current->Assert( 0UL, ~ACTION_REMOVE_FAILED ); | |
338 | + } | |
339 | + else | |
340 | + { /* ...but, in the case of packages identified as "real", (which | |
336 | 341 | * we expect to be in a substantial majority), do we need to refer |
337 | 342 | * to any installation manifest, to identify actual disk files to |
338 | 343 | * be removed. |