static lwan_url_map_t *add_url_map(lwan_trie_t *t, const char *prefix, const lwan_url_map_t *map) { lwan_url_map_t *copy = malloc(sizeof(*copy)); if (!copy) lwan_status_critical_perror("Could not copy URL map"); memcpy(copy, map, sizeof(*copy)); copy->prefix = strdup(prefix ? prefix : copy->prefix); copy->prefix_len = strlen(copy->prefix); lwan_trie_add(t, copy->prefix, copy); return copy; }
static lwan_url_map_t *add_url_map(lwan_trie_t *t, const char *prefix, const lwan_url_map_t *map) { lwan_url_map_t *copy = malloc(sizeof(*copy)); if (!copy) { lwan_status_perror("Could not copy URL map"); ASSERT_NOT_REACHED_RETURN(NULL); } memcpy(copy, map, sizeof(*copy)); copy->prefix = strdup(prefix ? prefix : copy->prefix); copy->prefix_len = strlen(copy->prefix); lwan_trie_add(t, copy->prefix, copy); return copy; }