diff --git a/openerp/cli/server.py b/openerp/cli/server.py index 70602634efc..db0ab0699a1 100644 --- a/openerp/cli/server.py +++ b/openerp/cli/server.py @@ -112,13 +112,13 @@ def export_translation(): config["translate_out"]) fileformat = os.path.splitext(config["translate_out"])[-1][1:].lower() - buf = file(config["translate_out"], "w") - registry = openerp.modules.registry.RegistryManager.new(dbname) - cr = registry.cursor() - openerp.tools.trans_export(config["language"], - config["translate_modules"] or ["all"], buf, fileformat, cr) - cr.close() - buf.close() + + with open(config["translate_out"], "w") as buf: + registry = openerp.modules.registry.RegistryManager.new(dbname) + with openerp.api.Environment.manage(): + with registry.cursor() as cr: + openerp.tools.trans_export(config["language"], + config["translate_modules"] or ["all"], buf, fileformat, cr) _logger.info('translation file written successfully') @@ -128,11 +128,11 @@ def import_translation(): dbname = config['db_name'] registry = openerp.modules.registry.RegistryManager.new(dbname) - cr = registry.cursor() - openerp.tools.trans_load( cr, config["translate_in"], config["language"], - context=context) - cr.commit() - cr.close() + with openerp.api.Environment.manage(): + with registry.cursor() as cr: + openerp.tools.trans_load( + cr, config["translate_in"], config["language"], context=context, + ) def main(args): check_root_user()