]> git.ipfire.org Git - thirdparty/bird.git/commitdiff
Filter instructions don't confuse now v1 and res.
authorMaria Matejka <mq@ucw.cz>
Fri, 21 Jun 2019 09:33:28 +0000 (11:33 +0200)
committerMaria Matejka <mq@ucw.cz>
Fri, 21 Jun 2019 09:33:28 +0000 (11:33 +0200)
filter/f-inst.c

index 749e072ce868cb3ea099a1019863496cb2ffcd30..7349bf729564b99b004f05595613ebfd576bb892 100644 (file)
   INST(FI_ADD, 2, 1) {
     ARG(1,T_INT);
     ARG(2,T_INT);
-    res.val.i += v2.val.i;
+    res.val.i = v1.val.i + v2.val.i;
     RESULT_OK;
   }
   INST(FI_SUBTRACT, 2, 1) {
     ARG(1,T_INT);
     ARG(2,T_INT);
-    res.val.i -= v2.val.i;
+    res.val.i = v1.val.i - v2.val.i;
     RESULT_OK;
   }
   INST(FI_MULTIPLY, 2, 1) {
     ARG(1,T_INT);
     ARG(2,T_INT);
-    res.val.i *= v2.val.i;
+    res.val.i = v1.val.i * v2.val.i;
     RESULT_OK;
   }
   INST(FI_DIVIDE, 2, 1) {
     ARG(1,T_INT);
     ARG(2,T_INT);
     if (v2.val.i == 0) runtime( "Mother told me not to divide by 0" );
-    res.val.i /= v2.val.i;
+    res.val.i = v1.val.i / v2.val.i;
     RESULT_OK;
   }
   INST(FI_AND, 1, 1) {