diff options
author | Victor Stinner <victor.stinner@gmail.com> | 2015-10-12 11:12:54 (GMT) |
---|---|---|
committer | Victor Stinner <victor.stinner@gmail.com> | 2015-10-12 11:12:54 (GMT) |
commit | c29e29bed1ea1efc1a0cd3178fac96be4d763ecf (patch) | |
tree | 2066552a3753b1d77a8bbee66f806af18c5058b0 /Objects | |
parent | b031eaee3b099cfbfaa66ddddebf7b805fc87ea4 (diff) | |
download | cpython-c29e29bed1ea1efc1a0cd3178fac96be4d763ecf.zip cpython-c29e29bed1ea1efc1a0cd3178fac96be4d763ecf.tar.gz cpython-c29e29bed1ea1efc1a0cd3178fac96be4d763ecf.tar.bz2 |
Relax _PyBytesWriter API
Don't require _PyBytesWriter pointer to be a "char *". Same change for
_PyBytesWriter_WriteBytes() parameter.
For example, binascii uses "unsigned char*".
Diffstat (limited to 'Objects')
-rw-r--r-- | Objects/bytesobject.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/Objects/bytesobject.c b/Objects/bytesobject.c index a75c54d..4b31271 100644 --- a/Objects/bytesobject.c +++ b/Objects/bytesobject.c @@ -3923,8 +3923,8 @@ _PyBytesWriter_CheckConsistency(_PyBytesWriter *writer, char *str) #endif } -char* -_PyBytesWriter_Prepare(_PyBytesWriter *writer, char *str, Py_ssize_t size) +void* +_PyBytesWriter_Prepare(_PyBytesWriter *writer, void *str, Py_ssize_t size) { Py_ssize_t allocated, pos; @@ -3992,7 +3992,7 @@ _PyBytesWriter_Prepare(_PyBytesWriter *writer, char *str, Py_ssize_t size) /* Allocate the buffer to write size bytes. Return the pointer to the beginning of buffer data. Raise an exception and return NULL on error. */ -char* +void* _PyBytesWriter_Alloc(_PyBytesWriter *writer, Py_ssize_t size) { /* ensure that _PyBytesWriter_Alloc() is only called once */ @@ -4011,7 +4011,7 @@ _PyBytesWriter_Alloc(_PyBytesWriter *writer, Py_ssize_t size) } PyObject * -_PyBytesWriter_Finish(_PyBytesWriter *writer, char *str) +_PyBytesWriter_Finish(_PyBytesWriter *writer, void *str) { Py_ssize_t pos; PyObject *result; @@ -4033,13 +4033,12 @@ _PyBytesWriter_Finish(_PyBytesWriter *writer, char *str) else { result = PyBytes_FromStringAndSize(writer->small_buffer, pos); } - return result; } -char* -_PyBytesWriter_WriteBytes(_PyBytesWriter *writer, char *str, - char *bytes, Py_ssize_t size) +void* +_PyBytesWriter_WriteBytes(_PyBytesWriter *writer, void *str, + const void *bytes, Py_ssize_t size) { str = _PyBytesWriter_Prepare(writer, str, size); if (str == NULL) |