From: Benjamin Peterson Date: Thu, 6 Oct 2016 06:29:07 +0000 (-0700) Subject: do not leak buffer if mmap is not writable X-Git-Tag: v3.6.0b2~40^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=3776836f675f3d52b21713a45460f09a03af15df;p=python do not leak buffer if mmap is not writable --- diff --git a/Modules/mmapmodule.c b/Modules/mmapmodule.c index 6e2db6134c..e01de441bd 100644 --- a/Modules/mmapmodule.c +++ b/Modules/mmapmodule.c @@ -383,8 +383,10 @@ mmap_write_method(mmap_object *self, if (!PyArg_ParseTuple(args, "y*:write", &data)) return(NULL); - if (!is_writable(self)) + if (!is_writable(self)) { + PyBuffer_Release(&data); return NULL; + } if (self->pos > self->size || self->size - self->pos < data.len) { PyBuffer_Release(&data);