96 |
96 |
97 int cxBufferEnableFlushing( |
97 int cxBufferEnableFlushing( |
98 CxBuffer *buffer, |
98 CxBuffer *buffer, |
99 CxBufferFlushConfig config |
99 CxBufferFlushConfig config |
100 ) { |
100 ) { |
101 buffer->flush = malloc(sizeof(CxBufferFlushConfig)); |
101 buffer->flush = cxMalloc(cxDefaultAllocator, sizeof(CxBufferFlushConfig)); |
102 if (buffer->flush == NULL) return -1; // LCOV_EXCL_LINE |
102 if (buffer->flush == NULL) return -1; // LCOV_EXCL_LINE |
103 memcpy(buffer->flush, &config, sizeof(CxBufferFlushConfig)); |
103 memcpy(buffer->flush, &config, sizeof(CxBufferFlushConfig)); |
104 return 0; |
104 return 0; |
105 } |
105 } |
106 |
106 |
107 void cxBufferDestroy(CxBuffer *buffer) { |
107 void cxBufferDestroy(CxBuffer *buffer) { |
108 if (buffer->flags & CX_BUFFER_FREE_CONTENTS) { |
108 if (buffer->flags & CX_BUFFER_FREE_CONTENTS) { |
109 cxFree(buffer->allocator, buffer->bytes); |
109 cxFree(buffer->allocator, buffer->bytes); |
110 } |
110 } |
111 free(buffer->flush); |
111 cxFree(cxDefaultAllocator, buffer->flush); |
112 memset(buffer, 0, sizeof(CxBuffer)); |
112 memset(buffer, 0, sizeof(CxBuffer)); |
113 } |
113 } |
114 |
114 |
115 CxBuffer *cxBufferCreate( |
115 CxBuffer *cxBufferCreate( |
116 void *space, |
116 void *space, |