File createrepo-0.4.10-fixsymlinks.patch of Package createrepo
--- createrepo/genpkgmetadata.py.20070803 2007-06-07 06:33:34.000000000 -0400
+++ createrepo/genpkgmetadata.py 2007-08-03 15:36:17.000000000 -0400
@@ -83,11 +83,15 @@
def extension_visitor(filelist, dirname, names):
for fn in names:
- if os.path.isdir(fn):
+ if os.path.islink(dirname + '/' + fn):
+ if self.cmds['skip-symlinks']:
+ continue
+ elif os.path.isdir(dirname + '/' + fn):
+ os.path.walk(dirname + '/' + fn, extension_visitor, filelist)
+ continue
+ elif os.path.isdir(dirname + '/' + fn):
continue
- if self.cmds['skip-symlinks'] and os.path.islink(fn):
- continue
- elif fn[-extlen:].lower() == '%s' % (ext):
+ if fn[-extlen:].lower() == '%s' % (ext):
relativepath = dirname.replace(startdir, "", 1)
relativepath = relativepath.lstrip("/")
filelist.append(os.path.join(relativepath,fn))
@@ -325,9 +329,15 @@
def extension_visitor(arg, dirname, names):
for fn in names:
- if os.path.isdir(fn):
+ if os.path.islink(dirname + '/' + fn):
+ if self.cmds['skip-symlinks']:
+ continue
+ elif os.path.isdir(dirname + '/' + fn):
+ os.path.walk(dirname + '/' + fn, extension_visitor, arg)
+ continue
+ elif os.path.isdir(dirname + '/' + fn):
continue
- elif string.lower(fn[-extlen:]) == '%s' % (ext):
+ if string.lower(fn[-extlen:]) == '%s' % (ext):
reldir = os.path.basename(dirname)
if reldir == os.path.basename(directory):
reldir = ""