Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 1 addition & 3 deletions Modules/_bz2module.c
Original file line number Diff line number Diff line change
Expand Up @@ -669,9 +669,7 @@ _bz2_BZ2Decompressor_impl(PyTypeObject *type)
self->bzs_avail_in_real = 0;
self->input_buffer = NULL;
self->input_buffer_size = 0;
self->unused_data = PyBytes_FromStringAndSize(NULL, 0);
if (self->unused_data == NULL)
goto error;
self->unused_data = Py_GetConstant(Py_CONSTANT_EMPTY_BYTES);

bzerror = BZ2_bzDecompressInit(&self->bzs, 0, 0);
if (catch_bz2_error(bzerror))
Expand Down
5 changes: 1 addition & 4 deletions Modules/_dbmmodule.c
Original file line number Diff line number Diff line change
Expand Up @@ -450,10 +450,7 @@ _dbm_dbm_setdefault_impl(dbmobject *self, PyTypeObject *cls, const char *key,
return PyBytes_FromStringAndSize(val.dptr, val.dsize);
}
if (default_value == NULL) {
default_value = PyBytes_FromStringAndSize(NULL, 0);
if (default_value == NULL) {
return NULL;
}
default_value = Py_GetConstant(Py_CONSTANT_EMPTY_BYTES);
val.dptr = NULL;
val.dsize = 0;
}
Expand Down
5 changes: 1 addition & 4 deletions Modules/_lzmamodule.c
Original file line number Diff line number Diff line change
Expand Up @@ -1263,10 +1263,7 @@ _lzma_LZMADecompressor_impl(PyTypeObject *type, int format,
self->needs_input = 1;
self->input_buffer = NULL;
self->input_buffer_size = 0;
Py_XSETREF(self->unused_data, PyBytes_FromStringAndSize(NULL, 0));
if (self->unused_data == NULL) {
goto error;
}
Py_XSETREF(self->unused_data, Py_GetConstant(Py_CONSTANT_EMPTY_BYTES));

switch (format) {
case FORMAT_AUTO:
Expand Down
8 changes: 2 additions & 6 deletions Modules/zlibmodule.c
Original file line number Diff line number Diff line change
Expand Up @@ -1009,7 +1009,7 @@ zlib_Compress_flush_impl(compobject *self, PyTypeObject *cls, int mode)
/* Flushing with Z_NO_FLUSH is a no-op, so there's no point in
doing any work at all; just return an empty string. */
if (mode == Z_NO_FLUSH) {
return PyBytes_FromStringAndSize(NULL, 0);
return Py_GetConstant(Py_CONSTANT_EMPTY_BYTES);
}

ENTER_ZLIB(self);
Expand Down Expand Up @@ -1764,11 +1764,7 @@ zlib__ZlibDecompressor_impl(PyTypeObject *type, int wbits, PyObject *zdict)
self->zst.zfree = PyZlib_Free;
self->zst.next_in = NULL;
self->zst.avail_in = 0;
self->unused_data = PyBytes_FromStringAndSize(NULL, 0);
if (self->unused_data == NULL) {
Py_CLEAR(self);
return NULL;
}
self->unused_data = Py_GetConstant(Py_CONSTANT_EMPTY_BYTES);
self->lock = PyThread_allocate_lock();
if (self->lock == NULL) {
Py_DECREF(self);
Expand Down
4 changes: 2 additions & 2 deletions Objects/bytesobject.c
Original file line number Diff line number Diff line change
Expand Up @@ -2781,7 +2781,7 @@ bytes_new_impl(PyTypeObject *type, PyObject *x, const char *encoding,
"errors without a string argument");
return NULL;
}
bytes = PyBytes_FromStringAndSize(NULL, 0);
bytes = Py_GetConstant(Py_CONSTANT_EMPTY_BYTES);
}
else if (encoding != NULL) {
/* Encode via the codec registry */
Expand Down Expand Up @@ -3676,7 +3676,7 @@ _PyBytesWriter_Finish(_PyBytesWriter *writer, void *str)
if (size == 0 && !writer->use_bytearray) {
Py_CLEAR(writer->buffer);
/* Get the empty byte string singleton */
result = PyBytes_FromStringAndSize(NULL, 0);
result = Py_GetConstant(Py_CONSTANT_EMPTY_BYTES);
}
else if (writer->use_small_buffer) {
if (writer->use_bytearray) {
Expand Down
8 changes: 4 additions & 4 deletions Objects/unicodeobject.c
Original file line number Diff line number Diff line change
Expand Up @@ -4913,7 +4913,7 @@ _PyUnicode_EncodeUTF7(PyObject *str,
len = PyUnicode_GET_LENGTH(str);

if (len == 0)
return PyBytes_FromStringAndSize(NULL, 0);
return Py_GetConstant(Py_CONSTANT_EMPTY_BYTES);

/* It might be possible to tighten this worst case */
if (len > PY_SSIZE_T_MAX / 8)
Expand Down Expand Up @@ -6914,7 +6914,7 @@ PyUnicode_AsUnicodeEscapeString(PyObject *unicode)

len = PyUnicode_GET_LENGTH(unicode);
if (len == 0) {
return PyBytes_FromStringAndSize(NULL, 0);
return Py_GetConstant(Py_CONSTANT_EMPTY_BYTES);
}

kind = PyUnicode_KIND(unicode);
Expand Down Expand Up @@ -7364,7 +7364,7 @@ unicode_encode_ucs1(PyObject *unicode,
/* allocate enough for a simple encoding without
replacements, if we need more, we'll resize */
if (size == 0)
return PyBytes_FromStringAndSize(NULL, 0);
return Py_GetConstant(Py_CONSTANT_EMPTY_BYTES);

_PyBytesWriter_Init(&writer);
str = _PyBytesWriter_Alloc(&writer, size);
Expand Down Expand Up @@ -8305,7 +8305,7 @@ encode_code_page(int code_page,
}

if (len == 0)
return PyBytes_FromStringAndSize(NULL, 0);
return Py_GetConstant(Py_CONSTANT_EMPTY_BYTES);

offset = 0;
do
Expand Down
Loading