From 097254fe00a10ba81669d5d2212faa1db25a8db9 Mon Sep 17 00:00:00 2001 From: Christophe Simonis Date: Wed, 5 Dec 2012 16:52:09 +0100 Subject: [PATCH] [FIX] correct reexecute. works on windows bzr revid: chs@openerp.com-20121205155209-aqra9rtvq11uq37d --- openerp/service/__init__.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/openerp/service/__init__.py b/openerp/service/__init__.py index 5ae9efb2716..849df170eaa 100644 --- a/openerp/service/__init__.py +++ b/openerp/service/__init__.py @@ -133,10 +133,13 @@ def _reexec(): """reexecute openerp-server process with (nearly) the same arguments""" if openerp.tools.osutil.is_running_as_nt_service(): os.abort() + exe = os.path.basename(sys.executable) strip_args = ['-d', '-u'] a = sys.argv[:] args = [x for i, x in enumerate(a) if x not in strip_args and a[max(i - 1, 0)] not in strip_args] - os.execv(sys.executable, [sys.executable] + args) + if not args or args[0] != exe: + args.insert(0, exe) + os.execv(sys.executable, args) def restart_server(): if openerp.multi_process: