# This patch is fetched from the upstream and dedicated to making compiling with clang-19 possible # Bug related https://bugs.gentoo.org/945375 # The patch is added by Denis Pronin From 72c5ad98d858fa4fc0183a5ec1a61bb48ef5bd95 Mon Sep 17 00:00:00 2001 From: Kjell Ahlstedt Date: Fri, 22 Mar 2024 10:32:45 +0100 Subject: [PATCH] Gio::content_type_guess(): Remove most of an unneccesary overload clang 19.0.0 does not like the overload that takes a const std::basic_string&. This overload should have been removed 16 years ago by commit 84135b93a20e6c9fe652849959d3ff90474c99bb. It can't be removed completely now, because that would break ABI. Remove as much as possible. Fixes #118 --- gio/giomm/contenttype.cc | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/gio/giomm/contenttype.cc b/gio/giomm/contenttype.cc index abe67337..8eb1bd71 100644 --- a/gio/giomm/contenttype.cc +++ b/gio/giomm/contenttype.cc @@ -84,15 +84,18 @@ content_type_from_mime_type(const Glib::ustring& mime_type) g_content_type_from_mime_type(mime_type.c_str())); } +//TODO: When we can break ABI, remove this content_type_guess() overload. +// Commit https://gitlab.gnome.org/GNOME/glibmm/-/commit/84135b93a20e6c9fe652849959d3ff90474c99bb +// removed it from contenttype.h, but not from contenttype.cc. +// For the time being, it's replaced by a function that does almost nothing. +// clang 19.0.0 does not like a complete version. +// See issue https://gitlab.gnome.org/GNOME/glibmm/-/issues/118 Glib::ustring content_type_guess( - const std::string& filename, const std::basic_string& data, bool& result_uncertain) + const std::string& /*filename*/, const std::basic_string& /*data*/, bool& result_uncertain) { - gboolean c_result_uncertain = FALSE; - const gchar* c_filename = filename.empty() ? nullptr : filename.c_str(); - gchar* cresult = g_content_type_guess(c_filename, data.c_str(), data.size(), &c_result_uncertain); - result_uncertain = c_result_uncertain; - return Glib::convert_return_gchar_ptr_to_ustring(cresult); + result_uncertain = true; + return Glib::ustring(); } Glib::ustring -- 2.45.2