head 1.1; access; symbols pkgsrc-2026Q1:1.1.0.20 pkgsrc-2026Q1-base:1.1 pkgsrc-2025Q4:1.1.0.18 pkgsrc-2025Q4-base:1.1 pkgsrc-2025Q3:1.1.0.16 pkgsrc-2025Q3-base:1.1 pkgsrc-2025Q2:1.1.0.14 pkgsrc-2025Q2-base:1.1 pkgsrc-2025Q1:1.1.0.12 pkgsrc-2025Q1-base:1.1 pkgsrc-2024Q4:1.1.0.10 pkgsrc-2024Q4-base:1.1 pkgsrc-2024Q3:1.1.0.8 pkgsrc-2024Q3-base:1.1 pkgsrc-2024Q2:1.1.0.6 pkgsrc-2024Q2-base:1.1 pkgsrc-2024Q1:1.1.0.4 pkgsrc-2024Q1-base:1.1 pkgsrc-2023Q4:1.1.0.2 pkgsrc-2023Q4-base:1.1; locks; strict; comment @// @; 1.1 date 2023.11.09.12.30.44; author nros; state Exp; branches; next ; commitid Yj6hWitJtp8dTVLE; desc @@ 1.1 log @opencolorio: remove use of alloca to make the package more portable @ text @$NetBSD$ Use standard malloc and free instead of non-standard alloca, alloca headers and compiler options differentiates on different systems. --- src/apputils/argparse.cpp.orig 2023-11-09 12:01:20.477069989 +0000 +++ src/apputils/argparse.cpp @@@@ -266,10 +266,12 @@@@ ArgOption::invoke_callback () const return 0; // Convert the argv's to char*[] - const char **myargv = (const char **) alloca (argc * sizeof(const char *)); + const char **myargv = (const char **) malloc (argc * sizeof(const char *)); for (int i = 0; i < argc; ++i) myargv[i] = m_argv[i].c_str(); - return invoke_callback (argc, myargv); + int retval = invoke_callback (argc, myargv); + free(myargv); + return retval; } @