]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-index: Don't write a broken transaction if extension resize is done at first...
authorTimo Sirainen <tss@iki.fi>
Tue, 25 Jun 2013 12:46:50 +0000 (15:46 +0300)
committerTimo Sirainen <tss@iki.fi>
Tue, 25 Jun 2013 12:46:50 +0000 (15:46 +0300)
src/lib-index/mail-index-transaction-export.c

index 44fe5e32415c734a53be56d9e862643d328f077a..0228d4ed83b75349efcd007e1294e44433e556ad 100644 (file)
@@ -114,8 +114,12 @@ static void log_append_ext_intro(struct mail_index_export_context *ctx,
                intro = &resizes[ext_id];
 
                i_assert(intro->ext_id == idx || idx == (uint32_t)-1);
-               intro->name_size = idx != (uint32_t)-1 ? 0 :
-                       strlen(rext->name);
+               if (idx != (uint32_t)-1)
+                       intro->name_size = 0;
+               else {
+                       intro->ext_id = (uint32_t)-1;
+                       intro->name_size = strlen(rext->name);
+               }
                buffer_append(buf, intro, sizeof(*intro));
        } else {
                /* generate a new intro structure */