summaryrefslogtreecommitdiff
path: root/src/configparser.y
diff options
context:
space:
mode:
authorGlenn Strauss <gstrauss@gluelogic.com>2019-10-13 17:06:45 -0400
committerGlenn Strauss <gstrauss@gluelogic.com>2020-02-24 11:15:32 -0500
commita51278030eba383f1f524bcaeebd3e17659439d1 (patch)
tree98c6866cbf20f43eec58dca17918aacb76151110 /src/configparser.y
parentc2238256e2f13fd3952f31943177b1fb7fba58b8 (diff)
downloadlighttpd-git-a51278030eba383f1f524bcaeebd3e17659439d1.tar.gz
[core] const char *op in data_config
(instead of (buffer *))
Diffstat (limited to 'src/configparser.y')
-rw-r--r--src/configparser.y16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/configparser.y b/src/configparser.y
index e0f5b6d9..bc300bde 100644
--- a/src/configparser.y
+++ b/src/configparser.y
@@ -539,7 +539,8 @@ cond_else(A) ::= context_else LCURLY metalines RCURLY. {
context ::= DOLLAR SRVVARNAME(B) LBRACKET stringop(C) RBRACKET cond(E) expression(D). {
data_config *dc;
- buffer *b = NULL, *rvalue, *op = NULL;
+ buffer *b = NULL, *rvalue;
+ const char *op = NULL;
if (ctx->ok && D->type != TYPE_STRING) {
fprintf(stderr, "rvalue must be string");
@@ -549,16 +550,16 @@ context ::= DOLLAR SRVVARNAME(B) LBRACKET stringop(C) RBRACKET cond(E) expressio
if (ctx->ok) {
switch(E) {
case CONFIG_COND_NE:
- op = buffer_init_string("!=");
+ op = "!=";
break;
case CONFIG_COND_EQ:
- op = buffer_init_string("==");
+ op = "==";
break;
case CONFIG_COND_NOMATCH:
- op = buffer_init_string("!~");
+ op = "!~";
break;
case CONFIG_COND_MATCH:
- op = buffer_init_string("=~");
+ op = "=~";
break;
default:
force_assert(0);
@@ -570,7 +571,7 @@ context ::= DOLLAR SRVVARNAME(B) LBRACKET stringop(C) RBRACKET cond(E) expressio
buffer_append_string_len(b, CONST_STR_LEN("/"));
buffer_append_string_buffer(b, B);
buffer_append_string_buffer(b, C);
- buffer_append_string_buffer(b, op);
+ buffer_append_string_len(b, op, 2);
rvalue = &((data_string*)D)->value;
buffer_append_string_buffer(b, rvalue);
@@ -603,7 +604,7 @@ context ::= DOLLAR SRVVARNAME(B) LBRACKET stringop(C) RBRACKET cond(E) expressio
dc = data_config_init();
buffer_copy_buffer(&dc->key, b);
- buffer_copy_buffer(dc->op, op);
+ dc->op = op;
buffer_copy_buffer(dc->comp_tag, C);
buffer_copy_buffer(dc->comp_key, B);
buffer_append_string_len(dc->comp_key, CONST_STR_LEN("[\""));
@@ -722,7 +723,6 @@ context ::= DOLLAR SRVVARNAME(B) LBRACKET stringop(C) RBRACKET cond(E) expressio
}
buffer_free(b);
- buffer_free(op);
buffer_free(B);
B = NULL;
buffer_free(C);