You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by hw...@apache.org on 2012/03/02 13:36:45 UTC

svn commit: r1296170 - /subversion/trunk/subversion/libsvn_client/util.c

Author: hwright
Date: Fri Mar  2 12:36:45 2012
New Revision: 1296170

URL: http://svn.apache.org/viewvc?rev=1296170&view=rev
Log:
On the client-side ra Ev2 shim callbacks, early out if not given an anchor
abspath ('cause without one, we obviously don't have any idea how to fetch
information from the working copy).

Current number of test failures over ra_svn: 338

* subversion/libsvn_client/util.c
  (fetch_props_func, fetch_kind_func, fetch_base_func): Early exit with
    minimal content when we don't have an anchor abspath.

Modified:
    subversion/trunk/subversion/libsvn_client/util.c

Modified: subversion/trunk/subversion/libsvn_client/util.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/util.c?rev=1296170&r1=1296169&r2=1296170&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/util.c (original)
+++ subversion/trunk/subversion/libsvn_client/util.c Fri Mar  2 12:36:45 2012
@@ -258,6 +258,14 @@ fetch_props_func(apr_hash_t **props,
   struct shim_callbacks_baton *scb = baton;
   const char *local_abspath;
 
+  /* Early out: if we didn't get an anchor_abspath, it means we don't have a
+     working copy, and hence no method of fetching the requisite information. */
+  if (!scb->anchor_abspath)
+    {
+      *props = NULL;
+      return SVN_NO_ERROR;
+    }
+
   if (svn_path_is_url(path))
     {
       /* This is a copyfrom URL */
@@ -293,6 +301,14 @@ fetch_kind_func(svn_kind_t *kind,
   svn_node_kind_t node_kind;
   const char *local_abspath;
 
+  /* Early out: if we didn't get an anchor_abspath, it means we don't have a
+     working copy, and hence no method of fetching the requisite information. */
+  if (!scb->anchor_abspath)
+    {
+      *kind = svn_kind_unknown;
+      return SVN_NO_ERROR;
+    }
+
   if (svn_path_is_url(path))
     {
       /* This is a copyfrom URL */
@@ -332,6 +348,14 @@ fetch_base_func(const char **filename,
   svn_stream_t *temp_stream;
   svn_error_t *err;
 
+  /* Early out: if we didn't get an anchor_abspath, it means we don't have a
+     working copy, and hence no method of fetching the requisite information. */
+  if (!scb->anchor_abspath)
+    {
+      *filename = NULL;
+      return SVN_NO_ERROR;
+    }
+
   if (svn_path_is_url(path))
     {
       /* This is a copyfrom URL */