Author: julianfoad
Date: Sat Dec  5 00:38:37 2009
New Revision: 887469

URL: http://svn.apache.org/viewvc?rev=887469&view=rev
Log:
Fix some more instances of calling svn_dirent_get_absolute() on a URL,
following up on [1].

* subversion/libsvn_client/log.c
  (svn_client_log5): Check the type of the path and invoke
    'svn_dirent_get_absolute()' only if it is a WC path. Rename the
    variable `local_abspath' to `local_abspath_or_url' as it holds either
    a WC abs-path or a URL.

Patch by: Kannan R <kannanr{_AT_}collab.net>

[1]-http://svn.apache.org/viewvc?rev=887187&view=rev

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

Modified: subversion/trunk/subversion/libsvn_client/log.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/log.c?rev=887469&r1=887468&r2=887469&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/log.c (original)
+++ subversion/trunk/subversion/libsvn_client/log.c Sat Dec  5 00:38:37 2009
@@ -563,7 +563,7 @@
     {
       svn_revnum_t start_revnum, end_revnum, youngest_rev = SVN_INVALID_REVNUM;
       const char *path = APR_ARRAY_IDX(targets, 0, const char *);
-      const char *local_abspath;
+      const char *local_abspath_or_url;
       svn_opt_revision_range_t *range;
       limit_receiver_baton_t lb;
       svn_log_entry_receiver_t passed_receiver;
@@ -571,15 +571,20 @@
       const apr_array_header_t *passed_receiver_revprops;
 
       svn_pool_clear(iterpool);
-      SVN_ERR(svn_dirent_get_absolute(&local_abspath, path, iterpool));
+
+      if (!svn_path_is_url(path))
+        SVN_ERR(svn_dirent_get_absolute(&local_abspath_or_url, path, 
iterpool));
+      else
+        local_abspath_or_url = path;
+
       range = APR_ARRAY_IDX(revision_ranges, i, svn_opt_revision_range_t *);
 
       SVN_ERR(svn_client__get_revision_number(&start_revnum, &youngest_rev,
-                                              ctx->wc_ctx, local_abspath,
+                                              ctx->wc_ctx, 
local_abspath_or_url,
                                               ra_session, &range->start,
                                               iterpool));
       SVN_ERR(svn_client__get_revision_number(&end_revnum, &youngest_rev,
-                                              ctx->wc_ctx, local_abspath,
+                                              ctx->wc_ctx, 
local_abspath_or_url,
                                               ra_session, &range->end,
                                               iterpool));
 


Reply via email to