diff options
author | Michael Schroeder <mls@suse.de> | 2014-06-23 16:44:48 +0200 |
---|---|---|
committer | Michael Schroeder <mls@suse.de> | 2014-06-23 16:45:54 +0200 |
commit | a52836206e91b14de83ffa1f9cce7194066f314f (patch) | |
tree | 3fe66dd7a4828b494f1ee2c486fc586ab66a5df4 /src | |
parent | 21bd8cb580e2a02ba60d9c7fea8b398b284c0b0d (diff) | |
download | libsolv-a52836206e91b14de83ffa1f9cce7194066f314f.tar.gz libsolv-a52836206e91b14de83ffa1f9cce7194066f314f.tar.bz2 libsolv-a52836206e91b14de83ffa1f9cce7194066f314f.zip |
support -X option in rpmmd2solv, make add_autopattern available in bindings
Diffstat (limited to 'src')
-rw-r--r-- | src/solvable.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/src/solvable.c b/src/solvable.c index b3e73a6..815e9f0 100644 --- a/src/solvable.c +++ b/src/solvable.c @@ -746,10 +746,6 @@ pool_create_state_maps(Pool *pool, Queue *installed, Map *installedmap, Map *con * both solvables need to come from the same pool */ -#warning HOTFIX [Bug 881493] New: zypper dup does always update sles-release -inline int isProduct(const char *name) -{ return name && strncmp(name, "product:", 8) == 0; } - int solvable_identical(Solvable *s1, Solvable *s2) { @@ -763,12 +759,14 @@ solvable_identical(Solvable *s1, Solvable *s2) if (s1->evr != s2->evr) return 0; - if (isProduct(pool_id2str(s1->repo->pool, s1->name))) // HOTFIX [Bug 881493] end check for products here - return 1; - - /* map missing vendor to empty string */ + /* check vendor, map missing vendor to empty string */ if ((s1->vendor ? s1->vendor : 1) != (s2->vendor ? s2->vendor : 1)) - return 0; + { + /* workaround for bug 881493 */ + if (s1->repo && !strncmp(pool_id2str(s1->repo->pool, s1->name), "product:", 8)) + return 1; + return 0; + } /* looking good, try some fancier stuff */ /* might also look up the package checksum here */ @@ -781,6 +779,9 @@ solvable_identical(Solvable *s1, Solvable *s2) } else { + /* workaround for bug 881493 */ + if (s1->repo && !strncmp(pool_id2str(s1->repo->pool, s1->name), "product:", 8)) + return 1; /* look at requires in a last attempt to find recompiled packages */ rq1 = rq2 = 0; if (s1->requires) |