Merge pull request #203 from kcwu/fix-str-stream-leak

fix StrStream memory leak
This commit is contained in:
Tatsuya Kinoshita
2021-10-27 00:39:55 +09:00
committed by GitHub

View File

@@ -185,12 +185,16 @@ int
ISclose(InputStream stream)
{
MySignalHandler(*prevtrap) ();
if (stream == NULL || stream->base.close == NULL ||
stream->base.type & IST_UNCLOSE)
return -1;
prevtrap = mySignal(SIGINT, SIG_IGN);
stream->base.close (stream->base.handle);
mySignal(SIGINT, prevtrap);
if (stream == NULL)
return -1;
if (stream->base.close != NULL) {
if (stream->base.type & IST_UNCLOSE) {
return -1;
}
prevtrap = mySignal(SIGINT, SIG_IGN);
stream->base.close (stream->base.handle);
mySignal(SIGINT, prevtrap);
}
xfree(stream->base.stream.buf);
xfree(stream);
return 0;