diff --git a/0001-Fix-integer-size-issue-on-32-bit-platforms.patch b/0001-Fix-integer-size-issue-on-32-bit-platforms.patch new file mode 100644 index 0000000..dad3472 --- /dev/null +++ b/0001-Fix-integer-size-issue-on-32-bit-platforms.patch @@ -0,0 +1,108 @@ +From 3b77fdc0ee3c74d258d0a92f7ae0e8354239d8ee Mon Sep 17 00:00:00 2001 +From: Stephen Gallagher +Date: Fri, 20 Nov 2020 15:52:27 -0500 +Subject: [PATCH] Fix integer size issue on 32-bit platforms + +Signed-off-by: Stephen Gallagher +--- + modulemd/modulemd-module.c | 6 +++--- + modulemd/modulemd-obsoletes.c | 7 ++++--- + modulemd/modulemd-util.c | 2 +- + 3 files changed, 8 insertions(+), 7 deletions(-) + +diff --git a/modulemd/modulemd-module.c b/modulemd/modulemd-module.c +index 8cc79952a209392a1e51ecf61145499207e58e4c..1b1ee71eaf01d0ab53dcfa839fda1177d73a5628 100644 +--- a/modulemd/modulemd-module.c ++++ b/modulemd/modulemd-module.c +@@ -875,12 +875,12 @@ modulemd_module_add_obsoletes (ModulemdModule *self, + modulemd_obsoletes_get_module_context (temp_obsoletes))) + { + continue; + } + g_info ( +- "Overriding existing obsolete because of idenical stream: %s, " +- "context: %s and modified time: %lu.", ++ "Overriding existing obsolete because of identical stream: %s, " ++ "context: %s and modified time: %" PRIu64 ".", + modulemd_obsoletes_get_module_stream (obsoletes), + modulemd_obsoletes_get_module_context (obsoletes), + modulemd_obsoletes_get_modified (obsoletes)); + g_ptr_array_remove (self->obsoletes, temp_obsoletes); + break; +@@ -965,11 +965,11 @@ modulemd_module_add_obsoletes (ModulemdModule *self, + current_obsoletes)) + { + g_info ( + "Multiple obsoletes for module: %s, stream: %s, context: " + "%s " +- "with identical modified time: %lu", ++ "with identical modified time: %" PRIu64, + modulemd_module_get_module_name (self), + stream_str, + context_str, + new_obsoletes_mod); + } +diff --git a/modulemd/modulemd-obsoletes.c b/modulemd/modulemd-obsoletes.c +index 46bbc435309542208ddb3d45fca5c95fe07651d4..ceb7682d423a99f129aae401d9dfd40349c3320e 100644 +--- a/modulemd/modulemd-obsoletes.c ++++ b/modulemd/modulemd-obsoletes.c +@@ -1090,11 +1090,11 @@ modulemd_obsoletes_emit_yaml (ModulemdObsoletes *self, + { + g_set_error ( + error, + MODULEMD_ERROR, + MMD_ERROR_VALIDATE, +- "Cannot convert modified date: %lu to iso8601 date.", ++ "Cannot convert modified date: %" PRIu64 " to iso8601 date.", + modulemd_obsoletes_get_modified (MODULEMD_OBSOLETES (self))); + return FALSE; + } + if (!mmd_emitter_scalar ( + emitter, modified_string, YAML_PLAIN_SCALAR_STYLE, error)) +@@ -1164,11 +1164,12 @@ modulemd_obsoletes_emit_yaml (ModulemdObsoletes *self, + if (eol_date_string == NULL) + { + g_set_error (error, + MODULEMD_ERROR, + MMD_ERROR_VALIDATE, +- "Cannot convert eol_date: %lu to iso8601 date.", ++ "Cannot convert eol_date: %" PRIu64 ++ " to iso8601 date.", + eol_date); + return FALSE; + } + EMIT_KEY_VALUE (emitter, error, "eol_date", eol_date_string); + } +@@ -1229,11 +1230,11 @@ modulemd_obsoletes_is_active (ModulemdObsoletes *self) + time (&rawtime); + tm = gmtime (&rawtime); + + char buf[255]; + strftime (buf, sizeof (buf), "%Y%m%d%H%M", tm); +- guint64 now = atol (buf); ++ guint64 now = g_ascii_strtoull (buf, NULL, 0); + + if (now >= modulemd_obsoletes_get_eol_date (self)) + { + return TRUE; + } +diff --git a/modulemd/modulemd-util.c b/modulemd/modulemd-util.c +index 2a50bb598e53da707bfc0a6acc1d68d1dd4213ab..7c4c891e8c65b7d83e34880b16a08a2fcb80e49e 100644 +--- a/modulemd/modulemd-util.c ++++ b/modulemd/modulemd-util.c +@@ -519,11 +519,11 @@ modulemd_iso8601date_to_guint64 (const gchar *iso8601) + } + + char buf[32]; + strftime (buf, sizeof (buf), "%Y%m%d%H%M", &tm); + +- return atol (buf); ++ return g_ascii_strtoull (buf, NULL, 0); + } + + + gchar * + modulemd_guint64_to_iso8601date (guint64 date) +-- +2.28.0 + diff --git a/libmodulemd.spec b/libmodulemd.spec index 736e1c7..fc1b00f 100644 --- a/libmodulemd.spec +++ b/libmodulemd.spec @@ -14,7 +14,7 @@ Name: %{upstream_name}%{?v2_suffix} Version: 2.10.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Module metadata manipulation library License: MIT @@ -42,6 +42,7 @@ BuildRequires: help2man # Patches +Patch0001: 0001-Fix-integer-size-issue-on-32-bit-platforms.patch %description @@ -163,6 +164,9 @@ mv %{buildroot}%{_mandir}/man1/modulemd-validator.1 \ %changelog +* Fri Nov 20 2020 Stephen Gallagher - 2.10.0-2 +- Fix integer size issue on 32-bit platforms + * Fri Nov 20 2020 Stephen Gallagher - 2.10.0-1 - Release 2.10.0 - https://github.com/fedora-modularity/libmodulemd/releases/tag/libmodulemd-2.10.0