History log of /netbsd-current/lib/libform/field.c
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 1.32 13-Apr-2021 christos

- fix memory leak
- xxx questionable allocation
- remove casts
- use sizeof(*var)
- bcopy -> memcpy/memmove


Revision tags: netbsd-9-1-RELEASE phil-wifi-20200421 phil-wifi-20200411 is-mlppp-base phil-wifi-20200406 netbsd-8-2-RELEASE netbsd-9-0-RELEASE netbsd-9-0-RC2 netbsd-9-0-RC1 phil-wifi-20191119 netbsd-9-base phil-wifi-20190609 netbsd-8-1-RELEASE netbsd-8-1-RC1 pgoyette-compat-merge-20190127 pgoyette-compat-20190127 pgoyette-compat-20190118 pgoyette-compat-1226 pgoyette-compat-1126 pgoyette-compat-1020 pgoyette-compat-0930 pgoyette-compat-0906 pgoyette-compat-0728 netbsd-8-0-RELEASE phil-wifi-base pgoyette-compat-0625 netbsd-8-0-RC2 pgoyette-compat-0521 pgoyette-compat-0502 pgoyette-compat-0422 netbsd-8-0-RC1 pgoyette-compat-0415 pgoyette-compat-0407 pgoyette-compat-0330 pgoyette-compat-0322 pgoyette-compat-0315 pgoyette-compat-base matt-nb8-mediatek-base perseant-stdc-iso10646-base netbsd-8-base prg-localcount2-base3 prg-localcount2-base2 prg-localcount2-base1 prg-localcount2-base pgoyette-localcount-20170426 bouyer-socketcan-base1 pgoyette-localcount-20170320 bouyer-socketcan-base pgoyette-localcount-20170107 pgoyette-localcount-20161104 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base
# 1.31 09-Mar-2016 christos

PR/50919: David Binderman: Re-do all the debug stuff in a more sustainable way.


# 1.30 11-Dec-2015 joerg

Counting from 0 to n-1 can go wrong badly, if n is unsigned and zero and
the counter variable is not of a type larger than n. Fixes PR 50490.


# 1.29 07-Sep-2015 joerg

Constify set_field_buffer.


# 1.28 18-Oct-2014 snj

src is too big these days to tolerate superfluous apostrophes. It's
"its", people!


Revision tags: netbsd-7-0-2-RELEASE netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 tls-maxphys-base
# 1.27 21-Nov-2013 christos

branches: 1.27.4;
Simplify previous.


# 1.26 21-Nov-2013 blymn

Correct the allocation for the reformat buffer, thanks to mlelstv for
the fix.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE yamt-pagecache-tag8 netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 agc-symver-base netbsd-6-1-RC2 netbsd-6-1-RC1 yamt-pagecache-base8 netbsd-6-0-1-RELEASE yamt-pagecache-base7 matt-nb6-plus-nbase yamt-pagecache-base6 netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
# 1.25 03-Feb-2010 roy

branches: 1.25.6; 1.25.12;
Userland now builds and uses terminfo instead of termcap.

OK: core@, jdc@


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE jym-xensuspend-nbase netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 jym-xensuspend-base netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 mjf-devfs2-base netbsd-4-0-1-RELEASE wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 wrstuden-fixsa-newbase wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-baseX yamt-pf42-base2 wrstuden-revivesa-base yamt-pf42-base keiichi-mipv6-base matt-armv6-nbase matt-armv6-prevmlocking wrstuden-fixsa-base-1 netbsd-4-0-RELEASE cube-autoconf-base netbsd-4-0-RC5 netbsd-4-0-RC4 netbsd-4-0-RC3 netbsd-4-0-RC2 netbsd-4-0-RC1 matt-armv6-base matt-mips64-base hpcarm-cleanup-base wrstuden-fixsa-base abandoned-netbsd-4-base netbsd-4-base
# 1.24 07-Feb-2006 wiz

We want size_t arguments, so just cast to size_t, instead of casting
to unsigned long and getting a warning on i386.


Revision tags: netbsd-3-1-1-RELEASE netbsd-3-0-3-RELEASE netbsd-3-1-RELEASE netbsd-3-0-2-RELEASE netbsd-3-1-RC4 netbsd-3-1-RC3 netbsd-3-1-RC2 netbsd-3-1-RC1 netbsd-3-0-1-RELEASE netbsd-3-0-RELEASE netbsd-3-0-RC6 netbsd-3-0-RC5 netbsd-3-0-RC4 netbsd-3-0-RC3 netbsd-3-0-RC2 netbsd-3-0-RC1 netbsd-3-base
# 1.23 24-Nov-2004 blymn

* Rewrote internal handling of multiline field line data to fix a bug
where a newly opened line would immediately get wrapped out of existence.
The old method of handling lines in a multiline field did not cope with
this elegantly.

* Added new field flag O_REFORMAT which, when set, returns the field
buffer with newlines inserted where the line wrapped. Previously, there
was no way of preserving the on screen format of a multiline field.

* Added new file gdbinit which contains a macro to verify and print
the multiline field line data structure.

* Bumped libform major number due to changes in the _form_field structure.


Revision tags: netbsd-2-0-3-RELEASE netbsd-2-1-RELEASE netbsd-2-1-RC6 netbsd-2-1-RC5 netbsd-2-1-RC4 netbsd-2-1-RC3 netbsd-2-1-RC2 netbsd-2-1-RC1 netbsd-2-0-2-RELEASE netbsd-2-0-1-RELEASE netbsd-2-base netbsd-2-0-RELEASE netbsd-2-0-RC5 netbsd-2-0-RC4 netbsd-2-0-RC3 netbsd-2-0-RC2 netbsd-2-0-RC1 netbsd-2-0-base
# 1.22 09-Mar-2003 lukem

use __RCSID()


Revision tags: fvdl_fs64_base
# 1.21 09-Aug-2002 blymn

Added extension to interface, set_field_printf which allows a printf
style setting of field buffers.


# 1.20 05-Aug-2002 blymn

set_field_opts and field_opts_on were both using the wrong pointer
resulting in libform crashing if O_STATIC was set on the default field.


# 1.19 03-Aug-2002 blymn

Redraw field when the flags for the field change iff the field is
attached to a form and the form is posted.


# 1.18 31-Jul-2002 blymn

Reposition form cursor after field redrawn when setting a field value,
since the field set may not be the current one. This fixes PR 17533.


# 1.17 29-Jul-2002 blymn

* Fix cursor motion bugs referred to in pr 17480
* Handle cursor motion for justifications other than left justified.


# 1.16 04-Jul-2002 blymn

Prevent set_field_buffer from redrawing field that is attached to a form
when the form is not posted.


Revision tags: netbsd-1-6-PATCH002-RELEASE netbsd-1-6-PATCH002 netbsd-1-6-PATCH002-RC4 netbsd-1-6-PATCH002-RC3 netbsd-1-6-PATCH002-RC2 netbsd-1-6-PATCH002-RC1 netbsd-1-6-PATCH001 netbsd-1-6-PATCH001-RELEASE netbsd-1-6-PATCH001-RC3 netbsd-1-6-PATCH001-RC2 netbsd-1-6-PATCH001-RC1 netbsd-1-6-RELEASE netbsd-1-6-RC3 netbsd-1-6-RC2 netbsd-1-6-RC1 netbsd-1-6-base
# 1.15 20-May-2002 blymn

* Major rework to allow the TAB character in fields.


# 1.14 08-Jul-2001 blymn

Add missing function and make some error returns into proper eti.h
errors.


# 1.13 28-Jun-2001 blymn

Fix limits on dynamic fields.


# 1.12 13-Jun-2001 wiz

withough -> without


# 1.11 04-Jun-2001 blymn

* Only line wrap buffer 0 in set_field_buffer since this is the
only one displayed.


# 1.10 11-May-2001 blymn

* Rototilled internals to make multiline fields work correctly. Some
bugs remain such as vertical scrolling is not working and the field
is not correctly redrawn after being cleared. There are bound to be
others.


# 1.9 06-Apr-2001 blymn

* Fixed horizontal scrolling.


# 1.8 25-Mar-2001 blymn

* truncate field contents to field length if field is or becomes static
* Allow field options to be changed when field posted unless field
is the current one.
* Allow field justification to be changed when field posted unless it
is the current one.
* dynamic_field_info now returns field size in rows and columns if
the field is static - previously this was an error.


# 1.7 16-Feb-2001 blymn

replace strncpy with strlcpy.... 'nuff said.


# 1.6 15-Feb-2001 blymn

Truncate the buffer string to the field buffer size if the field is static.


# 1.5 03-Feb-2001 blymn

Buffer now wrapped and redrawn when buffer is set.


# 1.4 30-Jan-2001 blymn

When buffers are created they are given an empty string instead of just
being set to NULL. Stops us returning a NULL pointer for buffers that
are never set.


# 1.3 16-Jan-2001 blymn

Multiple fixes:

* A debug version of libform will be build if DEBUG_FORMS is defined
* Can no longer edit fields that do not have O_EDIT set
* Changed background attribute to A_NORMAL like ncurses
* Fixed truncation of field contents when content length == field length
* Current field is set to first visible & active field on form post


# 1.2 04-Jan-2001 blymn

* Changed type of userptr to be void * (now matches ncurses)
* Bumped lib major version due to above.
* Changed debug output to go to a file instead of stderr, the file gets
opened when the form is posted iff one is not already open.


# 1.1 17-Dec-2000 blymn

Added early release version of libform - please be gentle.


Revision tags: pgoyette-localcount-20161104 localcount-20160914 pgoyette-localcount-20160806 pgoyette-localcount-20160726 pgoyette-localcount-base
# 1.31 09-Mar-2016 christos

PR/50919: David Binderman: Re-do all the debug stuff in a more sustainable way.


# 1.30 11-Dec-2015 joerg

Counting from 0 to n-1 can go wrong badly, if n is unsigned and zero and
the counter variable is not of a type larger than n. Fixes PR 50490.


# 1.29 07-Sep-2015 joerg

Constify set_field_buffer.


# 1.28 18-Oct-2014 snj

src is too big these days to tolerate superfluous apostrophes. It's
"its", people!


Revision tags: netbsd-7-0-2-RELEASE netbsd-7-0-1-RELEASE netbsd-7-0-RELEASE netbsd-7-0-RC3 netbsd-7-0-RC2 netbsd-7-0-RC1 netbsd-7-base yamt-pagecache-base9 tls-earlyentropy-base riastradh-xf86-video-intel-2-7-1-pre-2-21-15 riastradh-drm2-base3 tls-maxphys-base
# 1.27 21-Nov-2013 christos

branches: 1.27.4;
Simplify previous.


# 1.26 21-Nov-2013 blymn

Correct the allocation for the reformat buffer, thanks to mlelstv for
the fix.


Revision tags: netbsd-6-0-6-RELEASE netbsd-6-1-5-RELEASE yamt-pagecache-tag8 netbsd-6-1-4-RELEASE netbsd-6-0-5-RELEASE netbsd-6-1-3-RELEASE netbsd-6-0-4-RELEASE netbsd-6-1-2-RELEASE netbsd-6-0-3-RELEASE netbsd-6-1-1-RELEASE riastradh-drm2-base2 riastradh-drm2-base1 riastradh-drm2-base netbsd-6-0-2-RELEASE netbsd-6-1-RELEASE netbsd-6-1-RC4 netbsd-6-1-RC3 agc-symver-base netbsd-6-1-RC2 netbsd-6-1-RC1 yamt-pagecache-base8 netbsd-6-0-1-RELEASE yamt-pagecache-base7 matt-nb6-plus-nbase yamt-pagecache-base6 netbsd-6-0-RELEASE netbsd-6-0-RC2 matt-nb6-plus-base netbsd-6-0-RC1 yamt-pagecache-base5 yamt-pagecache-base4 netbsd-6-base yamt-pagecache-base3 yamt-pagecache-base2 yamt-pagecache-base cherry-xenmp-base bouyer-quota2-nbase bouyer-quota2-base matt-mips64-premerge-20101231
# 1.25 03-Feb-2010 roy

branches: 1.25.6; 1.25.12;
Userland now builds and uses terminfo instead of termcap.

OK: core@, jdc@


Revision tags: netbsd-5-2-3-RELEASE netbsd-5-1-5-RELEASE netbsd-5-2-2-RELEASE netbsd-5-1-4-RELEASE netbsd-5-2-1-RELEASE netbsd-5-1-3-RELEASE netbsd-5-2-RELEASE netbsd-5-2-RC1 netbsd-5-1-2-RELEASE netbsd-5-1-1-RELEASE matt-nb5-mips64-premerge-20101231 matt-nb5-pq3-base netbsd-5-1-RELEASE netbsd-5-1-RC4 matt-nb5-mips64-k15 netbsd-5-1-RC3 netbsd-5-1-RC2 netbsd-5-1-RC1 netbsd-5-0-2-RELEASE matt-nb5-mips64-premerge-20091211 matt-premerge-20091211 matt-nb5-mips64-u2-k2-k4-k7-k8-k9 matt-nb4-mips64-k7-u2a-k9b matt-nb5-mips64-u1-k1-k5 netbsd-5-0-1-RELEASE jym-xensuspend-nbase netbsd-5-0-RELEASE netbsd-5-0-RC4 netbsd-5-0-RC3 netbsd-5-0-RC2 jym-xensuspend-base netbsd-5-0-RC1 netbsd-5-base matt-mips64-base2 mjf-devfs2-base netbsd-4-0-1-RELEASE wrstuden-revivesa-base-3 wrstuden-revivesa-base-2 wrstuden-fixsa-newbase wrstuden-revivesa-base-1 yamt-pf42-base4 yamt-pf42-base3 hpcarm-cleanup-nbase yamt-pf42-baseX yamt-pf42-base2 wrstuden-revivesa-base yamt-pf42-base keiichi-mipv6-base matt-armv6-nbase matt-armv6-prevmlocking wrstuden-fixsa-base-1 netbsd-4-0-RELEASE cube-autoconf-base netbsd-4-0-RC5 netbsd-4-0-RC4 netbsd-4-0-RC3 netbsd-4-0-RC2 netbsd-4-0-RC1 matt-armv6-base matt-mips64-base hpcarm-cleanup-base wrstuden-fixsa-base abandoned-netbsd-4-base netbsd-4-base
# 1.24 07-Feb-2006 wiz

We want size_t arguments, so just cast to size_t, instead of casting
to unsigned long and getting a warning on i386.


Revision tags: netbsd-3-1-1-RELEASE netbsd-3-0-3-RELEASE netbsd-3-1-RELEASE netbsd-3-0-2-RELEASE netbsd-3-1-RC4 netbsd-3-1-RC3 netbsd-3-1-RC2 netbsd-3-1-RC1 netbsd-3-0-1-RELEASE netbsd-3-0-RELEASE netbsd-3-0-RC6 netbsd-3-0-RC5 netbsd-3-0-RC4 netbsd-3-0-RC3 netbsd-3-0-RC2 netbsd-3-0-RC1 netbsd-3-base
# 1.23 24-Nov-2004 blymn

* Rewrote internal handling of multiline field line data to fix a bug
where a newly opened line would immediately get wrapped out of existence.
The old method of handling lines in a multiline field did not cope with
this elegantly.

* Added new field flag O_REFORMAT which, when set, returns the field
buffer with newlines inserted where the line wrapped. Previously, there
was no way of preserving the on screen format of a multiline field.

* Added new file gdbinit which contains a macro to verify and print
the multiline field line data structure.

* Bumped libform major number due to changes in the _form_field structure.


Revision tags: netbsd-2-0-3-RELEASE netbsd-2-1-RELEASE netbsd-2-1-RC6 netbsd-2-1-RC5 netbsd-2-1-RC4 netbsd-2-1-RC3 netbsd-2-1-RC2 netbsd-2-1-RC1 netbsd-2-0-2-RELEASE netbsd-2-0-1-RELEASE netbsd-2-base netbsd-2-0-RELEASE netbsd-2-0-RC5 netbsd-2-0-RC4 netbsd-2-0-RC3 netbsd-2-0-RC2 netbsd-2-0-RC1 netbsd-2-0-base
# 1.22 09-Mar-2003 lukem

use __RCSID()


Revision tags: fvdl_fs64_base
# 1.21 09-Aug-2002 blymn

Added extension to interface, set_field_printf which allows a printf
style setting of field buffers.


# 1.20 05-Aug-2002 blymn

set_field_opts and field_opts_on were both using the wrong pointer
resulting in libform crashing if O_STATIC was set on the default field.


# 1.19 03-Aug-2002 blymn

Redraw field when the flags for the field change iff the field is
attached to a form and the form is posted.


# 1.18 31-Jul-2002 blymn

Reposition form cursor after field redrawn when setting a field value,
since the field set may not be the current one. This fixes PR 17533.


# 1.17 29-Jul-2002 blymn

* Fix cursor motion bugs referred to in pr 17480
* Handle cursor motion for justifications other than left justified.


# 1.16 04-Jul-2002 blymn

Prevent set_field_buffer from redrawing field that is attached to a form
when the form is not posted.


Revision tags: netbsd-1-6-PATCH002-RELEASE netbsd-1-6-PATCH002 netbsd-1-6-PATCH002-RC4 netbsd-1-6-PATCH002-RC3 netbsd-1-6-PATCH002-RC2 netbsd-1-6-PATCH002-RC1 netbsd-1-6-PATCH001 netbsd-1-6-PATCH001-RELEASE netbsd-1-6-PATCH001-RC3 netbsd-1-6-PATCH001-RC2 netbsd-1-6-PATCH001-RC1 netbsd-1-6-RELEASE netbsd-1-6-RC3 netbsd-1-6-RC2 netbsd-1-6-RC1 netbsd-1-6-base
# 1.15 20-May-2002 blymn

* Major rework to allow the TAB character in fields.


# 1.14 08-Jul-2001 blymn

Add missing function and make some error returns into proper eti.h
errors.


# 1.13 28-Jun-2001 blymn

Fix limits on dynamic fields.


# 1.12 13-Jun-2001 wiz

withough -> without


# 1.11 04-Jun-2001 blymn

* Only line wrap buffer 0 in set_field_buffer since this is the
only one displayed.


# 1.10 11-May-2001 blymn

* Rototilled internals to make multiline fields work correctly. Some
bugs remain such as vertical scrolling is not working and the field
is not correctly redrawn after being cleared. There are bound to be
others.


# 1.9 06-Apr-2001 blymn

* Fixed horizontal scrolling.


# 1.8 25-Mar-2001 blymn

* truncate field contents to field length if field is or becomes static
* Allow field options to be changed when field posted unless field
is the current one.
* Allow field justification to be changed when field posted unless it
is the current one.
* dynamic_field_info now returns field size in rows and columns if
the field is static - previously this was an error.


# 1.7 16-Feb-2001 blymn

replace strncpy with strlcpy.... 'nuff said.


# 1.6 15-Feb-2001 blymn

Truncate the buffer string to the field buffer size if the field is static.


# 1.5 03-Feb-2001 blymn

Buffer now wrapped and redrawn when buffer is set.


# 1.4 30-Jan-2001 blymn

When buffers are created they are given an empty string instead of just
being set to NULL. Stops us returning a NULL pointer for buffers that
are never set.


# 1.3 16-Jan-2001 blymn

Multiple fixes:

* A debug version of libform will be build if DEBUG_FORMS is defined
* Can no longer edit fields that do not have O_EDIT set
* Changed background attribute to A_NORMAL like ncurses
* Fixed truncation of field contents when content length == field length
* Current field is set to first visible & active field on form post


# 1.2 04-Jan-2001 blymn

* Changed type of userptr to be void * (now matches ncurses)
* Bumped lib major version due to above.
* Changed debug output to go to a file instead of stderr, the file gets
opened when the form is posted iff one is not already open.


# 1.1 17-Dec-2000 blymn

Added early release version of libform - please be gentle.