X-Git-Url: http://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;f=web%2FObj%2Fbrisk.phh;h=2ba7c1a642443da84aa819e89d4bab5231f8db89;hb=e47ddcae6cc33ed9d2471a54936db7d8efd5d46a;hp=0083169d0034a38719d7a6c07d7d54831a0dad5e;hpb=3f6352c51674328bc903e5444ec97ad34ae7c8d8;p=brisk.git diff --git a/web/Obj/brisk.phh b/web/Obj/brisk.phh index 0083169..2ba7c1a 100644 --- a/web/Obj/brisk.phh +++ b/web/Obj/brisk.phh @@ -914,11 +914,9 @@ class User { { log_main("load_data: id [".$id."] sess [".($sess == FALSE ? "FALSE" : $sess)."] "); - $doexit = FALSE; do { if (($tok = @ftok(FTOK_PATH."/user".$id, "B")) == -1) { log_main("ftok failed"); - $doexit = TRUE; break; } @@ -930,10 +928,10 @@ class User { $shm_sz = SHM_DIMS_U_MIN; if ($shm = shm_attach($tok, $shm_sz)) { - $user = @shm_get_var($shm, $tok); - + if (($user = @shm_get_var($shm, $tok)) == FALSE) { + break; + } if ($sess != FALSE && $user->sess != $sess) { - $doexit = TRUE; break; } log_only("user == ".($user == FALSE ? "FALSE" : "TRUE")." user === ".($user === FALSE ? "FALSE" : "TRUE")." user isset ".(isset($user) ? "TRUE" : "FALSE")); @@ -973,9 +971,6 @@ class User { return ($user); } while (0); - if ($doexit) - exit(); - return (FALSE); } @@ -1116,7 +1111,7 @@ class Room { // is the end of the table if ($bri->the_end == TRUE) { - /* + /* * DESTROY OF FINISHED TABLE && MOVE PLAYER TO ROOM AGAIN */ log_main("garbage_manager: INSIDE THE END."); @@ -2258,12 +2253,10 @@ class Room { function load_data() { GLOBAL $sess; - $doexit = FALSE; do { if (($tok = @ftok(FTOK_PATH."/main", "B")) == -1) { log_main("ftok failed"); - $doexit = TRUE; break; } @@ -2275,7 +2268,7 @@ class Room { $shm_sz = SHM_DIMS_MIN; if ($shm = shm_attach($tok, $shm_sz)) { - $room = @shm_get_var($shm, $tok); + $room = @shm_get_var($shm, $tok); // CHECKED BELOW log_only("bri == ".($room == FALSE ? "FALSE" : "TRUE")." bri === ".($room === FALSE ? "FALSE" : "TRUE")." bri isset ".(isset($room) ? "TRUE" : "FALSE")); if (isset($room)) @@ -2297,7 +2290,13 @@ class Room { shm_detach($shm); for ($i = 0 ; $i < MAX_PLAYERS ; $i++) { - $room->user[$i] = User::load_data($i, FALSE); + if (($room->user[$i] = User::load_data($i, FALSE)) == FALSE) { + log_crit("Bin5_user::load_data failed"); + break; + } + } + if ($i < MAX_PLAYERS) { + break; } } @@ -2307,9 +2306,6 @@ class Room { return ($room); } while (0); - if ($doexit) - exit(); - return (FALSE); }