diff options
| -rw-r--r-- | src/http.c | 20 |
1 files changed, 5 insertions, 15 deletions
@@ -180,18 +180,10 @@ char *get_cookie(const char *cookie_name) { strncpy(cookie_str, cookie_header_start, cookie_str_len); cookie_str[cookie_str_len] = '\0'; - char *cookie_str_copy = strdup(cookie_str); - if (cookie_str_copy == NULL) { - perror("Failed to duplicate cookie string for strtok_r"); - fprintf(stderr, "[ERROR] get_cookie: Duplication failed for cookie_str_copy.\n"); - free(cookie_str); - return NULL; - } - char *token; char *saveptr_cookie; - token = strtok_r(cookie_str_copy, ";", &saveptr_cookie); + token = strtok_r(cookie_str, ";", &saveptr_cookie); while (token != NULL) { while (*token == ' ') { @@ -210,16 +202,14 @@ char *get_cookie(const char *cookie_name) { perror("Failed to duplicate cookie value"); fprintf(stderr, "[ERROR] get_cookie: Allocation failed for cookie_value.\n"); } - free(cookie_str); - free(cookie_str_copy); - return cookie_value; + free(cookie_str); + return cookie_value; } } token = strtok_r(NULL, ";", &saveptr_cookie); } - free(cookie_str); - free(cookie_str_copy); + free(cookie_str); return NULL; -}
\ No newline at end of file +} |
