From d3ae0b008347718cec73df4523da0b674e2ba830 Mon Sep 17 00:00:00 2001 From: "P. Christeas" Date: Tue, 13 Jul 2010 23:53:36 +0300 Subject: [PATCH] Document FTP: after nodefd.open_data(), cursor must commit Because open_data, at the create case, updates the store_fname. bzr revid: p_christ@hol.gr-20100713205336-jodj31v722x81grb --- addons/document_ftp/ftpserver/abstracted_fs.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/addons/document_ftp/ftpserver/abstracted_fs.py b/addons/document_ftp/ftpserver/abstracted_fs.py index ba135b23a01..5e7c8c1b31c 100644 --- a/addons/document_ftp/ftpserver/abstracted_fs.py +++ b/addons/document_ftp/ftpserver/abstracted_fs.py @@ -150,6 +150,7 @@ class abstracted_fs(object): raise OSError(1, 'Operation not permited.') ret = child.open_data(cr, mode) + cr.commit() return ret except EnvironmentError: raise @@ -159,7 +160,9 @@ class abstracted_fs(object): try: child = node.create_child(cr, objname, data=None) - return child.open_data(cr, mode) + ret = child.open_data(cr, mode) + cr.commit() + return ret except Exception,e: self._log.exception('Cannot create item %s at node %s', objname, repr(node)) raise OSError(1, 'Operation not permited.') @@ -171,6 +174,7 @@ class abstracted_fs(object): cr, node, rem = datacr try: res = node.open_data(cr, mode) + cr.commit() except TypeError, e: raise IOError(errno.EINVAL, "No data") return res