ucx/mempool.c

changeset 109
c3dfcb8f0be7
parent 108
77254bd6dccb
child 112
c3f2f16fa4b8
equal deleted inserted replaced
108:77254bd6dccb 109:c3dfcb8f0be7
636 memcpy(&dest->data[dest->size], source->data, sizeof(void*)*source->size); 636 memcpy(&dest->data[dest->size], source->data, sizeof(void*)*source->size);
637 dest->size += source->size; 637 dest->size += source->size;
638 638
639 // transfer all registered memory 639 // transfer all registered memory
640 memcpy(&dest->registered[dest->registered_size], source->registered, 640 memcpy(&dest->registered[dest->registered_size], source->registered,
641 sizeof(struct cx_mempool_foreign_memory_s) * source->registered_size); 641 sizeof(struct cx_mempool_foreign_memory_s) * source->size);
642 dest->registered_size += source->registered_size; 642 dest->registered_size += source->registered_size;
643 643
644 // register the old allocator with the new pool 644 // register the old allocator with the new pool
645 // we have to remove const-ness for this, but that's okay here 645 // we have to remove const-ness for this, but that's okay here
646 // also register the base allocator, s.t. the pool knows how to free it 646 // also register the base allocator, s.t. the pool knows how to free it

mercurial