MCPcopy Create free account
hub / github.com/DeusData/codebase-memory-mcp / profile_buffer_reserve

Function profile_buffer_reserve

src/cli/agent_profiles.c:88–113  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

86}
87
88static bool profile_buffer_reserve(profile_buffer_t *buffer, size_t extra) {
89 if (buffer->failed || extra > SIZE_MAX - buffer->length - 1U) {
90 buffer->failed = true;
91 return false;
92 }
93 size_t required = buffer->length + extra + 1U;
94 if (required <= buffer->capacity) {
95 return true;
96 }
97 size_t capacity = buffer->capacity ? buffer->capacity : 1024U;
98 while (capacity < required) {
99 if (capacity > SIZE_MAX / 2U) {
100 capacity = required;
101 break;
102 }
103 capacity *= 2U;
104 }
105 char *grown = (char *)realloc(buffer->data, capacity);
106 if (!grown) {
107 buffer->failed = true;
108 return false;
109 }
110 buffer->data = grown;
111 buffer->capacity = capacity;
112 return true;
113}
114
115static bool profile_buffer_append(profile_buffer_t *buffer, const char *text) {
116 if (!text) {

Callers 1

profile_buffer_appendFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected