Added more checks for NULL pointers

This commit is contained in:
Abdelrahman Said 2023-07-09 21:21:50 +01:00
parent 31bd885507
commit c1ef7afcac

View File

@ -29,6 +29,10 @@ dstr_t *dstr_with_capacity(u64 capacity) {
} }
dstr_t *dstr_from_string(const char *str) { dstr_t *dstr_from_string(const char *str) {
if (!str) {
return NULL;
}
u64 length = strlen(str); u64 length = strlen(str);
u64 capacity = length * CAPACITY_SCALAR; u64 capacity = length * CAPACITY_SCALAR;
@ -46,7 +50,7 @@ dstr_t *dstr_from_string(const char *str) {
} }
void dstr_update(dstr_t **dst, const char *src) { void dstr_update(dstr_t **dst, const char *src) {
if (!(*dst)) { if (!dst || !(*dst)) {
return; return;
} }
@ -78,7 +82,7 @@ void dstr_update(dstr_t **dst, const char *src) {
} }
void dstr_free(dstr_t **str) { void dstr_free(dstr_t **str) {
if (!(*str)) { if (!str || !(*str)) {
return; return;
} }
@ -87,7 +91,7 @@ void dstr_free(dstr_t **str) {
} }
void dstr_concat(dstr_t **dst, const char *src) { void dstr_concat(dstr_t **dst, const char *src) {
if (!(*dst)) { if (!dst || !(*dst)) {
return; return;
} }
@ -109,7 +113,7 @@ void dstr_concat(dstr_t **dst, const char *src) {
} }
void dstr_append(dstr_t **dst, char c) { void dstr_append(dstr_t **dst, char c) {
if (!(*dst)) { if (!dst || !(*dst)) {
return; return;
} }
@ -125,6 +129,10 @@ void dstr_append(dstr_t **dst, char c) {
} }
void dstr_resize(dstr_t **str) { void dstr_resize(dstr_t **str) {
if (!str || !(*str)) {
return;
}
u64 capacity = (*str)->size; u64 capacity = (*str)->size;
dstr_t *tmp = (dstr_t *)realloc(*str, sizeof(dstr_t) + capacity + 1); dstr_t *tmp = (dstr_t *)realloc(*str, sizeof(dstr_t) + capacity + 1);
@ -169,7 +177,7 @@ i64 dstr_find(const dstr_t *str, const char *substr) {
char buf[substr_length + 1]; char buf[substr_length + 1];
memset(buf, 0, substr_length + 1); memset(buf, 0, substr_length + 1);
for (i64 i = 0; i < str->size; ++i) { for (u64 i = 0; i < str->size; ++i) {
if (i + substr_length >= str->size) { if (i + substr_length >= str->size) {
break; break;
} }