_PyBytesWriter: rename size attribute to min_size
This commit is contained in:
parent
fa7762ec06
commit
53926a1ce2
|
@ -134,8 +134,9 @@ typedef struct {
|
||||||
/* Number of allocated size */
|
/* Number of allocated size */
|
||||||
Py_ssize_t allocated;
|
Py_ssize_t allocated;
|
||||||
|
|
||||||
/* Current size of the buffer (can be smaller than the allocated size) */
|
/* Minimum number of allocated bytes,
|
||||||
Py_ssize_t size;
|
incremented by _PyBytesWriter_Prepare() */
|
||||||
|
Py_ssize_t min_size;
|
||||||
|
|
||||||
/* If non-zero, overallocate the buffer (default: 0). */
|
/* If non-zero, overallocate the buffer (default: 0). */
|
||||||
int overallocate;
|
int overallocate;
|
||||||
|
|
|
@ -3821,7 +3821,7 @@ _PyBytesWriter_Init(_PyBytesWriter *writer)
|
||||||
{
|
{
|
||||||
writer->buffer = NULL;
|
writer->buffer = NULL;
|
||||||
writer->allocated = 0;
|
writer->allocated = 0;
|
||||||
writer->size = 0;
|
writer->min_size = 0;
|
||||||
writer->overallocate = 0;
|
writer->overallocate = 0;
|
||||||
writer->use_small_buffer = 0;
|
writer->use_small_buffer = 0;
|
||||||
#ifdef Py_DEBUG
|
#ifdef Py_DEBUG
|
||||||
|
@ -3874,7 +3874,7 @@ _PyBytesWriter_CheckConsistency(_PyBytesWriter *writer, char *str)
|
||||||
}
|
}
|
||||||
|
|
||||||
start = _PyBytesWriter_AsString(writer);
|
start = _PyBytesWriter_AsString(writer);
|
||||||
assert(0 <= writer->size && writer->size <= writer->allocated);
|
assert(0 <= writer->min_size && writer->min_size <= writer->allocated);
|
||||||
/* the last byte must always be null */
|
/* the last byte must always be null */
|
||||||
assert(start[writer->allocated] == 0);
|
assert(start[writer->allocated] == 0);
|
||||||
|
|
||||||
|
@ -3897,18 +3897,18 @@ _PyBytesWriter_Prepare(_PyBytesWriter *writer, char *str, Py_ssize_t size)
|
||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (writer->size > PY_SSIZE_T_MAX - size) {
|
if (writer->min_size > PY_SSIZE_T_MAX - size) {
|
||||||
PyErr_NoMemory();
|
PyErr_NoMemory();
|
||||||
_PyBytesWriter_Dealloc(writer);
|
_PyBytesWriter_Dealloc(writer);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
writer->size += size;
|
writer->min_size += size;
|
||||||
|
|
||||||
allocated = writer->allocated;
|
allocated = writer->allocated;
|
||||||
if (writer->size <= allocated)
|
if (writer->min_size <= allocated)
|
||||||
return str;
|
return str;
|
||||||
|
|
||||||
allocated = writer->size;
|
allocated = writer->min_size;
|
||||||
if (writer->overallocate
|
if (writer->overallocate
|
||||||
&& allocated <= (PY_SSIZE_T_MAX - allocated / OVERALLOCATE_FACTOR)) {
|
&& allocated <= (PY_SSIZE_T_MAX - allocated / OVERALLOCATE_FACTOR)) {
|
||||||
/* overallocate to limit the number of realloc() */
|
/* overallocate to limit the number of realloc() */
|
||||||
|
@ -3957,7 +3957,7 @@ char*
|
||||||
_PyBytesWriter_Alloc(_PyBytesWriter *writer, Py_ssize_t size)
|
_PyBytesWriter_Alloc(_PyBytesWriter *writer, Py_ssize_t size)
|
||||||
{
|
{
|
||||||
/* ensure that _PyBytesWriter_Alloc() is only called once */
|
/* ensure that _PyBytesWriter_Alloc() is only called once */
|
||||||
assert(writer->size == 0 && writer->buffer == NULL);
|
assert(writer->min_size == 0 && writer->buffer == NULL);
|
||||||
assert(size >= 0);
|
assert(size >= 0);
|
||||||
|
|
||||||
writer->use_small_buffer = 1;
|
writer->use_small_buffer = 1;
|
||||||
|
|
Loading…
Reference in New Issue