Instead of using our own vector implementation, use argv_array from Git which has been specifically designed for dynamic size argv arrays. Drop vector.h and vector.c which are no longer needed. Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de>upstream
parent
e21da6c2a6
commit
9973ef0207
@ -1,38 +0,0 @@ |
||||
#include <stdio.h> |
||||
#include <string.h> |
||||
#include <errno.h> |
||||
#include "vector.h" |
||||
|
||||
static int grow(struct vector *vec, int gently) |
||||
{ |
||||
size_t new_alloc; |
||||
void *new_data; |
||||
|
||||
new_alloc = vec->alloc * 3 / 2; |
||||
if (!new_alloc) |
||||
new_alloc = 8; |
||||
new_data = realloc(vec->data, new_alloc * vec->size); |
||||
if (!new_data) { |
||||
if (gently) |
||||
return ENOMEM; |
||||
perror("vector.c:grow()"); |
||||
exit(1); |
||||
} |
||||
vec->data = new_data; |
||||
vec->alloc = new_alloc; |
||||
return 0; |
||||
} |
||||
|
||||
int vector_push(struct vector *vec, const void *data, int gently) |
||||
{ |
||||
int rc; |
||||
|
||||
if (vec->count == vec->alloc && (rc = grow(vec, gently))) |
||||
return rc; |
||||
if (data) |
||||
memmove(vec->data + vec->count * vec->size, data, vec->size); |
||||
else |
||||
memset(vec->data + vec->count * vec->size, 0, vec->size); |
||||
vec->count++; |
||||
return 0; |
||||
} |
@ -1,17 +0,0 @@ |
||||
#ifndef CGIT_VECTOR_H |
||||
#define CGIT_VECTOR_H |
||||
|
||||
#include <stdlib.h> |
||||
|
||||
struct vector { |
||||
size_t size; |
||||
size_t count; |
||||
size_t alloc; |
||||
void *data; |
||||
}; |
||||
|
||||
#define VECTOR_INIT(type) {sizeof(type), 0, 0, NULL} |
||||
|
||||
int vector_push(struct vector *vec, const void *data, int gently); |
||||
|
||||
#endif /* CGIT_VECTOR_H */ |
Loading…
Reference in new issue