load_data return allways, all exit() calls removed, all load_data calls are protected
[brisk.git] / web / Obj / brisk.phh
index 50bc009..2a2d9eb 100644 (file)
@@ -819,7 +819,7 @@ class User {
     /*
     if (validate_sess($this->sess)) {
       if (file_exists(PROXY_PATH) == FALSE)
-        mkdir(PROXY_PATH);
+        mkdir(PROXY_PATH, 0775, TRUE);
       $fp = fopen(PROXY_PATH."/".$this->sess.".stat", 'w');
       fwrite($fp, sprintf("%s\n",$this->stat));
       fclose($fp);
@@ -848,7 +848,7 @@ class User {
           if (validate_sess($this->sess) == FALSE)
               break;
           if (file_exists(PROXY_PATH) == FALSE)
-              mkdir(PROXY_PATH);
+              mkdir(PROXY_PATH, 0775, TRUE);
           if (($fp = @fopen(PROXY_PATH."/".$this->sess.".step", 'w')) == FALSE)
               break;
           fwrite($fp, pack("LL",$this->step, $this->idx));
@@ -870,7 +870,7 @@ class User {
               break;
           
           if (file_exists(PROXY_PATH) == FALSE)
-              mkdir(PROXY_PATH);
+              mkdir(PROXY_PATH, 0775, TRUE);
           if (($fp = @fopen(PROXY_PATH."/".$sess.".step", 'rb')) == FALSE)
               break;
           if (($s = fread($fp, 8)) == FALSE)
@@ -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;
           }
           
@@ -933,7 +931,6 @@ class User {
               $user = @shm_get_var($shm, $tok);
               
               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 +970,6 @@ class User {
           return ($user);
       } while (0);
       
-      if ($doexit)
-          exit();
-      
       return (FALSE);
   }
   
@@ -1116,7 +1110,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 +2252,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;
       }
     
@@ -2297,7 +2289,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 +2305,6 @@ class Room {
       return ($room);
     } while (0);
     
-    if ($doexit)
-      exit();
-    
     return (FALSE);
   }
   
@@ -2510,7 +2505,7 @@ class Room {
       $fp = FALSE;
       do {
           if (file_exists(PROXY_PATH) == FALSE)
-              mkdir(PROXY_PATH);
+              mkdir(PROXY_PATH, 0775, TRUE);
           if (($fp = @fopen(PROXY_PATH."/garbage_time.expired", 'rb')) == FALSE)
               break;
           if (($s = fread($fp, 4)) == FALSE)
@@ -2534,7 +2529,7 @@ class Room {
   {
       do {
           if (file_exists(PROXY_PATH) == FALSE)
-              mkdir(PROXY_PATH);
+              mkdir(PROXY_PATH, 0775, TRUE);
           if (($fp = @fopen(PROXY_PATH."/garbage_time.expired", 'wb')) == FALSE)
               break;
           fwrite($fp, pack("L",$tm));