Another failsafe check which I missed. Thnx Erin.
authorstekkel <stekkel@7612ce4b-ef26-0410-bec9-ea0150e637f0>
Thu, 12 Jun 2003 14:17:10 +0000 (14:17 +0000)
committerstekkel <stekkel@7612ce4b-ef26-0410-bec9-ea0150e637f0>
Thu, 12 Jun 2003 14:17:10 +0000 (14:17 +0000)
git-svn-id: https://svn.code.sf.net/p/squirrelmail/code/trunk/squirrelmail@5009 7612ce4b-ef26-0410-bec9-ea0150e637f0

functions/imap_general.php

index 8e1e1254fc7ff1ef3c7605933b7c30a9129d98ef..04799a6065f2eefc30ba4dfba7e66975ae2f8ce0 100755 (executable)
@@ -208,8 +208,8 @@ function sqimap_read_data_list ($imap_stream, $tag_uid, $handle_errors, &$respon
                     } while ($s === "}\r\n");
                     $s = substr($read,-3);
                 } while ($read{0} !== '*' &&
-                substr($read,0,strlen($tag)) !== $tag);
-                $resultlist[] = $fetch_data;
+                         substr($read,0,strlen($tag)) !== $tag);
+                         $resultlist[] = $fetch_data;
                 /* release not neaded data */
                 unset ($fetch_data);
             } else {
@@ -230,7 +230,11 @@ function sqimap_read_data_list ($imap_stream, $tag_uid, $handle_errors, &$respon
                         $data[] = $read;
                     }
                     $read = sqimap_fgets($imap_stream);
-                    if ($read && $read{0} == '*') break;
+                   if ($read === false) {
+                       break 3; /* while switch while */
+                   } else if ($read{0} == '*') {
+                        break;
+                    }
                     $s = substr($read,-3);
                 } while ($s === "}\r\n");
                 break 1;