Commit ed6f9b47 authored by Linus Nordberg's avatar Linus Nordberg
Browse files

Don't free memory which others are still using.

In the error case in confserver_cb() where compileserverconfig() we
used to go to errexit and have resonf, passed as an argument through
ARG, freed.  Other parts are still using that conf.
parent f41042e6
...@@ -2944,7 +2944,8 @@ int confserver_cb(struct gconffile **cf, void *arg, char *block, char *opt, char ...@@ -2944,7 +2944,8 @@ int confserver_cb(struct gconffile **cf, void *arg, char *block, char *opt, char
if (resconf || !conf->dynamiclookupcommand) { if (resconf || !conf->dynamiclookupcommand) {
if (!compileserverconfig(conf, block)) if (!compileserverconfig(conf, block))
goto errexit; return 0; /* Don't goto errexit and free resconf -- it's
* not ours to free. */
} }
if (!conf->secret) { if (!conf->secret) {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment