diff options
author | Daniel Lange <DLange@git.local> | 2020-08-27 07:48:11 +0200 |
---|---|---|
committer | Daniel Lange <DLange@git.local> | 2020-08-27 07:48:11 +0200 |
commit | 7a637ff1dea1a02a42e55aa79f03a9e85a576207 (patch) | |
tree | 3d12e9808eb554ad8017fcd9059864f92d51d104 /Vector.c | |
parent | dfb05211d32675faebac6fd76ef58d9e303a90e7 (diff) | |
parent | f3147ea2d1598914c2db53e8cfb34c8ff81e2ff4 (diff) | |
download | debian_htop-7a637ff1dea1a02a42e55aa79f03a9e85a576207.tar.gz debian_htop-7a637ff1dea1a02a42e55aa79f03a9e85a576207.tar.bz2 debian_htop-7a637ff1dea1a02a42e55aa79f03a9e85a576207.zip |
Update upstream source from tag 'upstream/3.0.0'
Update to upstream version '3.0.0'
with Debian dir 8c9e99b342a3fc4208a5abe239b39578f8563a2c
Diffstat (limited to 'Vector.c')
-rw-r--r-- | Vector.c | 16 |
1 files changed, 14 insertions, 2 deletions
@@ -195,7 +195,7 @@ void Vector_insert(Vector* this, int idx, void* data_) { if (idx > this->items) { idx = this->items; } - + Vector_checkArraySize(this); //assert(this->array[this->items] == NULL); for (int i = this->items; i > idx; i--) { @@ -302,7 +302,7 @@ inline int Vector_size(Vector* this) { static void Vector_merge(Vector* this, Vector* v2) { int i; assert(Vector_isConsistent(this)); - + for (i = 0; i < v2->items; i++) Vector_add(this, v2->array[i]); v2->items = 0; @@ -335,3 +335,15 @@ inline int Vector_indexOf(Vector* this, void* search_, Object_Compare compare) { } return -1; } + +void Vector_splice(Vector* this, Vector* from) { + assert(Vector_isConsistent(this)); + assert(Vector_isConsistent(from)); + assert(!(this->owner && from->owner)); + + int olditmes = this->items; + this->items += from->items; + Vector_checkArraySize(this); + for (int j = 0; j < from->items; j++) + this->array[olditmes + j] = from->array[j]; +} |