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 30370D192 for ; Mon, 19 Nov 2012 20:05:22 +0000 (UTC) Received: (qmail 42618 invoked by uid 500); 19 Nov 2012 20:05:22 -0000 Delivered-To: apmail-subversion-commits-archive@subversion.apache.org Received: (qmail 42578 invoked by uid 500); 19 Nov 2012 20:05:22 -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 42571 invoked by uid 99); 19 Nov 2012 20:05:22 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 19 Nov 2012 20:05:22 +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; Mon, 19 Nov 2012 20:05:20 +0000 Received: from eris.apache.org (localhost [127.0.0.1]) by eris.apache.org (Postfix) with ESMTP id D22E423889FD; Mon, 19 Nov 2012 20:05:00 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1411383 - in /subversion/branches/tree-read-api/subversion: include/private/svn_ra_private.h libsvn_ra/ra_trees.c Date: Mon, 19 Nov 2012 20:05:00 -0000 To: commits@subversion.apache.org From: julianfoad@apache.org X-Mailer: svnmailer-1.0.8-patched Message-Id: <20121119200500.D22E423889FD@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: julianfoad Date: Mon Nov 19 20:04:58 2012 New Revision: 1411383 URL: http://svn.apache.org/viewvc?rev=1411383&view=rev Log: On the 'tree-read-api' branch: * subversion/include/private/svn_ra_private.h, subversion/libsvn_ra/ra_trees.c (svn_ra__open_tree): Document and implement that SVN_INVALID_REVNUM means HEAD. Modified: subversion/branches/tree-read-api/subversion/include/private/svn_ra_private.h subversion/branches/tree-read-api/subversion/libsvn_ra/ra_trees.c Modified: subversion/branches/tree-read-api/subversion/include/private/svn_ra_private.h URL: http://svn.apache.org/viewvc/subversion/branches/tree-read-api/subversion/include/private/svn_ra_private.h?rev=1411383&r1=1411382&r2=1411383&view=diff ============================================================================== --- subversion/branches/tree-read-api/subversion/include/private/svn_ra_private.h (original) +++ subversion/branches/tree-read-api/subversion/include/private/svn_ra_private.h Mon Nov 19 20:04:58 2012 @@ -274,6 +274,12 @@ svn_ra__replay_ev2(svn_ra_session_t *ses /* Set *TREE_P to a new tree object representing the subtree rooted at * the repository path of SESSION in revision REVNUM. + * + * REVNUM must be either a valid revision number within the repository, or + * SVN_INVALID_REVNUM meaning the head revision. A request to use the head + * revision will be resolved to a revision number exactly once for this + * tree, some time between calling this function and the first time an + * operation on this tree depends on it. */ svn_error_t * svn_ra__open_tree(svn_tree_t **tree_p, Modified: subversion/branches/tree-read-api/subversion/libsvn_ra/ra_trees.c URL: http://svn.apache.org/viewvc/subversion/branches/tree-read-api/subversion/libsvn_ra/ra_trees.c?rev=1411383&r1=1411382&r2=1411383&view=diff ============================================================================== --- subversion/branches/tree-read-api/subversion/libsvn_ra/ra_trees.c (original) +++ subversion/branches/tree-read-api/subversion/libsvn_ra/ra_trees.c Mon Nov 19 20:04:58 2012 @@ -207,6 +207,9 @@ svn_ra__open_tree(svn_tree_t **tree_p, { ra_tree_baton_t *tb = apr_palloc(result_pool, sizeof(*tb)); + if (! SVN_IS_VALID_REVNUM(revnum)) + SVN_ERR(svn_ra_get_latest_revnum(ra_session, &revnum, result_pool)); + tb->ra_session = ra_session; tb->revnum = revnum;