add getSize convenience function to obtain file or directory size (not tested with...
[enigma2.git] / lib / python / Tools / Directories.py
index 2380ed96993ccb91c63635e6f465892be6726781..aaa2a9da34a0ea29131a16e3071fe34ae6c8cd6b 100755 (executable)
@@ -176,8 +176,10 @@ def getRecordingFilename(basename, dirname = None):
        if dirname is not None:
                filename = ''.join((dirname, filename))
 
        if dirname is not None:
                filename = ''.join((dirname, filename))
 
-       if len(filename) > 240:
-               filename = filename[:240]
+       while len(filename) > 240:
+               filename = filename.decode('UTF-8')
+               filename = filename[:-1]
+               filename = filename.encode('UTF-8')
 
        i = 0
        while True:
 
        i = 0
        while True:
@@ -260,3 +262,14 @@ def copytree(src, dst, symlinks=False):
                        utime(dst, (st.st_atime, st.st_mtime))
        except:
                print "copy stats for", src, "failed!"
                        utime(dst, (st.st_atime, st.st_mtime))
        except:
                print "copy stats for", src, "failed!"
+
+def getSize(path, pattern=".*"):
+       path_size = 0
+       if os_path.isdir(path):
+               files = crawlDirectory(path, pattern)
+               for file in files:
+                       filepath = os_path.join(file[0], file[1])
+                       path_size += os_path.getsize(filepath)
+       elif os_path.isfile(path):
+               path_size = os_path.getsize(path)
+       return path_size