From cec39e5efebba62e7464aa88ee0cbe296d1c6d9b Mon Sep 17 00:00:00 2001
From: Niko Tyni <ntyni@debian.org>
Date: Mon, 14 Oct 2024 19:32:09 +0100
Subject: [PATCH] S_git_check_error: adapt to libgit2 1.8.0 change

giterr_last() no longer returns NULL for no error since

 https://github.com/libgit2/libgit2/commit/3618a2aa45893a88fbb2d1e0eb97d530c7dc4f4d

Bug-Debian: https://bugs.debian.org/1084214
---
 Raw.xs | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Raw.xs b/Raw.xs
index bb17ff0d..1e67a7ae 100644
--- a/Raw.xs
+++ b/Raw.xs
@@ -308,7 +308,7 @@ STATIC void S_git_check_error(int err, const char *file, int line) {
 
 		e = create_error_obj(err, GITERR_NONE, NULL);
 
-		if ((error = giterr_last()) != NULL) {
+		if ((error = giterr_last()) != NULL && error->klass != GIT_ERROR_NONE) {
 			e -> category = error -> klass;
 			e -> message = newSVpv(error -> message, 0);
 		} else if (SvTRUE(ERRSV)) {
-- 
2.45.2

