[libgit2-glib] Fix Diff because of the split of Range into Hunk/Line



commit 3531e1734ead2b2590c6924f608586e96a8c96a0
Author: Ignacio Casal Quinteiro <icq gnome org>
Date:   Thu Nov 21 17:27:49 2013 +0100

    Fix Diff because of the split of Range into Hunk/Line

 libgit2-glib/ggit-diff.c |   37 +++++++++++++++++++------------------
 1 files changed, 19 insertions(+), 18 deletions(-)
---
diff --git a/libgit2-glib/ggit-diff.c b/libgit2-glib/ggit-diff.c
index 43d078c..afd0ce9 100644
--- a/libgit2-glib/ggit-diff.c
+++ b/libgit2-glib/ggit-diff.c
@@ -58,23 +58,20 @@ ggit_diff_file_callback_wrapper (const git_diff_delta *delta,
 
 static gint
 ggit_diff_hunk_callback_wrapper (const git_diff_delta *delta,
-                                 const git_diff_range *range,
-                                 const gchar          *header,
-                                 gsize                 header_len,
+                                 const git_diff_hunk  *hunk,
                                  gpointer              user_data)
 {
        CallbackWrapperData *data = user_data;
        GgitDiffDelta *gdelta;
-       GgitDiffRange *grange;
+       GgitDiffHunk *ghunk;
        gint ret;
 
        gdelta = _ggit_diff_delta_wrap (delta);
-       grange = _ggit_diff_range_wrap (range);
+       ghunk = _ggit_diff_hunk_wrap (hunk);
 
-       ret = data->hunk_cb (gdelta, grange, header, header_len,
-                            data->user_data);
+       ret = data->hunk_cb (gdelta, ghunk, data->user_data);
 
-       ggit_diff_range_unref (grange);
+       ggit_diff_hunk_unref (ghunk);
        ggit_diff_delta_unref (gdelta);
 
        return ret;
@@ -82,26 +79,30 @@ ggit_diff_hunk_callback_wrapper (const git_diff_delta *delta,
 
 static gint
 ggit_diff_line_callback_wrapper (const git_diff_delta *delta,
-                                 const git_diff_range *range,
-                                 gchar                 line_type,
-                                 const gchar          *content,
-                                 gsize                 content_len,
+                                 const git_diff_hunk  *hunk,
+                                 const git_diff_line  *line,
                                  gpointer              user_data)
 {
        CallbackWrapperData *data = user_data;
        GgitDiffDelta *gdelta;
-       GgitDiffRange *grange;
+       GgitDiffHunk *ghunk;
+       GgitDiffLine *gline;
        gint ret;
 
        gdelta = _ggit_diff_delta_wrap (delta);
-       grange = range == NULL ? NULL : _ggit_diff_range_wrap (range);
+       ghunk = hunk == NULL ? NULL : _ggit_diff_hunk_wrap (hunk);
+       gline = line == NULL ? NULL : _ggit_diff_line_wrap (line);
 
-       ret = data->line_cb (gdelta, grange, (GgitDiffLineType) line_type,
-                            content, content_len, data->user_data);
+       ret = data->line_cb (gdelta, ghunk, gline, data->user_data);
 
-       if (grange != NULL)
+       if (gline != NULL)
        {
-               ggit_diff_range_unref (grange);
+               ggit_diff_line_unref (gline);
+       }
+
+       if (ghunk != NULL)
+       {
+               ggit_diff_hunk_unref (ghunk);
        }
 
        ggit_diff_delta_unref (gdelta);


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]