From: Josef 'Jeff' Sipek Date: Tue, 19 Sep 2017 10:09:07 +0000 (+0300) Subject: lib: [io]_stream_unref(NULL) should be a no-op X-Git-Tag: 2.3.0.rc1~981 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b3fc5293379feb3640b23622bcc8f5f8d7f1e81d;p=thirdparty%2Fdovecot%2Fcore.git lib: [io]_stream_unref(NULL) should be a no-op --- diff --git a/src/lib/istream.c b/src/lib/istream.c index cf5f81a382..ffcf7b640e 100644 --- a/src/lib/istream.c +++ b/src/lib/istream.c @@ -49,7 +49,12 @@ void i_stream_ref(struct istream *stream) void i_stream_unref(struct istream **stream) { - struct istream_private *_stream = (*stream)->real_stream; + struct istream_private *_stream; + + if (*stream == NULL) + return; + + _stream = (*stream)->real_stream; if (_stream->iostream.refcount == 1) { if (_stream->line_str != NULL) diff --git a/src/lib/ostream.c b/src/lib/ostream.c index 175e417b04..abae3b0712 100644 --- a/src/lib/ostream.c +++ b/src/lib/ostream.c @@ -75,7 +75,12 @@ void o_stream_ref(struct ostream *stream) void o_stream_unref(struct ostream **_stream) { - struct ostream *stream = *_stream; + struct ostream *stream; + + if (*_stream == NULL) + return; + + stream = *_stream; if (stream->real_stream->last_errors_not_checked && !stream->real_stream->error_handling_disabled &&