Fixed bug that caused some lock types to incorrectly count recursion depth
authorAri Johnson <ari@theari.com>
Thu, 5 Jun 2008 17:41:56 +0000 (17:41 +0000)
committerCobraMUSH <cobramush@nveid.com>
Tue, 4 Mar 2008 21:22:14 +0000 (21:22 +0000)
(cherry picked from commit 4ecade817a359a93c40e83a198ba11adb9d27ec3)

game/txt/changes/0.73p1
src/boolexp.c

index 4a0546a22434874785674d92a0013fbff67e3670..1d02a5a1d523286b3beebcea0d109787d9b67308 100644 (file)
@@ -9,4 +9,6 @@ CobraMUSH Version 0.73p1
 
   Fixes:
     * Fixed cstatus() [AEJ]
+    * Fixed bug that caused some lock types to incorrectly count
+      recursion depth [AEJ]
 
index 9a8186c2b78107ee4826df2b5526c0e0f46cc4c4..d099b88198e996cc81f8ebc11319c9ae6e2bc4d2 100644 (file)
@@ -608,10 +608,9 @@ eval_boolexp(dbref player /* The player trying to pass */ ,
         boolexp_recursion--;
         break;
       case OP_TDIVISION:
-        boolexp_recursion++;
         /* basicaly what we're doing is if we catch a '+' key
          * we're going to loop upwards in the players division
-         * tree & tre to match it to the division lock somewhere
+         * tree & try to match it to the division lock somewhere
          * upwards.
          */
         s = (char *) bytecode + arg;
@@ -628,14 +627,11 @@ eval_boolexp(dbref player /* The player trying to pass */ ,
             r = (div2 == div);
           }
         }
-        boolexp_recursion--;
         break;
       case OP_TPWRGRP:
-        boolexp_recursion++;
         s = (char *) bytecode + arg;
         break;
       case OP_TLEVEL:
-        boolexp_recursion++;
         s = (char *) bytecode + arg;
         switch (*s) {
         case '>':
@@ -647,7 +643,6 @@ eval_boolexp(dbref player /* The player trying to pass */ ,
         default:
           r = LEVEL(player) == parse_number(s);
         }
-        boolexp_recursion--;
         break;
       case OP_TOBJID:
         {