Project

General

Profile

Bug #1722 ยป lighttpd-1.4.19-env_add.patch

Patch to fix env_add against lighttpd 1.4.19 - chris@arachsys.com, 2008-07-15 19:51

View differences:

src/mod_fastcgi.c
static int env_add(char_array *env, const char *key, size_t key_len, const char *val, size_t val_len) {
char *dst;
size_t i;
if (!key || !val) return -1;
......
dst[key_len] = '=';
/* add the \0 from the value */
memcpy(dst + key_len + 1, val, val_len + 1);
for (i = 0; i < env->used; i++)
if (strlen(env->ptr[i]) >= key_len + 1 &&
memcmp(dst, env->ptr[i], key_len + 1) == 0) {
free(env->ptr[i]);
env->ptr[i] = dst;
return 0;
}
if (env->size == 0) {
env->size = 16;
src/mod_scgi.c
static int env_add(char_array *env, const char *key, size_t key_len, const char *val, size_t val_len) {
char *dst;
size_t i;
if (!key || !val) return -1;
......
dst[key_len] = '=';
/* add the \0 from the value */
memcpy(dst + key_len + 1, val, val_len + 1);
for (i = 0; i < env->used; i++)
if (strlen(env->ptr[i]) >= key_len + 1 &&
memcmp(dst, env->ptr[i], key_len + 1) == 0) {
free(env->ptr[i]);
env->ptr[i] = dst;
return 0;
}
if (env->size == 0) {
env->size = 16;
    (1-1/1)