Author: stsp
Date: Mon Jun  6 15:44:34 2011
New Revision: 1132678

URL: http://svn.apache.org/viewvc?rev=1132678&view=rev
Log:
Fix a bug in 'svn export' because of which externals are exported twice
when exporting a working copy having externals.

* subversion/libsvn_client/export.c
  (copy_versioned_files): Do not copy an external file here. This is
    done down the line in the function.

* subversion/tests/cmdline/externals_tests.py
  (export_wc_with_externals): Remove XFail marker.

Patch by: Noorul Islam K M <noorul{_AT_}collab.net>

Modified:
    subversion/trunk/subversion/libsvn_client/export.c
    subversion/trunk/subversion/tests/cmdline/externals_tests.py

Modified: subversion/trunk/subversion/libsvn_client/export.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/export.c?rev=1132678&r1=1132677&r2=1132678&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/export.c (original)
+++ subversion/trunk/subversion/libsvn_client/export.c Mon Jun  6 15:44:34 2011
@@ -505,10 +505,20 @@ copy_versioned_files(const char *from_ab
           else if (child_kind == svn_node_file
                    && depth >= svn_depth_files)
             {
-              SVN_ERR(copy_one_versioned_file(child_abspath, target_abspath,
-                                              ctx, revision,
-                                              native_eol, ignore_keywords,
-                                              iterpool));
+              svn_node_kind_t external_kind;
+
+              SVN_ERR(svn_wc__read_external_info(&external_kind,
+                                                 NULL, NULL, NULL,
+                                                 NULL, ctx->wc_ctx,
+                                                 child_abspath,
+                                                 child_abspath, TRUE,
+                                                 pool, pool));
+
+              if (external_kind != svn_node_file)
+                SVN_ERR(copy_one_versioned_file(child_abspath, target_abspath,
+                                                ctx, revision,
+                                                native_eol, ignore_keywords,
+                                                iterpool));
             }
         }
 

Modified: subversion/trunk/subversion/tests/cmdline/externals_tests.py
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/externals_tests.py?rev=1132678&r1=1132677&r2=1132678&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/cmdline/externals_tests.py (original)
+++ subversion/trunk/subversion/tests/cmdline/externals_tests.py Mon Jun  6 
15:44:34 2011
@@ -737,7 +737,6 @@ def export_with_externals(sbox):
 
 # Test for issue #2429
 @Issue(2429)
-@XFail()
 def export_wc_with_externals(sbox):
   "test exports from working copies with externals"
 


Reply via email to