dovecot-2.2: fs-metawrap: Error handling fixes
dovecot at dovecot.org
dovecot at dovecot.org
Mon Feb 4 20:18:39 EET 2013
details: http://hg.dovecot.org/dovecot-2.2/rev/159c18c2e502
changeset: 15727:159c18c2e502
user: Timo Sirainen <tss at iki.fi>
date: Mon Feb 04 20:15:32 2013 +0200
description:
fs-metawrap: Error handling fixes
diffstat:
src/lib-fs/fs-metawrap.c | 15 ++++++++++++---
1 files changed, 12 insertions(+), 3 deletions(-)
diffs (32 lines):
diff -r e7d682358619 -r 159c18c2e502 src/lib-fs/fs-metawrap.c
--- a/src/lib-fs/fs-metawrap.c Mon Feb 04 20:14:16 2013 +0200
+++ b/src/lib-fs/fs-metawrap.c Mon Feb 04 20:15:32 2013 +0200
@@ -145,7 +145,11 @@
{
struct metawrap_fs *fs = (struct metawrap_fs *)_fs;
- return fs_wait_async(fs->super);
+ if (fs_wait_async(fs->super) < 0) {
+ fs_metawrap_copy_error(fs);
+ return -1;
+ }
+ return 0;
}
static void
@@ -167,8 +171,13 @@
struct metawrap_fs_file *file = (struct metawrap_fs_file *)_file;
char c;
- if (!file->fs->wrap_metadata)
- return fs_get_metadata(file->super, metadata_r);
+ if (!file->fs->wrap_metadata) {
+ if (fs_get_metadata(file->super, metadata_r) < 0) {
+ fs_metawrap_file_copy_error(file);
+ return -1;
+ }
+ return 0;
+ }
if (fs_read(_file, &c, 1) < 0)
return -1;
More information about the dovecot-cvs
mailing list