if (info.itemIds.size() != msgs.length + 1)
if (totalDeleted != msgs.length + 1)
    MailItem.PendingDelete getDeletionInfo() throws ServiceException {        PendingDelete info = new PendingDelete();        info.rootId = mId;        info.itemIds.add(new Integer(mId));        if (mData.children == null || mData.children.isEmpty())            return info;        Message[] msgs = getMessages(SORT_ID_ASCENDING);        TargetConstraint tcon = mMailbox.getOperationTargetConstraint();        boolean excludeModify = false, excludeAccess = false;        for (int i = 0; i < msgs.length; i++) {            Message child = msgs[i];            // silently skip explicitly excluded messages, PERMISSION_DENIED messages, and MODIFY_CONFLICT messages            if (!TargetConstraint.checkItem(tcon, child)) {                continue;            } else if (!child.canAccess(ACL.RIGHT_DELETE)) {                excludeAccess = true;  continue;            } else if (!child.checkChangeID()) {                excludeModify = true;  continue;            }            Integer childId = new Integer(child.getId());            info.size += child.getSize();            info.itemIds.add(childId);            if (child.isUnread())                info.unreadIds.add(childId);            if (child.getIndexId() > 0) {                if (!isTagged(mMailbox.mCopiedFlag))                    info.indexIds.add(new Integer(child.getIndexId()));                else if (info.sharedIndex == null)                    (info.sharedIndex = new HashSet<Integer>()).add(child.getIndexId());                else                    info.sharedIndex.add(new Integer(child.getIndexId()));            }            try {                info.blobs.add(child.getBlob());            } catch (Exception e1) { }            Integer folderId = new Integer(child.getFolderId());            LocationCount count = info.messages.get(folderId);            if (count == null)                info.messages.put(folderId, new LocationCount(1, child.getSize()));            else                count.increment(1, child.getSize());        }        if (info.itemIds.size() == 1) {            // if all messages have been excluded, some for "error" reasons, throw an exception            if (excludeAccess)                throw ServiceException.PERM_DENIED("you do not have sufficient permissions");            if (excludeModify)                throw MailServiceException.MODIFY_CONFLICT();        }        if (info.itemIds.size() != msgs.length + 1)            info.incomplete = MailItem.DELETE_CONTENTS;        return info;    }