X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=lib%2Fscripts%2FTeXFiles.py;h=a5787eaacba4ce01fa28adb16f1bc48af073bcb6;hb=975f304185eca53d62de8b36e6fc5f95b2da4fd9;hp=aac29bc9d0e20c2c647586d27e00ef3608d933a8;hpb=db494452dccf2125f3a708d765a6e6608d0060b7;p=features.git diff --git a/lib/scripts/TeXFiles.py b/lib/scripts/TeXFiles.py index aac29bc9d0..a5787eaacb 100755 --- a/lib/scripts/TeXFiles.py +++ b/lib/scripts/TeXFiles.py @@ -111,12 +111,23 @@ for type in types: file_ext = '.' + type out = open(outfile, 'w') + visited = set() for dir in dirs.split(path_sep): # for each valid directory if not os.path.isdir(dir): continue # walk down the file hierarchy - for root,path,files in os.walk(dir): + for root,dirs,files in os.walk(dir, followlinks=True): + # prevent inifinite recursion + recurse = [] + for dir in dirs: + dirname = os.path.join(root, dir) + dirname = os.path.realpath(dirname) + dirname = os.path.normcase(dirname) + if dirname not in visited: + visited.add(dirname) + recurse.append(dir) + dirs[:] = recurse # check file type for file in files: if len(file) > 4 and file[-4:] == file_ext: