]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-storage: Make sure status/metadata structs are cleared when they're looked up.
authorTimo Sirainen <tss@iki.fi>
Tue, 13 Sep 2011 08:55:25 +0000 (11:55 +0300)
committerTimo Sirainen <tss@iki.fi>
Tue, 13 Sep 2011 08:55:25 +0000 (11:55 +0300)
src/lib-storage/mail-storage.c

index 39abef181362e6340a13970b2d466459f7f8e563..d4858efc140161e6edf725ab8af915c69db80090 100644 (file)
@@ -1146,6 +1146,7 @@ int mailbox_get_status(struct mailbox *box,
                       enum mailbox_status_items items,
                       struct mailbox_status *status_r)
 {
+       memset(status_r, 0, sizeof(*status_r));
        return box->v.get_status(box, items, status_r);
 }
 
@@ -1154,6 +1155,8 @@ void mailbox_get_open_status(struct mailbox *box,
                             struct mailbox_status *status_r)
 {
        i_assert(box->opened);
+
+       memset(status_r, 0, sizeof(*status_r));
        if (box->v.get_status(box, items, status_r) < 0)
                i_unreached();
 }
@@ -1161,6 +1164,8 @@ void mailbox_get_open_status(struct mailbox *box,
 int mailbox_get_metadata(struct mailbox *box, enum mailbox_metadata_items items,
                         struct mailbox_metadata *metadata_r)
 {
+       memset(metadata_r, 0, sizeof(*metadata_r));
+
        if (!box->opened) {
                if (mailbox_open(box) < 0)
                        return -1;