diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/variable.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/variable.c b/src/variable.c index bd79c3b..e6bad1a 100644 --- a/src/variable.c +++ b/src/variable.c @@ -386,6 +386,8 @@ get_symtab(VARIABLE_CTX ctx) { struct symtab *st; int fd = ctx->req->sp->fd; + + assert(fd >= 0); AZ(pthread_mutex_lock(&symtab_mtx)); if (symtabc <= fd) { size_t n = fd + 1; @@ -728,7 +730,6 @@ vmod_regset(VARIABLE_CTX ctx, VCL_STRING vars, VCL_STRING rxs, int error_offset; int cflags = 0; union value value; - char *p; int ovsize; int *ovector; int i; @@ -862,7 +863,7 @@ xdecode(char *s) for (s = d; *s; ) { if (*s == '%' && hex2ul(s[1]) != -1 && hex2ul(s[2]) != -1) { - *d++ = hex2ul(s[1]) << 4 + hex2ul(s[2]); + *d++ = (hex2ul(s[1]) << 4) + hex2ul(s[2]); s += 3; } else *d++ = *s++; @@ -898,7 +899,6 @@ vmod_queryset(VARIABLE_CTX ctx, VCL_STRING vars, VCL_STRING query) struct symtab *vt = get_symtab(ctx); struct vardef *head = NULL, *tail = NULL, *def; size_t count = 0; - size_t n; const char *v = vars; while (*v) { @@ -963,7 +963,7 @@ vmod_queryset(VARIABLE_CTX ctx, VCL_STRING vars, VCL_STRING query) def = vardef_new(variable_string, paramptr, paramlen, NULL, 0); define_param(vt, def, valptr, vallen); - free(def); + vardef_free(def); } } vardef_free(head); |