Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: basesrc/lib/libterm



Module Name:    basesrc
Committed By:   christos
Date:           Wed Oct 31 21:52:17 UTC 2001

Modified Files:
        basesrc/lib/libterm: termcap.c

Log Message:
PR/10266: t_getstr() leaks memory. This PR will stay in feedback
until the problem gets addressed properly. The following fix
is a stopgap measure to stop the leaking :-(

I fixed the t_getstr() memory leak problem, but that instantly
revealed a problem in t_agetstr() which is an extremely broken
interface. It realloc's memory, potentially moving the area where
it returned pointers into in previous calls. This function needs
to be removed and or changed. I added a horrible work-around for
now, but I will revisit the problem shortly. In the meantime nobody
should be using the t_agetstr() API, and I'll be fixing the rest
of the programs and or the API when I figure out the best solution...
This is t_agetstr() is used by:

        games/hack/hack.termcap.c
        games/larn/io.c
        games/tetris/screen.c
        lib/libterm/termcap.c
        lib/libterm/termcap.h
        libexec/getty/main.c
        usr.bin/top/screen.c
        usr.bin/ul/ul.c


To generate a diff of this commit:
cvs rdiff -r1.38 -r1.39 basesrc/lib/libterm/termcap.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index