diff -r b09750fd2a06 -r 884e62c0b9cb Project/Project.py --- a/Project/Project.py Mon Jan 11 15:23:45 2010 +0000 +++ b/Project/Project.py Mon Jan 11 17:42:24 2010 +0000 @@ -556,7 +556,9 @@ self.trUtf8("""Compressed project files not supported.""" """ The compression library is missing.""")) return False - f = gzip.open(fn, "r") + g = gzip.open(fn, "rb") + f = io.StringIO(g.read().decode("utf-8")) + g.close() else: f = open(fn, "r", encoding = "utf-8") line = f.readline() @@ -660,7 +662,9 @@ self.trUtf8("""Compressed project files not supported.""" """ The compression library is missing.""")) return False - f = gzip.open(fn, "r") + g = gzip.open(fn, "rb") + f = io.StringIO(g.read().decode("utf-8")) + g.close() else: f = open(fn, "r", encoding = "utf-8") try: @@ -742,12 +746,16 @@ self.trUtf8("""Compressed project files not supported.""" """ The compression library is missing.""")) return False - f = gzip.open(fn, "w") + f = io.StringIO() else: f = open(fn, "w", encoding = "utf-8") ProjectWriter(f, os.path.splitext(os.path.basename(fn))[0]).writeXML() + if fn.lower().endswith("e4pz"): + g = gzip.open(fn, "wb") + g.write(f.getvalue().encode("utf-8")) + g.close() f.close() except IOError: @@ -855,7 +863,9 @@ self.trUtf8("""Compressed project session files not""" """ supported. The compression library is missing.""")) return - f = gzip.open(fn, "r") + g = gzip.open(fn, "rb") + f = io.StringIO(g.read().decode("utf-8")) + g.close() else: fn = os.path.join(self.getProjectManagementDir(), '%s%s.e4s' % (fn, indicator)) @@ -928,7 +938,9 @@ self.trUtf8("<p>The project session <b>{0}</b> could not" " be read.</p>").format(fn)) return - f = gzip.open(fn, "r") + g = gzip.open(fn, "rb") + f = io.StringIO(g.read().decode("utf-8")) + g.close() else: f = open(fn, "r", encoding = "utf-8") try: @@ -995,7 +1007,7 @@ self.trUtf8("""Compressed project session files not""" """ supported. The compression library is missing.""")) return - f = gzip.open(fn, "w") + f = io.StringIO() else: fn = os.path.join(self.getProjectManagementDir(), '%s%s.e4s' % (fn, indicator)) @@ -1003,6 +1015,10 @@ SessionWriter(f, os.path.splitext(os.path.basename(fn))[0]).writeXML() + if fn.lower().endswith("e4sz"): + g = gzip.open(fn, "wb") + g.write(f.getvalue().encode("utf-8")) + g.close() f.close() except IOError: @@ -1061,7 +1077,9 @@ self.trUtf8("""Compressed tasks files not supported.""" """ The compression library is missing.""")) return - f = gzip.open(fn, "r") + g = gzip.open(fn, "rb") + f = io.StringIO(g.read().decode("utf-8")) + g.close() else: fn = os.path.join(self.getProjectManagementDir(), '%s.e4t' % fn) if not os.path.exists(fn): @@ -1118,7 +1136,9 @@ self.trUtf8("""Compressed tasks files not supported.""" """ The compression library is missing.""")) return - f = gzip.open(fn, "r") + g = gzip.open(fn, "rb") + f = io.StringIO(g.read().decode("utf-8")) + g.close() else: f = open(fn, "r", encoding = "utf-8") try: @@ -1161,13 +1181,17 @@ self.trUtf8("""Compressed tasks files not supported.""" """ The compression library is missing.""")) return - f = gzip.open(fn, "w") + f = io.StringIO() else: fn = os.path.join(self.getProjectManagementDir(), '%s.e4t' % fn) f = open(fn, "w", encoding = "utf-8") TasksWriter(f, True, os.path.splitext(os.path.basename(fn))[0]).writeXML() + if fn.lower().endswith("e4tz"): + g = gzip.open(fn, "wb") + g.write(f.getvalue().encode("utf-8")) + g.close() f.close() except IOError: @@ -1205,7 +1229,9 @@ """ supported. The compression library is""" """ missing.""")) return - f = gzip.open(fn, "r") + g = gzip.open(fn, "rb") + f = io.StringIO(g.read().decode("utf-8")) + g.close() else: fn = os.path.join(self.getProjectManagementDir(), '%s.e4d' % fn) f = open(fn, "r", encoding = "utf-8") @@ -1265,7 +1291,9 @@ self.trUtf8("<p>The project debugger properties file" " <b>{0}</b> could not be read.</p>").format(fn)) return - f = gzip.open(fn, "r") + g = gzip.open(fn, "rb") + f = io.StringIO(g.read().decode("utf-8")) + g.close() else: f = open(fn, "r", encoding = "utf-8") try: @@ -1324,7 +1352,7 @@ """ not supported. The compression library is""" """ missing.""")) return - f = gzip.open(fn, "w") + f = io.StringIO() else: fn = os.path.join(self.getProjectManagementDir(), '%s.e4d' % fn) f = open(fn, "w", encoding = "utf-8") @@ -1332,6 +1360,10 @@ DebuggerPropertiesWriter(f, os.path.splitext(os.path.basename(fn))[0])\ .writeXML() + if fn.lower().endswith("e4dz"): + g = gzip.open(fn, "wb") + g.write(f.getvalue().encode("utf-8")) + g.close() f.close() except IOError: