refuse to operate on /, do not iterate into list of mountpoints, do not endlessly...
authorFelix Domke <tmbinc@elitedvb.net>
Mon, 9 Feb 2009 14:10:53 +0000 (15:10 +0100)
committerFelix Domke <tmbinc@elitedvb.net>
Mon, 9 Feb 2009 14:10:53 +0000 (15:10 +0100)
lib/python/Plugins/Extensions/MediaPlayer/plugin.py

index 485dfe3..3e02384 100644 (file)
@@ -659,12 +659,16 @@ class MediaPlayer(Screen, InfoBarBase, InfoBarSeek, InfoBarAudioSelection, InfoB
 
        def copyDirectory(self, directory, recursive = True):
                print "copyDirectory", directory
-               filelist = FileList(directory, useServiceRef = True, isTop = True)
+               if directory == '/':
+                       print "refusing to operate on /"
+                       return
+               filelist = FileList(directory, useServiceRef = True, showMountpoints = False, isTop = True)
 
                for x in filelist.getFileList():
                        if x[0][1] == True: #isDir
                                if recursive:
-                                       self.copyDirectory(x[0][0])
+                                       if x[0][0] != directory:
+                                               self.copyDirectory(x[0][0])
                        elif filelist.getServiceRef() and filelist.getServiceRef().type == 4097:
                                self.playlist.addFile(x[0][0])
                self.playlist.updateList()