/* allocate enough memory to duplicate all path_info strings in one block */
#undef _field
#define _field(_name) &_##_name, field_len(pi->_name),
- dr = calloc_a(sizeof(*dr), &_url, strlen(url), path_info_fields NULL);
+ dr = calloc_a(sizeof(*dr), &_url, strlen(url) + 1, path_info_fields NULL);
memcpy(&dr->pi, pi, sizeof(*pi));
dr->path = true;
#define _field(_name) if (pi->_name) dr->pi._name = strcpy(_##_name, pi->_name);
path_info_fields
} else {
- dr = calloc_a(sizeof(*dr), &_url, strlen(url), NULL);
+ dr = calloc_a(sizeof(*dr), &_url, strlen(url) + 1, NULL);
}
cl->dispatch.req_data = dr;