From a25ce9411b7d2d7ff746fb35a5b7f7aa0818be4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Sat, 7 Jun 2008 13:08:06 +0200 Subject: [PATCH] Use cStringIO everywhere when available for issue81 thanks htgoebel --- trytond/ir/translation.py | 7 +++++-- trytond/pysocket.py | 7 +++++-- trytond/report/report.py | 5 ++++- trytond/tools/convert.py | 6 +++++- trytond/tools/misc.py | 5 ++++- 5 files changed, 23 insertions(+), 7 deletions(-) diff --git a/trytond/ir/translation.py b/trytond/ir/translation.py index d769533e39..4e499a2e1b 100644 --- a/trytond/ir/translation.py +++ b/trytond/ir/translation.py @@ -1,6 +1,9 @@ "Translation" import base64 -from StringIO import StringIO +try: + import cStringIO as StringIO +except ImportError: + import StringIO import csv from trytond.osv import fields, OSV, Cacheable from trytond.wizard import Wizard, WizardOSV @@ -397,7 +400,7 @@ class Translation(OSV, Cacheable): db_id2fs_id.setdefault(model_data.model, {}) db_id2fs_id[model_data.model][model_data.db_id] = model_data.fs_id - buf = StringIO() + buf = StringIO.StringIO() writer = csv.writer(buf, 'TRYTON') writer.writerow(HEADER) diff --git a/trytond/pysocket.py b/trytond/pysocket.py index fb36b27326..f122938992 100644 --- a/trytond/pysocket.py +++ b/trytond/pysocket.py @@ -1,6 +1,9 @@ import socket import cPickle -import cStringIO +try: + import cStringIO as StringIO +except ImportError: + import StringIO DNS_CACHE = {} @@ -161,7 +164,7 @@ class PySocket: if chunk == '': raise RuntimeError, "socket connection broken" msg = msg + chunk - msgio = cStringIO.StringIO(msg) + msgio = StringIO.StringIO(msg) unpickler = cPickle.Unpickler(msgio) unpickler.find_global = checkfunction res = unpickler.load() diff --git a/trytond/report/report.py b/trytond/report/report.py index 99f7a59b67..9307cd3efe 100644 --- a/trytond/report/report.py +++ b/trytond/report/report.py @@ -7,7 +7,10 @@ from xml import dom from trytond.osv import ExceptORM, ExceptOSV, OSV import sys import base64 -import StringIO +try: + import cStringIO as StringIO +except ImportError: + import StringIO import zipfile import locale import time diff --git a/trytond/tools/convert.py b/trytond/tools/convert.py index 228f5fed67..3ef006e247 100644 --- a/trytond/tools/convert.py +++ b/trytond/tools/convert.py @@ -1,6 +1,10 @@ "Convert" import re -import StringIO, xml.dom.minidom +try: + import cStringIO as StringIO +except ImportError: + import StringIO +import xml.dom.minidom from trytond import pooler from trytond.osv.fields import Integer import csv diff --git a/trytond/tools/misc.py b/trytond/tools/misc.py index 11fa9bdc34..1be957f7cf 100644 --- a/trytond/tools/misc.py +++ b/trytond/tools/misc.py @@ -9,6 +9,10 @@ import socket import zipfile from trytond import pooler from threading import Semaphore +try: + import cStringIO as StringIO +except ImportError: + import StringIO if sys.version_info[:2] < (2, 4): from threadinglocal import local @@ -89,7 +93,6 @@ def file_open(name, mode="r", subdir='modules'): else: zipname = tail if zipfile.is_zipfile(head+'.zip'): - import StringIO zfile = zipfile.ZipFile(head+'.zip') try: return StringIO.StringIO(zfile.read(os.path.join(