diff options
author | Jindrich Novy <jnovy@redhat.com> | 2008-04-28 14:08:35 +0200 |
---|---|---|
committer | Jindrich Novy <jnovy@redhat.com> | 2008-04-28 14:09:29 +0200 |
commit | 18bf8b8b8e246f2612ec16f56defbdbe21a45404 (patch) | |
tree | 397b60bbc8d8620da9c7f71f4d1d73c88102cb91 /rpmdb | |
parent | 98259f8edbe3997f4153cecb4ce681bb64ef71d7 (diff) | |
download | rpm-18bf8b8b8e246f2612ec16f56defbdbe21a45404.tar.gz rpm-18bf8b8b8e246f2612ec16f56defbdbe21a45404.tar.bz2 rpm-18bf8b8b8e246f2612ec16f56defbdbe21a45404.zip |
Oops, simplified it a little bit much, fixing
Diffstat (limited to 'rpmdb')
-rw-r--r-- | rpmdb/rpmdb.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/rpmdb/rpmdb.c b/rpmdb/rpmdb.c index ff4a8680d..3bdb503cc 100644 --- a/rpmdb/rpmdb.c +++ b/rpmdb/rpmdb.c @@ -1063,7 +1063,7 @@ static int rpmdbFindByFile(rpmdb db, const char * filespec, { HGE_t hge = (HGE_t)headerGetEntryMinMemory; HFD_t hfd = headerFreeData; - const char * dirName; + char * dirName; const char * baseName; rpmTagType bnt, dnt; fingerPrintCache fpc; @@ -1080,11 +1080,12 @@ static int rpmdbFindByFile(rpmdb db, const char * filespec, if (filespec == NULL) return -2; if ((baseName = strrchr(filespec, '/')) != NULL) { - dirName = strncpy(xmalloc(len + 1), filespec, baseName - filespec + 1); + size_t len = baseName - filespec + 1; + dirName = strncpy(xmalloc(len + 1), filespec, len); dirName[len] = '\0'; baseName++; } else { - dirName = ""; + dirName = xstrdup(""); baseName = filespec; } if (baseName == NULL) |