Because SquirrelMail has to copy a message to the trash
folder *before* deleting it, we run into a situation
where a user over quota who has move_to_trash turned on
cannot delete any messages. In fact, even if the
message didn't have to be copied before deletion this
would present a problem depending on how over quota a
user is and how big the deleted message is. One
possible approach would be to disable quotas on each
users' Trash folders, but that's not a very pleasant
solution. Instead, I've grabbed the quota functions out
of Bill Shupp's quota_usage plugin and integrated them
into sqimap_messages_delete(). There is a namespace
collision with the quota_usage plugin because Bill
opted to use sqimap_get_quota() as the name for his
function, which is IMO the most reasonable name for the
one I put in imap_messages.php, but since they work the
same it's a minor fix.
I've attached a unified diff against SquirrelMail 1.2.9.
Log in to post a comment.