Author: stsp
Date: Thu Jun 25 14:16:14 2015
New Revision: 1687529

URL: http://svn.apache.org/r1687529
Log:
Add an svn_client_conflict API to obtain the legacy property reject path.

* subversion/include/svn_client.h
  (svn_client_conflict_prop_get_reject_abspath): Declare.

* subversion/libsvn_client/resolved.c
  (svn_client_conflict_prop_get_reject_abspath): Implement.

* subversion/svn/cl-conflicts.c
  (svn_cl__append_conflict_info_xml): Restore XML output to working condition.

Modified:
    subversion/trunk/subversion/include/svn_client.h
    subversion/trunk/subversion/libsvn_client/resolved.c
    subversion/trunk/subversion/svn/cl-conflicts.c

Modified: subversion/trunk/subversion/include/svn_client.h
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/include/svn_client.h?rev=1687529&r1=1687528&r2=1687529&view=diff
==============================================================================
--- subversion/trunk/subversion/include/svn_client.h (original)
+++ subversion/trunk/subversion/include/svn_client.h Thu Jun 25 14:16:14 2015
@@ -4521,6 +4521,19 @@ const char *
 svn_client_conflict_prop_get_propname(const svn_client_conflict_t *conflict);
 
 /**
+ * Return the path to the legacy property conflicts reject file
+ * for the property conflicts represented by @a conflict.
+ *
+ * This function exists for backwards compatibility only and should not be
+ * used in new code.
+ *
+ * @since New in 1.10.
+ */
+const char *
+svn_client_conflict_prop_get_reject_abspath(
+  const svn_client_conflict_t *conflict);
+
+/**
  * Return the set of property values involved in the property conflict
  * described by @a conflict. If a property value is unavailable the
  * corresponding output argument is set to @c NULL.

Modified: subversion/trunk/subversion/libsvn_client/resolved.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/resolved.c?rev=1687529&r1=1687528&r2=1687529&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/resolved.c (original)
+++ subversion/trunk/subversion/libsvn_client/resolved.c Thu Jun 25 14:16:14 
2015
@@ -370,6 +370,17 @@ svn_client_conflict_prop_get_propvals(co
 }
 
 const char *
+svn_client_conflict_prop_get_reject_abspath(
+  const svn_client_conflict_t *conflict)
+{
+  SVN_ERR_ASSERT_NO_RETURN(svn_client_conflict_get_kind(conflict)
+      == svn_wc_conflict_kind_property);
+
+  /* svn_wc_conflict_description2_t stores this path in 'their_abspath' */
+  return conflict->desc2->their_abspath;
+}
+
+const char *
 svn_client_conflict_text_get_mime_type(const svn_client_conflict_t *conflict)
 {
   SVN_ERR_ASSERT_NO_RETURN(svn_client_conflict_get_kind(conflict)

Modified: subversion/trunk/subversion/svn/cl-conflicts.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/cl-conflicts.c?rev=1687529&r1=1687528&r2=1687529&view=diff
==============================================================================
--- subversion/trunk/subversion/svn/cl-conflicts.c (original)
+++ subversion/trunk/subversion/svn/cl-conflicts.c Thu Jun 25 14:16:14 2015
@@ -569,9 +569,15 @@ svn_cl__append_conflict_info_xml(svn_str
         break;
 
       case svn_wc_conflict_kind_property:
-        /* "<prop-file> xx </prop-file>" */
-        svn_cl__xml_tagged_cdata(
-          &str, scratch_pool, "prop-file", their_abspath);
+        {
+          const char *reject_abspath;
+
+          /* "<prop-file> xx </prop-file>" */
+          reject_abspath =
+            svn_client_conflict_prop_get_reject_abspath(conflict);
+          svn_cl__xml_tagged_cdata(
+            &str, scratch_pool, "prop-file", reject_abspath);
+        }
         break;
 
       default:


Reply via email to