- fix segfault in symlink fingerprinting (#505777)

This commit is contained in:
Panu Matilainen 2009-06-18 10:21:41 +00:00
parent e91c670bd6
commit 154e7d9410
2 changed files with 29 additions and 0 deletions

View File

@ -0,0 +1,26 @@
commit 1b9e6d7f48a68fd677c70d04c9a6bb4274cf7b9f
Author: Florian Festi <ffesti@redhat.com>
Date: Tue Jun 16 17:37:40 2009 +0200
Fix Segfault for to be installed symlinks pointing to existing locations
fixes rhbz#505777
diff --git a/lib/fprint.c b/lib/fprint.c
index d32eec1..e57ba20 100644
--- a/lib/fprint.c
+++ b/lib/fprint.c
@@ -311,10 +311,10 @@ void fpLookupSubdir(rpmFpHash symlinks, rpmFpHash fphash, fingerPrintCache fpc,
/* setup current_fp for the new path */
found = 1;
current_fp = *fp;
- if (!fp->subDir) {
- lensubDir = 0;
- currentsubdir = endsubdir = NULL;
- break;
+ if (fp->subDir == NULL) {
+ /* directory exists - no need to look for symlinks */
+ rpmFpHashAddEntry(fphash, fp, ffi);
+ return;
}
lensubDir = strlen(fp->subDir);
currentsubdir = xstrdup(fp->subDir);

View File

@ -45,6 +45,7 @@ Patch202: rpm-4.7.0-python-altnevr.patch
Patch203: rpm-4.7.0-hardlink-sizes.patch
Patch204: rpm-4.7.0-dwarf3.patch
Patch205: rpm-4.7.0-osgideps.patch
Patch206: rpm-4.7.0-fp-symlink.patch
# These are not yet upstream
Patch300: rpm-4.7.0-extra-provides.patch
@ -203,6 +204,7 @@ packages on a system.
%patch203 -p1 -b .hardlink-sizes
%patch204 -p1 -b .dwarf3
%patch205 -p1 -b .osgideps
%patch206 -p1 -b .fp-symlink
%patch300 -p1 -b .extra-prov
%patch301 -p1 -b .niagara
@ -419,6 +421,7 @@ exit 0
%changelog
* Thu Jun 18 2009 Panu Matilainen <pmatilai@redhat.com> - 4.7.0-8
- updated OSGi dependency extractor (#506471)
- fix segfault in symlink fingerprinting (#505777)
* Tue Jun 16 2009 Panu Matilainen <pmatilai@redhat.com> - 4.7.0-7
- add dwarf-3 support to debugedit (#505774)