diff options
Diffstat (limited to 'vector.c')
| -rw-r--r-- | vector.c | 10 |
1 files changed, 7 insertions, 3 deletions
@@ -26,13 +26,17 @@ vectorp_t remove_vectors(vectorp_t vectorp, int* indexes, int indexCount) { vector_t* vectors = malloc((vectorp.length - indexCount) * sizeof(vector_t)); int correctedIndex = 0; for(int i = 0; i < vectorp.length - indexCount; i++) { + int toRemove = 0; for(int j = 0; j < indexCount; j++) { if(i == indexes[j]) { - continue; + toRemove = 1; + break; } } - vectors[correctedIndex] = vectorp.vectors[i]; - correctedIndex++; + if(!toRemove) { + vectors[correctedIndex] = vectorp.vectors[i]; + correctedIndex++; + } } return init_vectorp(vectors, vectorp.length - indexCount); } |
