diff options
author | stbuehler <stbuehler@152afb58-edef-0310-8abb-c4023f1b3aa9> | 2013-05-15 10:31:07 +0000 |
---|---|---|
committer | stbuehler <stbuehler@152afb58-edef-0310-8abb-c4023f1b3aa9> | 2013-05-15 10:31:07 +0000 |
commit | f638f916668d1c43bbdd931b2cb109fffb9acfb1 (patch) | |
tree | 7d63fb365778f3edd8c7cd4b81e11839c939f131 | |
parent | ef53649d14bd1ce23c30835edb5a3e3d9179fae2 (diff) | |
download | lighttpd-f638f916668d1c43bbdd931b2cb109fffb9acfb1.tar.gz |
fix some bugs found with canalyze (fixes #2484, thx Zhenbo Xu)
git-svn-id: svn://svn.lighttpd.net/lighttpd/branches/lighttpd-1.4.x@2872 152afb58-edef-0310-8abb-c4023f1b3aa9
-rw-r--r-- | NEWS | 1 | ||||
-rw-r--r-- | src/mod_redirect.c | 4 | ||||
-rw-r--r-- | src/proc_open.c | 1 |
3 files changed, 4 insertions, 2 deletions
@@ -13,6 +13,7 @@ NEWS * [mod_auth] use crypt() on encrypted password instead of extracting salt first (fixes #2483) * [mod_auth] add htpasswd -s (SHA1) support if openssl is used (needs openssl for SHA1). This doesn't use any salt, md5 with salt is probably better. * [mod_auth] fix base64_decode (#2484) + * fix some bugs found with canalyze (fixes #2484, thx Zhenbo Xu) - 1.4.32 - 2012-11-21 * Code cleanup with clang/sparse (fixes #2437, thx kibi) diff --git a/src/mod_redirect.c b/src/mod_redirect.c index 5d51b866..e83f3782 100644 --- a/src/mod_redirect.c +++ b/src/mod_redirect.c @@ -65,7 +65,6 @@ FREE_FUNC(mod_redirect_free) { SETDEFAULTS_FUNC(mod_redirect_set_defaults) { plugin_data *p = p_d; - data_unset *du; size_t i = 0; config_values_t cv[] = { @@ -83,7 +82,8 @@ SETDEFAULTS_FUNC(mod_redirect_set_defaults) { plugin_config *s; size_t j; array *ca; - data_array *da = (data_array *)du; + data_unset *du; + data_array *da; s = calloc(1, sizeof(plugin_config)); s->redirect = pcre_keyvalue_buffer_init(); diff --git a/src/proc_open.c b/src/proc_open.c index e9393e09..e28b479d 100644 --- a/src/proc_open.c +++ b/src/proc_open.c @@ -317,6 +317,7 @@ int proc_open_buffer(const char *command, buffer *in, buffer *out, buffer *err) proc_read_fd_to_buffer(proc.err.fd, tmp); if (tmp->used > 0 && write(2, (void*)tmp->ptr, tmp->used) < 0) { perror("error writing pipe"); + buffer_free(tmp); return -1; } buffer_free(tmp); |