[libgit2-glib] Add ggit_diff_find_similar
- From: Jesse van den Kieboom <jessevdk src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [libgit2-glib] Add ggit_diff_find_similar
- Date: Fri, 27 Jun 2014 12:27:13 +0000 (UTC)
commit 8f7ae0e503f54b778b494f9b424d26de0b9c1b8b
Author: Jesse van den Kieboom <jessevdk gnome org>
Date: Fri Jun 27 14:26:48 2014 +0200
Add ggit_diff_find_similar
libgit2-glib/ggit-diff.c | 36 ++++++++++++++++++++++++++++++++++++
libgit2-glib/ggit-diff.h | 4 ++++
2 files changed, 40 insertions(+), 0 deletions(-)
---
diff --git a/libgit2-glib/ggit-diff.c b/libgit2-glib/ggit-diff.c
index d3c2fda..8058857 100644
--- a/libgit2-glib/ggit-diff.c
+++ b/libgit2-glib/ggit-diff.c
@@ -29,6 +29,7 @@
#include "ggit-error.h"
#include "ggit-repository.h"
#include "ggit-diff-file.h"
+#include "ggit-diff-find-options.h"
#define GGIT_DIFF_GET_PRIVATE(object)(G_TYPE_INSTANCE_GET_PRIVATE((object), GGIT_TYPE_DIFF, GgitDiffPrivate))
@@ -772,4 +773,39 @@ ggit_diff_blob_to_buffer (GgitBlob *old_blob,
}
}
+/**
+ * ggit_diff_find_similar:
+ * @diff: a #GgitDiff.
+ * @options: (allow-none): a #GgitDiffFindOptions or %NULL.
+ * @error: a #GError for error reporting, or %NULL.
+ *
+ * Transform @diff marking file renames, copies, etc.. If @options is set to
+ * %NULL, then the default options will be used.
+ *
+ * Returns: %TRUE if there were no errors, %FALSE otherwise.
+ *
+ **/
+gboolean
+ggit_diff_find_similar (GgitDiff *diff,
+ GgitDiffFindOptions *options,
+ GError **error)
+{
+ gint ret;
+
+ g_return_val_if_fail (GGIT_IS_DIFF (diff), FALSE);
+ g_return_val_if_fail (GGIT_IS_DIFF_FIND_OPTIONS (options), FALSE);
+ g_return_val_if_fail (error == NULL || *error == NULL, FALSE);
+
+ ret = git_diff_find_similar (_ggit_native_get (diff),
+ _ggit_diff_find_options_get_diff_find_options (options));
+
+ if (ret != GIT_OK)
+ {
+ _ggit_error_set (error, ret);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
/* ex:set ts=8 noet: */
diff --git a/libgit2-glib/ggit-diff.h b/libgit2-glib/ggit-diff.h
index 1c39bcb..42970cb 100644
--- a/libgit2-glib/ggit-diff.h
+++ b/libgit2-glib/ggit-diff.h
@@ -119,6 +119,10 @@ void ggit_diff_blob_to_buffer (GgitBlob *old_b
gpointer *user_data,
GError **error);
+gboolean ggit_diff_find_similar (GgitDiff *diff,
+ GgitDiffFindOptions *options,
+ GError **error);
+
G_END_DECLS
#endif /* __GGIT_DIFF_H__ */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]