[4.1] 33daaf0 Remove temporary directory iff called with -C

Lasse Karstensen lkarsten at varnish-software.com
Wed May 25 10:46:07 CEST 2016


commit 33daaf0742dda073375b7cf165e379fadebf6342
Author: Federico G. Schwindt <fgsch at lodoss.net>
Date:   Sun Mar 13 12:37:49 2016 +0000

    Remove temporary directory iff called with -C
    
    Fixes #1869

diff --git a/bin/varnishd/mgt/mgt_vcc.c b/bin/varnishd/mgt/mgt_vcc.c
index 77f67c0..0856123 100644
--- a/bin/varnishd/mgt/mgt_vcc.c
+++ b/bin/varnishd/mgt/mgt_vcc.c
@@ -296,11 +296,12 @@ mgt_VccCompile(struct cli *cli, const char *vclname, const char *vclsrc,
 	(void)unlink(vp.csrcfile);
 	free(vp.csrcfile);
 
-	free(vp.dir);
-
 	if (status || C_flag) {
 		(void)unlink(vp.libfile);
 		free(vp.libfile);
+		if (C_flag)
+			AZ(rmdir(vp.dir));
+		free(vp.dir);
 		if (status) {
 			VCLI_Out(cli, "VCL compilation failed");
 			VCLI_SetResult(cli, CLIS_PARAM);
@@ -308,6 +309,8 @@ mgt_VccCompile(struct cli *cli, const char *vclname, const char *vclsrc,
 		return(NULL);
 	}
 
+	free(vp.dir);
+
 	VCLI_Out(cli, "VCL compiled.\n");
 
 	return (vp.libfile);



More information about the varnish-commit mailing list