Artifact

static bool parse_content_disposition (const char *hdr, char **filename) { param_token name, value; bool is_url_encoded = false; char *encodedFilename = NULL; char *unencodedFilename = NULL; for ( ; extract_param (&hdr, &name, &value, ';', &is_url_encoded); is_url_encoded = false) { int isFilename = BOUNDED_EQUAL_NO_CASE (name.b, name.e, "filename"); if ( isFilename && value.b != NULL) { ... if (*outFilename) append_value_to_filename (outFilename, &value, is_url_encoded); else { *outFilename = strdupdelim (value.b, value.e); if (is_url_encoded) url_unescape (*outFilename); } } }

fca71bbc-be30-4d93-ac49-7253ce967d5b

static bool parse_content_disposition (const char *hdr, char **filename) { param_token name, value; bool is_url_encoded = false;

char *encodedFilename = NULL; char *unencodedFilename = NULL; for ( ; extract_param (&hdr, &name, &value, ';', &is_url_encoded); is_url_encoded = false) { int isFilename = BOUNDED_EQUAL_NO_CASE (name.b, name.e, "filename"); if ( isFilename && value.b != NULL) { ... if (*outFilename) append_value_to_filename (outFilename, &value, is_url_encoded); else { *outFilename = strdupdelim (value.b, value.e); if (is_url_encoded) url_unescape (*outFilename); } } }

static bool parse_content_disposition (const char *hdr, char **filename) { param_token name, value; bool is_url_encoded = false; char *encodedFilename = NULL; char *unencodedFilename = NULL; for ( ; extract_param (&hdr, &name, &value, ';', &is_url_encoded); is_url_encoded = false) { int isFilename = BOUNDED_EQUAL_NO_CASE (name.b, name.e, "filename"); if ( isFilename && value.b != NULL) { ... if (*outFilename) append_value_to_filename (outFilename, &value, is_url_encoded); else { *outFilename = strdupdelim (value.b, value.e); if (is_url_encoded) url_unescape (*outFilename); } } } - inErrata Knowledge Graph | Inerrata