Skip to content

Commit 6307895

Browse files
committed
Grow() can now shrink the buffer
1 parent ed00f95 commit 6307895

1 file changed

Lines changed: 2 additions & 3 deletions

File tree

Objects/bytesobject.c

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3996,11 +3996,10 @@ _PyBytesWriter_ResizeAndUpdatePointer(PyBytesWriter *writer, Py_ssize_t size,
39963996
int
39973997
PyBytesWriter_Grow(PyBytesWriter *writer, Py_ssize_t size)
39983998
{
3999-
if (size < 0) {
4000-
PyErr_SetString(PyExc_ValueError, "size must be >= 0");
3999+
if (size < 0 && writer->size + size < 0) {
4000+
PyErr_SetString(PyExc_ValueError, "invalid size");
40014001
return -1;
40024002
}
4003-
40044003
if (size > PY_SSIZE_T_MAX - writer->size) {
40054004
PyErr_NoMemory();
40064005
return -1;

0 commit comments

Comments
 (0)