summaryrefslogtreecommitdiff
path: root/subversion/libsvn_client/export.c
diff options
context:
space:
mode:
Diffstat (limited to 'subversion/libsvn_client/export.c')
-rw-r--r--subversion/libsvn_client/export.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/subversion/libsvn_client/export.c b/subversion/libsvn_client/export.c
index d6022ed68f291..c14a5f0bc0178 100644
--- a/subversion/libsvn_client/export.c
+++ b/subversion/libsvn_client/export.c
@@ -267,7 +267,9 @@ export_node(void *baton,
scratch_pool));
}
- if (status->file_external)
+ /* Skip file externals if they are a descendant of the export,
+ BUT NOT if we are explictly exporting the file external. */
+ if (status->file_external && strcmp(eib->origin_abspath, local_abspath) != 0)
return SVN_NO_ERROR;
/* Produce overwrite errors for the export root */
@@ -1587,3 +1589,4 @@ svn_client_export5(svn_revnum_t *result_rev,
return SVN_NO_ERROR;
}
+