X-Git-Url: https://vcs.fsf.org/?a=blobdiff_plain;f=functions%2Fimap_general.php;h=df3cf24dee11e82b2bcf79eac59a6bda3aff63c4;hb=bccadd02ea81378ee49716158af085058c48ee57;hp=09543e740060c0d6c190f6a1920cdf08d6e753bc;hpb=f1e6f580186aed693bd544e31895422f49642571;p=squirrelmail.git
diff --git a/functions/imap_general.php b/functions/imap_general.php
index 09543e74..df3cf24d 100755
--- a/functions/imap_general.php
+++ b/functions/imap_general.php
@@ -1,6 +1,9 @@
$read
\n";
- flush();
-}
- $size = 0;
+
+ // For debugging purposes
+ if ($imap_general_debug) {
+ echo "$read
\n";
+ flush();
+ }
+
+ $size = -1;
$data[] = $read;
$read = fgets($imap_stream, 9096);
} else {
- $size = 0;
+ $size = -1;
}
while (1) {
while (strpos($read, "\n") === false) {
$read .= fgets($imap_stream, 9096);
}
-// For debugging purposes
-if ($imap_general_debug) {
- echo "$read
\n";
- flush();
-}
+
+ // For debugging purposes
+ if ($imap_general_debug) {
+ echo "$read
\n";
+ flush();
+ }
+
// If we know the size, no need to look at the end parameters
if ($size > 0) {
if ($total_size == $size) {
@@ -91,7 +98,7 @@ if ($imap_general_debug) {
$total_size += strlen($read);
} else {
if (ereg("^$pre (OK|BAD|NO)(.*)", $read, $regs) ||
- ereg("^\\* [0-9]+ FETCH.*", $read, $regs)) {
+ (($size == -1) && ereg("^\\* [0-9]+ FETCH.*", $read, $regs))) {
break;
} else {
$data[] = $read;
@@ -109,10 +116,8 @@ if ($imap_general_debug) {
$response = $regs[1];
$message = trim($regs[2]);
-if ($imap_general_debug) echo '--
';
-
- if ($handle_errors == false)
- return $resultlist;
+ if ($imap_general_debug) { echo '--
'; }
+ if ($handle_errors == false) { return $resultlist; }
if ($response == 'NO') {
// ignore this error from m$ exchange, it is not fatal (aka bug)