From 02cec31b7b4be93b6be90477e4a43cbc12846f88 Mon Sep 17 00:00:00 2001 From: Mike Hiretsky Date: Fri, 4 Feb 2011 15:04:38 +0300 Subject: [PATCH] Optimize listDirectory. --- pym/cl_utils.py | 19 +++---------------- 1 file changed, 3 insertions(+), 16 deletions(-) diff --git a/pym/cl_utils.py b/pym/cl_utils.py index 0593310..b2ce3ce 100644 --- a/pym/cl_utils.py +++ b/pym/cl_utils.py @@ -767,25 +767,12 @@ def getFilesCount(directory): os.walk(directory)),[])) return 0 -def listDirectory(directory,findCycle=None): +def listDirectory(directory): """Get files from directory, if it exists""" try: - if os.path.exists(directory) and \ - os.access(directory,os.R_OK) and \ - stat.S_ISDIR(os.lstat(directory)[stat.ST_MODE]): - return os.listdir(directory) - elif stat.S_ISLNK(os.lstat(directory)[stat.ST_MODE]): - realfile = os.path.join(os.path.dirname(directory), - os.readlink(directory)) - if not findCycle: - findCycle = [directory] - else: - if realfile in findCycle: - return [] - findCycle.append(directory) - return listDirectory(realfile,findCycle) + return os.listdir(directory) except OSError: - pass + pass return [] def detectDeviceForPartition(dev):