--- a/sope-mime/NGImap4/NGImap4Client.m
+++ b/sope-mime/NGImap4/NGImap4Client.m
@@ -1254,8 +1254,14 @@ static NSMutableDictionary *namespaces;

   pool = [[NSAutoreleasePool alloc] init];

+  /*
+   * Do not use "*" as the upper UID bound here.  RFC-compliant servers may
+   * resolve it to the highest message still present, which excludes an
+   * expunged message when that message had the mailbox's highest UID.  The
+   * complete legal UID range ensures VANISHED reports that deletion.
+   */
   cmd  = [NSString stringWithFormat:
-                     @"UID FETCH 1:* (UID) (CHANGEDSINCE %llu VANISHED)",
+                     @"UID FETCH 1:4294967295 (UID) (CHANGEDSINCE %llu VANISHED)",
                    (unsigned long long)_modseq];
   fetchres = [self processCommand:cmd];
   result   = [[self->normer normalizeFetchResponse:fetchres] retain];