Home | History | Annotate | Download | only in libterminfo
History log of /src/lib/libterminfo/tparm.c
RevisionDateAuthorComments
 1.19  27-Aug-2021  rillig libterminfo: remove redundant lint annotations

Since 2021-02-28, lint does not warn about constant conditions if they
involve sizeof.

The fallthrough annotations have never been necessary for case labels
that directly follow each other.
 1.18  27-Mar-2020  christos As described in tech-userlevel:
- Modify the writing code to only write entries in the new
format for the terminal descriptions that require it.
- Store new format entries as <name>@v3
- Store old format entries with clamped values as <name> for
backwards compatibility
- Lookup first <name>@v3 and then <name> if that is not found.
- Don't create terminfo2 anymore; old programs keep working with
clamped entries, and new programs be able to use the wide
fields with using the original db file.
 1.17  04-May-2017  roy branches: 1.17.10;
Clean up some compile warnings.
 1.16  25-Nov-2015  christos branches: 1.16.6;
We have the max length; use snprintf.
 1.15  07-Jun-2013  roy branches: 1.15.6; 1.15.10;
Whitespace
 1.14  25-Jan-2013  roy Provide a disabled implentation of tlparm and ti_tlparm for completeness.
This also improves the readability of _ti_tiparm.
 1.13  25-Jan-2013  roy For platforms where we cannot fit a char * into a long, return NULL
and set errno to ENOTSUPP.
 1.12  24-Jan-2013  roy Move the strings vs long analysis to a private function, but allow
tput(1) to use it so we can work with string parameters to capabilities.
 1.11  24-Jan-2013  roy As tparm accepts longs we should treat them as long during expansion.
Also, fix the ~ and ! logic.
 1.10  23-Jan-2013  roy Fix %t logic and don't output any %; or %e parts.
Fixes PR lib/47490 thanks to Julien Oster
 1.9  30-Nov-2012  msaitoh Fix off by one error.
 1.8  02-Jun-2012  roy branches: 1.8.2;
Ensure that we request a buffer big enough, although with the current
terminfo specification this should never happen.
Correctly return NULL when realloc(3) fails.
 1.7  03-Oct-2011  roy branches: 1.7.2; 1.7.4; 1.7.8;
Fix tparm.
As we now go via tiparm, store nums as int to conserve memory.
 1.6  03-Oct-2011  roy Correctly use ti_ instead of t_ for our extensions as per the man page.
Replace vtparm with tiparm.
tiparm is also non standard, but has been proposed at least.
 1.5  10-Mar-2011  roy Do our best to process invalid terminfo strings instead of just
returning NULL.
 1.4  10-Mar-2011  roy Fix two other off-by-one errors when processing %P and %g commands.
 1.3  10-Mar-2011  roy Fix an off-by-one error when processing embedded values.
 1.2  22-Sep-2010  roy Our API just uses typedefs, so don't use the struct symbol which will avoid
any potential conflicts with userland.
 1.1  03-Feb-2010  roy Import my terminfo implementation.
This uses the ncurses terminal definitions.

OK: core@, jdc@
 1.7.8.1  11-Dec-2012  riz Pull up following revision(s) (requested by msaitoh in ticket #734):
lib/libterminfo/tparm.c: revision 1.9
Fix off by one error.
 1.7.4.4  14-Mar-2013  riz Pull up following revision(s) (requested by roy in ticket #835):
lib/libterminfo/tparm.c: revision 1.8
Ensure that we request a buffer big enough, although with the current
terminfo specification this should never happen.
Correctly return NULL when realloc(3) fails.
 1.7.4.3  14-Mar-2013  riz Pull up following revision(s) (requested by roy in ticket #835):
lib/libterminfo/terminfo.3: revision 1.9
lib/libterminfo/term.h: revision 1.13
lib/libterminfo/term.h: revision 1.14
usr.bin/tput/Makefile: revision 1.11
lib/libterminfo/terminfo.3: revision 1.10
lib/libterminfo/genman: revision 1.5
lib/libterminfo/term_private.h: revision 1.11
usr.bin/tput/tput.c: revision 1.23
usr.bin/tput/tput.c: revision 1.24
usr.bin/tput/tput.c: revision 1.25
lib/libterminfo/tparm.c: revision 1.11
lib/libterminfo/Makefile.hash: revision 1.7
usr.bin/tput/tput.c: revision 1.26
lib/libterminfo/tparm.c: revision 1.12
lib/libterminfo/tparm.c: revision 1.13
lib/libterminfo/tparm.c: revision 1.14
lib/libterminfo/terminfo.5.in: revision 1.18
As tparm accepts longs we should treat them as long during expansion.
Also, fix the ~ and ! logic.
Move the strings vs long analysis to a private function, but allow
tput(1) to use it so we can work with string parameters to
capabilities.
Fix building our terminals with a non standard NETBSDSRCDIR, PR
lib/46793.
Thanks to Bernd Ernesti.
Remove debug accidently commited.
If char * > long then print a suitable error when passing a string
parameter.
For platforms where we cannot fit a char * into a long, return NULL
and set errno to ENOTSUPP.
Add descriptions for terminfo keys to term.h
These are extracted by genman and placed into the compiled terminfo.5
Fixes PR lib/47090
Provide a disabled implentation of tlparm and ti_tlparm for
completeness.
This also improves the readability of _ti_tiparm.
Use putp(3) to output our strings.
Fixes PR lib/47532
 1.7.4.2  14-Mar-2013  riz Pull up following revision(s) (requested by roy in ticket #834):
lib/libterminfo/tparm.c: revision 1.10
Fix %t logic and don't output any %; or %e parts.
Fixes PR lib/47490 thanks to Julien Oster
 1.7.4.1  11-Dec-2012  riz Pull up following revision(s) (requested by msaitoh in ticket #734):
lib/libterminfo/tparm.c: revision 1.9
Fix off by one error.
 1.7.2.3  22-May-2014  yamt sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs. ("Protocol error: too many arguments")
 1.7.2.2  16-Jan-2013  yamt sync with (a bit old) head
 1.7.2.1  30-Oct-2012  yamt sync with head
 1.8.2.2  23-Jun-2013  tls resync from head
 1.8.2.1  25-Feb-2013  tls resync with head
 1.15.10.1  18-Jan-2017  skrll Sync with netbsd-5
 1.15.6.1  12-Dec-2016  snj Pull up following revision(s) (requested by riastradh in ticket #1307):
lib/libterminfo/curterm.c: revisions 1.11, 1.12
lib/libterminfo/term.c: revisions 1.18-1.20
lib/libterminfo/termcap.c: revisions 1.18, 1.19
lib/libterminfo/terminfo.3: revision 1.13
lib/libterminfo/tparm.c: revision 1.16
terminfo.3: fix ti_puts prototype
--
PR/50092: Fix memory leak.
--
PR/50092: Rin Okuyama: Fix memory leak.
--
We have the max length; use snprintf.
--
From PR/50092:
- handle calling _ti_readterm with an existing initialized terminal
- simplify free code
Also:
- fix an inconsistency in userdefs count computation
--
Always copy the area buffer, even when the length was the same
(from Rin Okuyama)
--
- if we are freeing cur_term, set it to NULL.
- preserve and free "last" properly.
--
off-by-one in memcpy. Found by ASAN (Carsten Kunze)
 1.16.6.1  11-May-2017  pgoyette Sync with HEAD
 1.17.10.1  08-Apr-2020  martin Merge changes from current as of 20200406

RSS XML Feed