X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=form%2Ffty_enum.c;h=4b953dfa16069d3ff54f8804fdb067053e99ace6;hp=41ff585cdde5a92b944fdb7f0501aa964e624327;hb=d6c65d287166c3105ece4a5e3f3ec7af5a5f26a3;hpb=c6540b9c89dda1a6a8bd681726831e8924176504 diff --git a/form/fty_enum.c b/form/fty_enum.c index 41ff585c..4b953dfa 100644 --- a/form/fty_enum.c +++ b/form/fty_enum.c @@ -1,5 +1,6 @@ /**************************************************************************** - * Copyright (c) 1998-2009,2010 Free Software Foundation, Inc. * + * Copyright 2020 Thomas E. Dickey * + * Copyright 1998-2009,2010 Free Software Foundation, Inc. * * * * Permission is hereby granted, free of charge, to any person obtaining a * * copy of this software and associated documentation files (the * @@ -34,7 +35,7 @@ #include "form.priv.h" -MODULE_ID("$Id: fty_enum.c,v 1.25 2010/01/23 21:14:36 tom Exp $") +MODULE_ID("$Id: fty_enum.c,v 1.28 2020/05/24 01:40:20 anonymous.maarten Exp $") typedef struct { @@ -102,12 +103,14 @@ Generic_Enum_Type(void *arg) argp->kwds = typeMalloc(char *, cnt + 1); kp = kwds; - kptarget = argp->kwds; - while (kptarget && kp && (*kp)) + if ((kptarget = argp->kwds) != 0) { - (*kptarget++) = strdup(*kp++); + while (kp && (*kp)) + { + (*kptarget++) = strdup(*kp++); + } + *kptarget = (char *)0; } - *kptarget = (char *)0; } } } @@ -164,12 +167,14 @@ Copy_Enum_Type(const void *argp) char **kp = ap->kwds; result->kwds = typeMalloc(char *, 1 + ap->count); - kptarget = result->kwds; - while (kptarget && kp && (*kp)) + if ((kptarget = result->kwds) != 0) { - (*kptarget++) = strdup(*kp++); + while (kp && (*kp)) + { + (*kptarget++) = strdup(*kp++); + } + *kptarget = (char *)0; } - *kptarget = (char *)0; } } } @@ -420,7 +425,7 @@ static FIELDTYPE typeENUM = #endif }; -NCURSES_EXPORT_VAR(FIELDTYPE *) +FORM_EXPORT_VAR(FIELDTYPE *) TYPE_ENUM = &typeENUM; #if NCURSES_INTEROP_FUNCS @@ -428,7 +433,7 @@ TYPE_ENUM = &typeENUM; programming languages with restictions on interop with C level constructs (e.g. variable access or va_list + ellipsis constructs) */ -NCURSES_EXPORT(FIELDTYPE *) +FORM_EXPORT(FIELDTYPE *) _nc_TYPE_ENUM(void) { return TYPE_ENUM;