-----Original Message-----
From: dan...@apache.org [mailto:dan...@apache.org] 
Sent: donderdag 10 juni 2010 14:25
To: comm...@subversion.apache.org
Subject: svn commit: r953302 - in /subversion/trunk/subversion: 
include/svn_diff.h libsvn_client/diff.c

Author: dannas
Date: Thu Jun 10 12:24:39 2010
New Revision: 953302

URL: http://svn.apache.org/viewvc?rev=953302&view=rev
Log:
Make the 'diff_operation' type public.

When we parse a 'git format' diff we need to pass on what operation should be 
performed on the file to the patch code.

The actual parsing is not yet implemented, just making preparations.

* subversion/libsvn_client/diff.c
  (diff_operation): Rename and move this from here to ..

* subversion/include/svn_diff.h
  (svn_diff_operation_kind_t): .. Here.
  (svn_patch_t): Add 'svn_diff_operation_kind_t' field.


Modified:
    subversion/trunk/subversion/include/svn_diff.h
    subversion/trunk/subversion/libsvn_client/diff.c

Modified: subversion/trunk/subversion/include/svn_diff.h
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/include/svn_diff.h?rev=953302&r1=953301&r2=953302&view=diff
==============================================================================
--- subversion/trunk/subversion/include/svn_diff.h (original)
+++ subversion/trunk/subversion/include/svn_diff.h Thu Jun 10 12:24:39 
+++ 2010
@@ -771,6 +771,21 @@ svn_diff_mem_string_output_merge(svn_str
  * rather than parse it, see svn_client_patch(). */
 
 /**
+ * Describes what operation has been performed on a file.
+ *
+ * @since New in 1.7.
+ */
+typedef enum svn_diff_operation_kind_e
+{
+  diff_op_added,
+  diff_op_deleted,
+  diff_op_copied,
+  diff_op_moved,
+  /* There's no tree changes, just text modifications. */
+  diff_op_modified
+}svn_diff_operation_kind_t;

The values need a svn_ prefix, as they will be part of the global namespace.

        Bert
+
+/**
  * A single hunk inside a patch
  *
  * @since New in 1.7. */
@@ -852,6 +867,10 @@ typedef struct svn_patch_t {
    * An array containing an svn_hunk_t object for each hunk parsed
    * from the patch. */
   apr_array_header_t *hunks;
+
+  /**
+   * Represents the operation performed on the file. */  
+ svn_diff_operation_kind_t operation;
 } svn_patch_t;
 
 /**

Modified: subversion/trunk/subversion/libsvn_client/diff.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/diff.c?rev=953302&r1=953301&r2=953302&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/diff.c (original)
+++ subversion/trunk/subversion/libsvn_client/diff.c Thu Jun 10 12:24:39 
+++ 2010
@@ -393,17 +393,6 @@ print_git_diff_header_modified(svn_strea
 }
 #endif
 
-enum diff_operation
-{
-  diff_op_added,
-  diff_op_deleted,
-  diff_op_copied,
-  diff_op_moved,
-  /* There's no tree changes, just text modifications. */
-  diff_op_modified
-};
-
-
 /*-----------------------------------------------------------------*/
 

 /*** Callbacks for 'svn diff', invoked by the repos-diff editor. ***/
@@ -528,7 +517,7 @@ diff_content_changed(const char *path,
                      svn_revnum_t rev2,
                      const char *mimetype1,
                      const char *mimetype2,
-                     enum diff_operation operation,
+                     svn_diff_operation_kind_t operation,
                      void *diff_baton)
 {
   struct diff_cmd_baton *diff_cmd_baton = diff_baton;



Reply via email to