File da0d3f22.patch of Package gthumb
From da0d3f22a5c3a141211d943e7d963d14090011ec Mon Sep 17 00:00:00 2001
From: Paolo Bacchilega <paobac@src.gnome.org>
Date: Fri, 23 Dec 2022 17:37:03 +0100
Subject: [PATCH] Fixed build with libraw 0.21
---
extensions/raw_files/gth-metadata-provider-raw.c | 2 +-
extensions/raw_files/gth-metadata-provider-raw.h | 7 +++++++
extensions/raw_files/main.c | 4 ++--
3 files changed, 10 insertions(+), 3 deletions(-)
diff --git a/extensions/raw_files/gth-metadata-provider-raw.c b/extensions/raw_files/gth-metadata-provider-raw.c
index 2d9f5020..1aa8a727 100644
--- a/extensions/raw_files/gth-metadata-provider-raw.c
+++ b/extensions/raw_files/gth-metadata-provider-raw.c
@@ -62,7 +62,7 @@ gth_metadata_provider_raw_read (GthMetadataProvider *self,
if (!_g_mime_type_is_raw (gth_file_data_get_mime_type (file_data)))
return;
- raw_data = libraw_init (LIBRAW_OPIONS_NO_MEMERR_CALLBACK | LIBRAW_OPIONS_NO_DATAERR_CALLBACK);
+ raw_data = libraw_init (GTH_LIBRAW_INIT_OPTIONS);
if (raw_data == NULL)
goto fatal_error;
diff --git a/extensions/raw_files/gth-metadata-provider-raw.h b/extensions/raw_files/gth-metadata-provider-raw.h
index 6406c68b..cf19434d 100644
--- a/extensions/raw_files/gth-metadata-provider-raw.h
+++ b/extensions/raw_files/gth-metadata-provider-raw.h
@@ -25,6 +25,13 @@
#include <glib.h>
#include <glib-object.h>
#include <gthumb.h>
+#include <libraw.h>
+
+#if LIBRAW_COMPILE_CHECK_VERSION_NOTLESS(0, 21)
+#define GTH_LIBRAW_INIT_OPTIONS (LIBRAW_OPIONS_NO_DATAERR_CALLBACK)
+#else
+#define GTH_LIBRAW_INIT_OPTIONS (LIBRAW_OPIONS_NO_MEMERR_CALLBACK | LIBRAW_OPIONS_NO_DATAERR_CALLBACK)
+#endif
#define GTH_TYPE_METADATA_PROVIDER_RAW (gth_metadata_provider_raw_get_type ())
#define GTH_METADATA_PROVIDER_RAW(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), GTH_TYPE_METADATA_PROVIDER_RAW, GthMetadataProviderRaw))
diff --git a/extensions/raw_files/main.c b/extensions/raw_files/main.c
index 25829c12..0673c2c7 100644
--- a/extensions/raw_files/main.c
+++ b/extensions/raw_files/main.c
@@ -213,7 +213,7 @@ _cairo_image_surface_create_from_raw (GInputStream *istream,
size_t size;
GthImage *image = NULL;
- raw_data = libraw_init (LIBRAW_OPIONS_NO_MEMERR_CALLBACK | LIBRAW_OPIONS_NO_DATAERR_CALLBACK);
+ raw_data = libraw_init (GTH_LIBRAW_INIT_OPTIONS);
if (raw_data == NULL) {
_libraw_set_gerror (error, errno);
goto fatal_error;
@@ -300,7 +300,7 @@ _cairo_image_surface_create_from_raw (GInputStream *istream,
if ((original_width != NULL) && (original_height != NULL)) {
libraw_close (raw_data);
- raw_data = libraw_init (LIBRAW_OPIONS_NO_MEMERR_CALLBACK | LIBRAW_OPIONS_NO_DATAERR_CALLBACK);
+ raw_data = libraw_init (GTH_LIBRAW_INIT_OPTIONS);
if (raw_data == NULL)
goto fatal_error;
--
GitLab