subversion-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bre...@apache.org
Subject svn commit: r1565076 - in /subversion/branches/1.8.x: ./ STATUS subversion/libsvn_repos/commit.c
Date Thu, 06 Feb 2014 05:21:58 GMT
Author: breser
Date: Thu Feb  6 05:21:58 2014
New Revision: 1565076

URL: http://svn.apache.org/r1565076
Log:
Merge r1555499 from trunk:

 * r1555499
   Release internal FS objects when closing a commit editor.
   Justification:
     close_edit() and abort_edit() are supposed to do a complete internal
     cleanup - albeit the API docs are slightly fuzzy about that.
   Votes:
     +1: stefan2, rhuijben, breser

Modified:
    subversion/branches/1.8.x/   (props changed)
    subversion/branches/1.8.x/STATUS
    subversion/branches/1.8.x/subversion/libsvn_repos/commit.c

Propchange: subversion/branches/1.8.x/
------------------------------------------------------------------------------
  Merged /subversion/trunk:r1555499

Modified: subversion/branches/1.8.x/STATUS
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x/STATUS?rev=1565076&r1=1565075&r2=1565076&view=diff
==============================================================================
--- subversion/branches/1.8.x/STATUS (original)
+++ subversion/branches/1.8.x/STATUS Thu Feb  6 05:21:58 2014
@@ -206,14 +206,6 @@ Veto-blocked changes:
 Approved changes:
 =================
 
- * r1555499
-   Release internal FS objects when closing a commit editor.
-   Justification:
-     close_edit() and abort_edit() are supposed to do a complete internal
-     cleanup - albeit the API docs are slightly fuzzy about that.
-   Votes:
-     +1: stefan2, rhuijben, breser
-
  * r1554978
    In FSFS, svn_fs_get_file_delta_stream shall return strictly the delta requested.
    Justification:

Modified: subversion/branches/1.8.x/subversion/libsvn_repos/commit.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.8.x/subversion/libsvn_repos/commit.c?rev=1565076&r1=1565075&r2=1565076&view=diff
==============================================================================
--- subversion/branches/1.8.x/subversion/libsvn_repos/commit.c (original)
+++ subversion/branches/1.8.x/subversion/libsvn_repos/commit.c Thu Feb  6 05:21:58 2014
@@ -761,6 +761,13 @@ close_edit(void *edit_baton,
 
   if (SVN_IS_VALID_REVNUM(new_revision))
     {
+      /* The actual commit succeeded, i.e. the transaction does no longer
+         exist and we can't use txn_root for conflict resolution etc.
+
+         Since close_edit is supposed to release resources, do it now. */
+      if (eb->txn_root)
+        svn_fs_close_root(eb->txn_root);
+
       if (err)
         {
           /* If the error was in post-commit, then the commit itself
@@ -821,6 +828,10 @@ abort_edit(void *edit_baton,
 
   eb->txn_aborted = TRUE;
 
+  /* Since abort_edit is supposed to release resources, do it now. */
+  if (eb->txn_root)
+    svn_fs_close_root(eb->txn_root);
+
   return svn_error_trace(svn_fs_abort_txn(eb->txn, pool));
 }
 



Mime
View raw message