Return-Path: X-Original-To: apmail-subversion-commits-archive@minotaur.apache.org Delivered-To: apmail-subversion-commits-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id B1C549E80 for ; Tue, 7 Feb 2012 20:45:27 +0000 (UTC) Received: (qmail 51212 invoked by uid 500); 7 Feb 2012 20:45:27 -0000 Delivered-To: apmail-subversion-commits-archive@subversion.apache.org Received: (qmail 51153 invoked by uid 500); 7 Feb 2012 20:45:27 -0000 Mailing-List: contact commits-help@subversion.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@subversion.apache.org Delivered-To: mailing list commits@subversion.apache.org Received: (qmail 51145 invoked by uid 99); 7 Feb 2012 20:45:26 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 07 Feb 2012 20:45:26 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 07 Feb 2012 20:45:24 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id B9D502388865 for ; Tue, 7 Feb 2012 20:45:03 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1241608 - /subversion/trunk/subversion/libsvn_delta/compat.c Date: Tue, 07 Feb 2012 20:45:03 -0000 To: commits@subversion.apache.org From: hwright@apache.org X-Mailer: svnmailer-1.0.8-patched Message-Id: <20120207204503.B9D502388865@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: hwright Date: Tue Feb 7 20:45:03 2012 New Revision: 1241608 URL: http://svn.apache.org/viewvc?rev=1241608&view=rev Log: Ev2 shims: Don't attempt to drive an editor multiple times. Current number of Ev2 test failures: 9 * subversion/libsvn_delta/compat.c (editor_baton): New driven member. (complete_cb): Mark the editor driven. (abort_db): Don't drive the editor a second time if it's already been tried. Modified: subversion/trunk/subversion/libsvn_delta/compat.c Modified: subversion/trunk/subversion/libsvn_delta/compat.c URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_delta/compat.c?rev=1241608&r1=1241607&r2=1241608&view=diff ============================================================================== --- subversion/trunk/subversion/libsvn_delta/compat.c (original) +++ subversion/trunk/subversion/libsvn_delta/compat.c Tue Feb 7 20:45:03 2012 @@ -986,6 +986,8 @@ struct editor_baton struct operation root; svn_boolean_t *make_abs_paths; + svn_boolean_t driven; + apr_hash_t *paths; apr_pool_t *edit_pool; }; @@ -1664,6 +1666,7 @@ complete_cb(void *baton, /* Drive the tree we've created. */ err = drive_root(&eb->root, eb->deditor, *eb->make_abs_paths, scratch_pool); + eb->driven = TRUE; if (!err) { err = svn_error_compose_create(err, eb->deditor->close_edit( @@ -1683,14 +1686,16 @@ abort_cb(void *baton, apr_pool_t *scratch_pool) { struct editor_baton *eb = baton; - svn_error_t *err; + svn_error_t *err = SVN_NO_ERROR; svn_error_t *err2; /* We still need to drive anything we collected in the editor to this point. */ /* Drive the tree we've created. */ - err = drive_root(&eb->root, eb->deditor, *eb->make_abs_paths, scratch_pool); + if (!eb->driven) + err = drive_root(&eb->root, eb->deditor, *eb->make_abs_paths, + scratch_pool); err2 = eb->deditor->abort_edit(eb->dedit_baton, scratch_pool);