summaryrefslogtreecommitdiff
path: root/src/mod_ssi_exprparser.y
diff options
context:
space:
mode:
authorArno Töll <arno@debian.org>2012-11-21 23:03:45 +0100
committerArno Töll <arno@debian.org>2012-11-21 23:03:45 +0100
commit9fa7c3d770fb8688555b661940e04c3bf6b6d8aa (patch)
tree7d26c5c3a492656762910721988ee0867f7a57c4 /src/mod_ssi_exprparser.y
parentc99b717062c6228c4ac6df3831702f81c9806df4 (diff)
downloadlighttpd-9fa7c3d770fb8688555b661940e04c3bf6b6d8aa.tar.gz
Imported Upstream version 1.4.13~r1385upstream/1.4.13_r1385
Diffstat (limited to 'src/mod_ssi_exprparser.y')
-rw-r--r--src/mod_ssi_exprparser.y26
1 files changed, 13 insertions, 13 deletions
diff --git a/src/mod_ssi_exprparser.y b/src/mod_ssi_exprparser.y
index c123941..ac993d7 100644
--- a/src/mod_ssi_exprparser.y
+++ b/src/mod_ssi_exprparser.y
@@ -31,22 +31,22 @@
input ::= exprline(B). {
ctx->val.bo = ssi_val_tobool(B);
ctx->val.type = SSI_TYPE_BOOL;
-
+
ssi_val_free(B);
}
exprline(A) ::= expr(B) cond(C) expr(D). {
int cmp;
-
- if (B->type == SSI_TYPE_STRING &&
+
+ if (B->type == SSI_TYPE_STRING &&
D->type == SSI_TYPE_STRING) {
cmp = strcmp(B->str->ptr, D->str->ptr);
} else {
cmp = ssi_val_tobool(B) - ssi_val_tobool(D);
}
-
+
A = B;
-
+
switch(C) {
case SSI_COND_EQ: A->bo = (cmp == 0) ? 1 : 0; break;
case SSI_COND_NE: A->bo = (cmp != 0) ? 1 : 0; break;
@@ -55,9 +55,9 @@ exprline(A) ::= expr(B) cond(C) expr(D). {
case SSI_COND_LE: A->bo = (cmp <= 0) ? 1 : 0; break;
case SSI_COND_LT: A->bo = (cmp < 0) ? 1 : 0; break;
}
-
+
A->type = SSI_TYPE_BOOL;
-
+
ssi_val_free(D);
}
exprline(A) ::= expr(B). {
@@ -65,9 +65,9 @@ exprline(A) ::= expr(B). {
}
expr(A) ::= expr(B) AND expr(C). {
int e;
-
+
e = ssi_val_tobool(B) && ssi_val_tobool(C);
-
+
A = B;
A->bo = e;
A->type = SSI_TYPE_BOOL;
@@ -76,9 +76,9 @@ expr(A) ::= expr(B) AND expr(C). {
expr(A) ::= expr(B) OR expr(C). {
int e;
-
+
e = ssi_val_tobool(B) || ssi_val_tobool(C);
-
+
A = B;
A->bo = e;
A->type = SSI_TYPE_BOOL;
@@ -87,9 +87,9 @@ expr(A) ::= expr(B) OR expr(C). {
expr(A) ::= NOT expr(B). {
int e;
-
+
e = !ssi_val_tobool(B);
-
+
A = B;
A->bo = e;
A->type = SSI_TYPE_BOOL;