/****************************************************************************
- * Copyright (c) 1998-2013,2019 Free Software Foundation, Inc. *
+ * Copyright 2019,2020 Thomas E. Dickey *
+ * Copyright 1998-2012,2013 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 *
#include "form.priv.h"
-MODULE_ID("$Id: fld_max.c,v 1.14 2019/01/19 21:26:06 Leon.Winter Exp $")
+MODULE_ID("$Id: fld_max.c,v 1.17 2020/05/24 01:40:20 anonymous.maarten Exp $")
/*---------------------------------------------------------------------------
| Facility : libnform
| Return Values : E_OK - success
| E_BAD_ARGUMENT - invalid argument
+--------------------------------------------------------------------------*/
-NCURSES_EXPORT(int)
+FORM_EXPORT(int)
set_max_field(FIELD *field, int maxgrow)
{
T((T_CALLED("set_max_field(%p,%d)"), (void *)field, maxgrow));
RETURN(E_BAD_ARGUMENT);
}
field->maxgrow = maxgrow;
- if (Field_Has_Option(field, O_INPUT_LIMIT) && field->dcols > maxgrow)
+ /* shrink */
+ if (maxgrow > 0 && Field_Has_Option(field, O_INPUT_LIMIT) &&
+ field->dcols > maxgrow)
field->dcols = maxgrow;
ClrStatus(field, _MAY_GROW);
if (!((unsigned)field->opts & O_STATIC))