mirror of
				https://github.com/janet-lang/janet
				synced 2025-11-04 01:23:04 +00:00 
			
		
		
		
	@@ -103,12 +103,15 @@ static void janet_fiber_refresh_memory(JanetFiber *fiber) {
 | 
			
		||||
 | 
			
		||||
/* Ensure that the fiber has enough extra capacity */
 | 
			
		||||
void janet_fiber_setcapacity(JanetFiber *fiber, int32_t n) {
 | 
			
		||||
    int32_t old_size = fiber->capacity;
 | 
			
		||||
    int32_t diff = n - old_size;
 | 
			
		||||
    Janet *newData = realloc(fiber->data, sizeof(Janet) * n);
 | 
			
		||||
    if (NULL == newData) {
 | 
			
		||||
        JANET_OUT_OF_MEMORY;
 | 
			
		||||
    }
 | 
			
		||||
    fiber->data = newData;
 | 
			
		||||
    fiber->capacity = n;
 | 
			
		||||
    janet_vm_next_collection += sizeof(Janet) * diff;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* Grow fiber if needed */
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user