diff options
author | Michael Schroeder <mls@suse.de> | 2009-07-02 15:09:42 +0200 |
---|---|---|
committer | Michael Schroeder <mls@suse.de> | 2009-07-02 15:09:42 +0200 |
commit | a0842d2da68fe64f0a55babab033f3c9d65d619d (patch) | |
tree | 2e5c5b797ec80ae5d9978e6d5e3ed281bc5bbd19 /src/repodata.c | |
parent | 4d0e898c6859ac9b0b7313a297c887fb7aea5071 (diff) | |
download | libsolv-a0842d2da68fe64f0a55babab033f3c9d65d619d.tar.gz libsolv-a0842d2da68fe64f0a55babab033f3c9d65d619d.tar.bz2 libsolv-a0842d2da68fe64f0a55babab033f3c9d65d619d.zip |
- initialize flags, change stripkind code
Diffstat (limited to 'src/repodata.c')
-rw-r--r-- | src/repodata.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/repodata.c b/src/repodata.c index 8672bba..89cd1c2 100644 --- a/src/repodata.c +++ b/src/repodata.c @@ -636,8 +636,10 @@ repodata_stringify(Pool *pool, Repodata *data, Repokey *key, KeyValue *kv, int f kv->str = id2str(pool, kv->id); if ((flags & SEARCH_SKIP_KIND) != 0 && key->storage == KEY_STORAGE_SOLVABLE) { - const char *s = strchr(kv->str, ':'); - if (s) + const char *s; + for (s = kv->str; *s >= 'a' && *s <= 'z'; s++) + ; + if (*s == ':' && s > kv->str) kv->str = s + 1; } return 1; @@ -968,6 +970,7 @@ dataiterator_init(Dataiterator *di, Pool *pool, Repo *repo, Id p, Id keyname, co { memset(di, 0, sizeof(*di)); di->pool = pool; + di->flags = flags & ~SEARCH_THISSOLVID; if (!pool || (repo && repo->pool != pool)) { di->state = di_bye; |