server/repository.py
changeset 8889 be91151107f6
parent 8848 08bb2dd18fd2
parent 8881 ad3a1ba9ea74
child 8900 010a59e12d89
--- a/server/repository.py	Wed Apr 10 16:46:18 2013 +0200
+++ b/server/repository.py	Mon Apr 15 13:18:01 2013 +0200
@@ -898,8 +898,12 @@
             self.threaded_task(task)
         else:
             self.info('calling service %s synchronously', regid)
-            service = session.vreg['services'].select(regid, session, **kwargs)
-            return service.call(**kwargs)
+            session.set_cnxset()
+            try:
+                service = session.vreg['services'].select(regid, session, **kwargs)
+                return service.call(**kwargs)
+            finally:
+                session.free_cnxset()
 
     def user_info(self, sessionid, props=None):
         """this method should be used by client to: