pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/multimedia/mlt
Module Name: pkgsrc
Committed By: mrg
Date: Mon Oct 13 02:22:16 UTC 2025
Modified Files:
pkgsrc/multimedia/mlt: distinfo
pkgsrc/multimedia/mlt/patches: patch-src_framework_mlt__properties.c
Added Files:
pkgsrc/multimedia/mlt/patches: patch-src_framework_mlt__property.c
Removed Files:
pkgsrc/multimedia/mlt/patches: patch-src_framework_mlt__property.h
Log Message:
avoid the strtod_l() etc code on NetBSD as well, as it attempts
to convert between "char *" and "locale_t" directly, and a few
other things that aren't correct, and eg, glibc, apple, openbsd,
all skip this code too.
found by GCC 14.
(the previous port didn't quite work anyway, since it only
included locale.h if LC_C_LOCALE is defined, but this is defined
in locale.h itself. my initial attempt to fix this is where i
learn about the more serious problems mentioned above.)
To generate a diff of this commit:
cvs rdiff -u -r1.17 -r1.18 pkgsrc/multimedia/mlt/distinfo
cvs rdiff -u -r1.4 -r1.5 \
pkgsrc/multimedia/mlt/patches/patch-src_framework_mlt__properties.c
cvs rdiff -u -r0 -r1.4 \
pkgsrc/multimedia/mlt/patches/patch-src_framework_mlt__property.c
cvs rdiff -u -r1.5 -r0 \
pkgsrc/multimedia/mlt/patches/patch-src_framework_mlt__property.h
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/multimedia/mlt/distinfo
diff -u pkgsrc/multimedia/mlt/distinfo:1.17 pkgsrc/multimedia/mlt/distinfo:1.18
--- pkgsrc/multimedia/mlt/distinfo:1.17 Fri Jun 6 23:20:05 2025
+++ pkgsrc/multimedia/mlt/distinfo Mon Oct 13 02:22:16 2025
@@ -1,7 +1,7 @@
-$NetBSD: distinfo,v 1.17 2025/06/06 23:20:05 wiz Exp $
+$NetBSD: distinfo,v 1.18 2025/10/13 02:22:16 mrg Exp $
BLAKE2s (mlt-7.32.0.tar.gz) = fcade36ef52c4f8df8709cbbf652ea6bb8e06d3fe5a28d5aee3604ee1b3ada31
SHA512 (mlt-7.32.0.tar.gz) = 50c261d2a1bf76fd3c83d52bfe989bf4e87b9a77198b721f9ce01b8a18abd3a827751c10810ea31e64f5a4a79633b924be5edbf31c4c5a842a54bdf1c041d7f3
Size (mlt-7.32.0.tar.gz) = 1487407 bytes
-SHA1 (patch-src_framework_mlt__properties.c) = b6488d86d8411e5754c034e85f55776e66b66f55
-SHA1 (patch-src_framework_mlt__property.h) = baa5e4138885b5abc3422eb87c6134b2d9258b94
+SHA1 (patch-src_framework_mlt__properties.c) = 387866d6ad5ffb5888a5f12c970c1f3b40dac202
+SHA1 (patch-src_framework_mlt__property.c) = dada3132f6eab8a4d09d3a16413e4f8eb4d17c79
Index: pkgsrc/multimedia/mlt/patches/patch-src_framework_mlt__properties.c
diff -u pkgsrc/multimedia/mlt/patches/patch-src_framework_mlt__properties.c:1.4 pkgsrc/multimedia/mlt/patches/patch-src_framework_mlt__properties.c:1.5
--- pkgsrc/multimedia/mlt/patches/patch-src_framework_mlt__properties.c:1.4 Thu Aug 3 02:03:16 2023
+++ pkgsrc/multimedia/mlt/patches/patch-src_framework_mlt__properties.c Mon Oct 13 02:22:16 2025
@@ -1,24 +1,17 @@
-$NetBSD: patch-src_framework_mlt__properties.c,v 1.4 2023/08/03 02:03:16 markd Exp $
+$NetBSD: patch-src_framework_mlt__properties.c,v 1.5 2025/10/13 02:22:16 mrg Exp $
-Add conditional section for __NetBSD__
+Avoid the strtod_l() etc code on NetBSD as well, it is attempts
+to convert between "char *" and "locale_t" directly.
---- src/framework/mlt_properties.c.orig 2023-07-28 18:06:26.000000000 +0000
-+++ src/framework/mlt_properties.c
-@@ -144,7 +144,7 @@ int mlt_properties_set_lcnumeric(mlt_pro
- if (self && locale) {
- property_list *list = self->local;
-
--#if defined(__GLIBC__) || defined(__APPLE__)
-+#if defined(__GLIBC__) || defined(__APPLE__) || (defined(__NetBSD__) && defined(LC_C_LOCALE))
- if (list->locale)
- freelocale(list->locale);
- list->locale = newlocale(LC_NUMERIC_MASK, locale, NULL);
-@@ -1509,7 +1509,7 @@ void mlt_properties_close(mlt_properties
- free(list->name[index]);
- }
+
+--- src/framework/mlt_properties.c.orig 2025-05-07 15:48:51.000000000 -0700
++++ src/framework/mlt_properties.c 2025-10-12 14:16:04.796329616 -0700
+@@ -759,7 +759,7 @@ int mlt_properties_set(mlt_properties se
--#if defined(__GLIBC__) || defined(__APPLE__)
-+#if defined(__GLIBC__) || defined(__APPLE__) || (defined(__NetBSD__) && defined(LC_C_LOCALE))
- // Cleanup locale
- if (list->locale)
- freelocale(list->locale);
+ // Determine the value
+ if (isdigit(id[0])) {
+-#if defined(__GLIBC__) || defined(__APPLE__) || HAVE_STRTOD_L && !defined(__OpenBSD__)
++#if defined(__GLIBC__) || defined(__APPLE__) || HAVE_STRTOD_L && !defined(__OpenBSD__) && !defined(__NetBSD__)
+ property_list *list = self->local;
+ if (list->locale)
+ current = strtod_l(id, NULL, list->locale);
Added files:
Index: pkgsrc/multimedia/mlt/patches/patch-src_framework_mlt__property.c
diff -u /dev/null pkgsrc/multimedia/mlt/patches/patch-src_framework_mlt__property.c:1.4
--- /dev/null Mon Oct 13 02:22:16 2025
+++ pkgsrc/multimedia/mlt/patches/patch-src_framework_mlt__property.c Mon Oct 13 02:22:16 2025
@@ -0,0 +1,107 @@
+$NetBSD: patch-src_framework_mlt__property.c,v 1.4 2025/10/13 02:22:16 mrg Exp $
+
+Avoid the strtod_l() etc code on NetBSD as well, it is attempts
+to convert between "char *" and "locale_t" directly.
+
+
+--- src/framework/mlt_property.c.orig 2025-05-07 15:48:51.000000000 -0700
++++ src/framework/mlt_property.c 2025-10-12 14:14:48.402329303 -0700
+@@ -319,7 +319,7 @@ static int time_clock_to_frames(mlt_prop
+ pos = strrchr(s, ':');
+
+ #if !defined(__GLIBC__) && !defined(__APPLE__) && !defined(_WIN32) && !defined(HAVE_STRTOD_L) \
+- && !defined(__OpenBSD__)
++ && !defined(__OpenBSD__) && !defined(__NetBSD__)
+ char *orig_localename = NULL;
+ if (locale) {
+ // Protect damaging the global locale from a temporary locale on another thread.
+@@ -334,7 +334,7 @@ static int time_clock_to_frames(mlt_prop
+ #endif
+
+ if (pos) {
+-#if defined(__GLIBC__) || defined(__APPLE__) || defined(HAVE_STRTOD_L) && !defined(__OpenBSD__)
++#if defined(__GLIBC__) || defined(__APPLE__) || defined(HAVE_STRTOD_L) && !defined(__OpenBSD__) && !defined(__NetBSD__)
+ if (locale)
+ seconds = strtod_l(pos + 1, NULL, locale);
+ else
+@@ -350,7 +350,7 @@ static int time_clock_to_frames(mlt_prop
+ minutes = atoi(s);
+ }
+ } else {
+-#if defined(__GLIBC__) || defined(__APPLE__) || defined(HAVE_STRTOD_L) && !defined(__OpenBSD__)
++#if defined(__GLIBC__) || defined(__APPLE__) || defined(HAVE_STRTOD_L) && !defined(__OpenBSD__) && !defined(__NetBSD__)
+ if (locale)
+ seconds = strtod_l(s, NULL, locale);
+ else
+@@ -359,7 +359,7 @@ static int time_clock_to_frames(mlt_prop
+ }
+
+ #if !defined(__GLIBC__) && !defined(__APPLE__) && !defined(_WIN32) && !defined(HAVE_STRTOD_L) \
+- && !defined(__OpenBSD__)
++ && !defined(__OpenBSD__) && !defined(__NetBSD__)
+ if (locale) {
+ // Restore the current locale
+ setlocale(LC_NUMERIC, orig_localename);
+@@ -523,7 +523,7 @@ static double mlt_property_atof(mlt_prop
+ char *end = NULL;
+ double result;
+
+-#if defined(__GLIBC__) || defined(__APPLE__) || defined(HAVE_STRTOD_L) && !defined(__OpenBSD__)
++#if defined(__GLIBC__) || defined(__APPLE__) || defined(HAVE_STRTOD_L) && !defined(__OpenBSD__) && !defined(__NetBSD__)
+ if (locale)
+ result = strtod_l(value, &end, locale);
+ else
+@@ -546,7 +546,7 @@ static double mlt_property_atof(mlt_prop
+ result /= 100.0;
+
+ #if !defined(__GLIBC__) && !defined(__APPLE__) && !defined(_WIN32) && !defined(HAVE_STRTOD_L) \
+- && !defined(__OpenBSD__)
++ && !defined(__OpenBSD__) && !defined(__NetBSD__)
+ if (locale) {
+ // Restore the current locale
+ setlocale(LC_NUMERIC, orig_localename);
+@@ -1157,7 +1157,7 @@ int mlt_property_is_numeric(mlt_property
+ if ((!result && self->types & mlt_prop_string) && self->prop_string) {
+ char *p = NULL;
+
+-#if defined(__GLIBC__) || defined(__APPLE__) || defined(HAVE_STRTOD_L) && !defined(__OpenBSD__)
++#if defined(__GLIBC__) || defined(__APPLE__) || defined(HAVE_STRTOD_L) && !defined(__OpenBSD__) && !defined(__NetBSD__)
+ if (locale)
+ strtod_l(self->prop_string, &p, locale);
+ else
+@@ -1178,7 +1178,7 @@ int mlt_property_is_numeric(mlt_property
+ strtod(self->prop_string, &p);
+
+ #if !defined(__GLIBC__) && !defined(__APPLE__) && !defined(_WIN32) && !defined(HAVE_STRTOD_L) \
+- && !defined(__OpenBSD__)
++ && !defined(__OpenBSD__) && !defined(__NetBSD__)
+ if (locale) {
+ // Restore the current locale
+ setlocale(LC_NUMERIC, orig_localename);
+@@ -1894,7 +1894,7 @@ mlt_rect mlt_property_get_rect(mlt_prope
+ int count = 0;
+
+ #if !defined(__GLIBC__) && !defined(__APPLE__) && !defined(_WIN32) && !defined(HAVE_STRTOD_L) \
+- && !defined(__OpenBSD__)
++ && !defined(__OpenBSD__) && !defined(__NetBSD__)
+ char *orig_localename = NULL;
+ if (locale) {
+ // Protect damaging the global locale from a temporary locale on another thread.
+@@ -1910,7 +1910,7 @@ mlt_rect mlt_property_get_rect(mlt_prope
+
+ while (*value) {
+ double temp;
+-#if defined(__GLIBC__) || defined(__APPLE__) || defined(HAVE_STRTOD_L) && !defined(__OpenBSD__)
++#if defined(__GLIBC__) || defined(__APPLE__) || defined(HAVE_STRTOD_L) && !defined(__OpenBSD__) && !defined(__NetBSD__)
+ if (locale)
+ temp = strtod_l(value, &p, locale);
+ else
+@@ -1952,7 +1952,7 @@ mlt_rect mlt_property_get_rect(mlt_prope
+ }
+
+ #if !defined(__GLIBC__) && !defined(__APPLE__) && !defined(_WIN32) && !defined(HAVE_STRTOD_L) \
+- && !defined(__OpenBSD__)
++ && !defined(__OpenBSD__) && !defined(__NetBSD__)
+ if (locale) {
+ // Restore the current locale
+ setlocale(LC_NUMERIC, orig_localename);
Home |
Main Index |
Thread Index |
Old Index