libidav/davqlexec.c

changeset 235
0468df02e18f
parent 205
bf756f6c3581
child 249
50fb9c9f6671
--- a/libidav/davqlexec.c	Tue Mar 22 15:40:34 2016 +0100
+++ b/libidav/davqlexec.c	Wed Mar 23 13:46:39 2016 +0100
@@ -1142,8 +1142,9 @@
             }
             case DAVQL_CMD_OP_LOGICAL_OR_L: {
                 //printf("or_l %d\n", cmd.data.integer);
-                DavQLStackObj obj1 = DAVQL_POP();
+                DavQLStackObj obj1 = stack[stpos];
                 if((obj1.type == 0 && obj1.data.integer) || (obj1.type == 1 && obj1.data.string)) {
+                    stpos--;
                     DAVQL_PUSH_INT(1);
                     i += cmd.data.integer; // jump, skip right subtree of 'or'
                 }

mercurial