mirror of
https://github.com/python/cpython.git
synced 2025-12-31 04:23:37 +00:00
gh-140739: Fix missing exception on allocation failure in BinaryWriter (#143204)
This commit is contained in:
parent
9d92ac1225
commit
54362898f3
1 changed files with 7 additions and 0 deletions
|
|
@ -741,6 +741,7 @@ binary_writer_create(const char *filename, uint64_t sample_interval_us, int comp
|
|||
|
||||
writer->write_buffer = PyMem_Malloc(WRITE_BUFFER_SIZE);
|
||||
if (!writer->write_buffer) {
|
||||
PyErr_NoMemory();
|
||||
goto error;
|
||||
}
|
||||
writer->buffer_size = WRITE_BUFFER_SIZE;
|
||||
|
|
@ -753,14 +754,17 @@ binary_writer_create(const char *filename, uint64_t sample_interval_us, int comp
|
|||
NULL /* Use default allocator */
|
||||
);
|
||||
if (!writer->string_hash) {
|
||||
PyErr_NoMemory();
|
||||
goto error;
|
||||
}
|
||||
writer->strings = PyMem_Malloc(INITIAL_STRING_CAPACITY * sizeof(char *));
|
||||
if (!writer->strings) {
|
||||
PyErr_NoMemory();
|
||||
goto error;
|
||||
}
|
||||
writer->string_lengths = PyMem_Malloc(INITIAL_STRING_CAPACITY * sizeof(size_t));
|
||||
if (!writer->string_lengths) {
|
||||
PyErr_NoMemory();
|
||||
goto error;
|
||||
}
|
||||
writer->string_capacity = INITIAL_STRING_CAPACITY;
|
||||
|
|
@ -773,16 +777,19 @@ binary_writer_create(const char *filename, uint64_t sample_interval_us, int comp
|
|||
NULL /* Use default allocator */
|
||||
);
|
||||
if (!writer->frame_hash) {
|
||||
PyErr_NoMemory();
|
||||
goto error;
|
||||
}
|
||||
writer->frame_entries = PyMem_Malloc(INITIAL_FRAME_CAPACITY * sizeof(FrameEntry));
|
||||
if (!writer->frame_entries) {
|
||||
PyErr_NoMemory();
|
||||
goto error;
|
||||
}
|
||||
writer->frame_capacity = INITIAL_FRAME_CAPACITY;
|
||||
|
||||
writer->thread_entries = PyMem_Malloc(INITIAL_THREAD_CAPACITY * sizeof(ThreadEntry));
|
||||
if (!writer->thread_entries) {
|
||||
PyErr_NoMemory();
|
||||
goto error;
|
||||
}
|
||||
writer->thread_capacity = INITIAL_THREAD_CAPACITY;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue