add additional clear text error messages for burntask
authorFraxinas <andreas.frisch@multimedia-labs.de>
Fri, 31 Oct 2008 14:08:48 +0000 (15:08 +0100)
committerAndreas Oberritter <obi@saftware.de>
Thu, 6 Nov 2008 00:47:03 +0000 (01:47 +0100)
lib/python/Plugins/Extensions/DVDBurn/Process.py

index 1cc11e2d9fd35e12544e258c28493c2bd2228c63..7a03b7ebd68cdf8c9f54d8ba442f199282f1d6c9 100644 (file)
@@ -251,11 +251,13 @@ class BurnTaskPostcondition(Condition):
                        task.ERROR_WRITE_FAILED: _("Write failed!"),
                        task.ERROR_DVDROM: _("No (supported) DVDROM found!"),
                        task.ERROR_ISOFS: _("Medium is not empty!"),
                        task.ERROR_WRITE_FAILED: _("Write failed!"),
                        task.ERROR_DVDROM: _("No (supported) DVDROM found!"),
                        task.ERROR_ISOFS: _("Medium is not empty!"),
+                       task.ERROR_FILETOOLARGE: _("TS file is too large for ISO9660 level 1!"),
+                       task.ERROR_ISOTOOLARGE: _("ISO file is too large for this filesystem!"),
                        task.ERROR_UNKNOWN: _("An unknown error occured!")
                }[task.error]
 
 class BurnTask(Task):
                        task.ERROR_UNKNOWN: _("An unknown error occured!")
                }[task.error]
 
 class BurnTask(Task):
-       ERROR_NOTWRITEABLE, ERROR_LOAD, ERROR_SIZE, ERROR_WRITE_FAILED, ERROR_DVDROM, ERROR_ISOFS, ERROR_UNKNOWN = range(7)
+       ERROR_NOTWRITEABLE, ERROR_LOAD, ERROR_SIZE, ERROR_WRITE_FAILED, ERROR_DVDROM, ERROR_ISOFS, ERROR_FILETOOLARGE, ERROR_ISOTOOLARGE, ERROR_UNKNOWN = range(9)
        def __init__(self, job, extra_args=[], tool="/bin/growisofs"):
                Task.__init__(self, job, job.name)
                self.weighting = 500
        def __init__(self, job, extra_args=[], tool="/bin/growisofs"):
                Task.__init__(self, job, job.name)
                self.weighting = 500
@@ -303,6 +305,10 @@ class BurnTask(Task):
                        else:
                                self.error = self.ERROR_UNKNOWN
                                print "BurnTask: unknown error %s" % line
                        else:
                                self.error = self.ERROR_UNKNOWN
                                print "BurnTask: unknown error %s" % line
+               elif line.find("-allow-limited-size was not specified. There is no way do represent this file size. Aborting.") != -1:
+                       self.error = self.ERROR_FILETOOLARGE
+               elif line.startswith("genisoimage: File too large."):
+                       self.error = self.ERROR_ISOTOOLARGE
 
 class RemoveDVDFolder(Task):
        def __init__(self, job):
 
 class RemoveDVDFolder(Task):
        def __init__(self, job):