head 1.1; access; symbols pkgsrc-2026Q1:1.1.0.16 pkgsrc-2026Q1-base:1.1 pkgsrc-2025Q4:1.1.0.14 pkgsrc-2025Q4-base:1.1 pkgsrc-2025Q3:1.1.0.12 pkgsrc-2025Q3-base:1.1 pkgsrc-2025Q2:1.1.0.10 pkgsrc-2025Q2-base:1.1 pkgsrc-2025Q1:1.1.0.8 pkgsrc-2025Q1-base:1.1 pkgsrc-2024Q4:1.1.0.6 pkgsrc-2024Q4-base:1.1 pkgsrc-2024Q3:1.1.0.4 pkgsrc-2024Q3-base:1.1 pkgsrc-2024Q2:1.1.0.2 pkgsrc-2024Q2-base:1.1; locks; strict; comment @// @; 1.1 date 2024.04.07.04.24.23; author pho; state Exp; branches; next ; commitid PYb4Z3SLBHEqna5F; desc @@ 1.1 log @inputmethod/uim: Fix build on NetBSD 10 @ text @$NetBSD$ Don't use alloca(3). It's non-standard and is easily avoidable these days. TODO: Upstream this. --- xim/ximic.cpp.orig 2024-04-07 04:12:30.183013562 +0000 +++ xim/ximic.cpp @@@@ -49,10 +49,6 @@@@ #include "util.h" #include "uim/uim-scm.h" - -#ifdef HAVE_ALLOCA_H -# include -#endif char invalid_style_msg[]= "Client requested unsupported input style"; @@@@ -214,7 +210,7 @@@@ void icxatr::set_atr(C16 id, C8 *val, in case ICA_FontSet: { int len = readC16(val, o); - char *new_fsn = (char *)alloca(len + 1); + char new_fsn[len + 1]; new_fsn[len] = '\0'; memcpy(new_fsn, &val[2], len); if (font_set_name && !strcmp(font_set_name, new_fsn)) @@@@ -497,8 +493,7 @@@@ void XimIC::setICAttrs(void *val, int le atr_len = readC16(&p[i], byte_order); i += 2; - unsigned char *q; - q = (unsigned char *)alloca(atr_len + pad4(atr_len)); + unsigned char q[atr_len + pad4(atr_len)]; int j; for (j = 0; j < atr_len + pad4(atr_len); j++, i++) { @@@@ -691,8 +686,7 @@@@ XimIC *create_ic(Connection *c, RxPacket p->rewind(); p->getC16(); // discard int atr_len = p->getC16(); - unsigned char *v; - v = (unsigned char *)alloca(atr_len); + unsigned char v[atr_len]; int i; for (i = 0; i < atr_len; i++) { v[i] = p->getC8(); @