diff options
author | Steve Bennett <steveb@workware.net.au> | 2016-10-09 08:54:46 +1000 |
---|---|---|
committer | Steve Bennett <steveb@workware.net.au> | 2016-10-09 08:56:55 +1000 |
commit | 41c5ff1809f5d84569c3f435afc2db38f768791c (patch) | |
tree | c1482865cb4b5292dafc85afbe7360aed4761a16 /jim-zlib.c | |
parent | 1b0cdc3e669b69281371ab77893792d2d8621af9 (diff) | |
download | jimtcl-41c5ff1809f5d84569c3f435afc2db38f768791c.zip jimtcl-41c5ff1809f5d84569c3f435afc2db38f768791c.tar.gz jimtcl-41c5ff1809f5d84569c3f435afc2db38f768791c.tar.bz2 |
jim.c: Fix Object leak in zlib support
Change Jim_SetResultFormatted() to increment/decrement the ref count
of any %#s parameters. This allows zero refcount objects to be passed in
and be freed automatically.
Reported-by: Evan Hunter <evan@ozhiker.com>
Signed-off-by: Steve Bennett <steveb@workware.net.au>
Diffstat (limited to 'jim-zlib.c')
-rw-r--r-- | jim-zlib.c | 3 |
1 files changed, 1 insertions, 2 deletions
@@ -44,8 +44,7 @@ static int JimZlibCheckBufSize(Jim_Interp *interp, jim_wide bufsiz) { if ((bufsiz <= 0) || (bufsiz > INT_MAX)) { - Jim_SetResultString(interp, "buffer size must be 0 to ", -1); - Jim_AppendObj(interp, Jim_GetResult(interp), Jim_NewIntObj(interp, INT_MAX)); + Jim_SetResultFormatted(interp, "buffer size must be 0 to %#s", Jim_NewIntObj(interp, INT_MAX)); return JIM_ERR; } return JIM_OK; |