dovecot: Use less space from data stack.
dovecot at dovecot.org
dovecot at dovecot.org
Sun Dec 9 15:01:18 EET 2007
details: http://hg.dovecot.org/dovecot/rev/f2c37fe48668
changeset: 6975:f2c37fe48668
user: Timo Sirainen <tss at iki.fi>
date: Sun Dec 09 15:01:14 2007 +0200
description:
Use less space from data stack.
diffstat:
2 files changed, 21 insertions(+), 13 deletions(-)
src/lib-storage/index/dbox/dbox-file.c | 22 +++++++++++++++-------
src/lib-storage/index/dbox/dbox-save.c | 12 ++++++------
diffs (106 lines):
diff -r ec6cc297dd82 -r f2c37fe48668 src/lib-storage/index/dbox/dbox-file.c
--- a/src/lib-storage/index/dbox/dbox-file.c Sun Dec 09 14:15:56 2007 +0200
+++ b/src/lib-storage/index/dbox/dbox-file.c Sun Dec 09 15:01:14 2007 +0200
@@ -37,10 +37,11 @@ static char *dbox_generate_tmp_filename(
{
static unsigned int create_count = 0;
- return i_strdup_printf("temp.%s.P%sQ%uM%s.%s",
- dec2str(ioloop_timeval.tv_sec), my_pid,
+ return i_strdup_printf("temp.%lu.P%sQ%uM%u.%s",
+ (unsigned long)ioloop_timeval.tv_sec, my_pid,
create_count++,
- dec2str(ioloop_timeval.tv_usec), my_hostname);
+ (unsigned int)ioloop_timeval.tv_usec,
+ my_hostname);
}
void dbox_file_set_syscall_error(struct dbox_file *file, const char *function)
@@ -419,7 +420,9 @@ static int dbox_file_open(struct dbox_fi
*deleted_r = FALSE;
if (file->fd == -1) {
- ret = dbox_file_open_fd(file);
+ T_FRAME(
+ ret = dbox_file_open_fd(file);
+ );
if (ret <= 0) {
if (ret < 0)
return -1;
@@ -490,11 +493,16 @@ int dbox_file_open_or_create(struct dbox
int dbox_file_open_or_create(struct dbox_file *file, bool read_header,
bool *deleted_r)
{
+ int ret;
+
*deleted_r = FALSE;
- if (file->file_id == 0)
- return dbox_file_create(file) < 0 ? -1 : 1;
- else if (file->input != NULL)
+ if (file->file_id == 0) {
+ T_FRAME(
+ ret = dbox_file_create(file) < 0 ? -1 : 1;
+ );
+ return ret;
+ } else if (file->input != NULL)
return 1;
else
return dbox_file_open(file, read_header, deleted_r);
diff -r ec6cc297dd82 -r f2c37fe48668 src/lib-storage/index/dbox/dbox-save.c
--- a/src/lib-storage/index/dbox/dbox-save.c Sun Dec 09 14:15:56 2007 +0200
+++ b/src/lib-storage/index/dbox/dbox-save.c Sun Dec 09 15:01:14 2007 +0200
@@ -74,7 +74,6 @@ int dbox_save_init(struct mailbox_transa
struct dbox_message_header dbox_msg_hdr;
struct dbox_save_mail *save_mail;
struct istream *crlf_input;
- const char *cur_path;
enum mail_flags save_flags;
const struct stat *st;
uoff_t mail_size;
@@ -99,7 +98,6 @@ int dbox_save_init(struct mailbox_transa
ctx->failed = TRUE;
return -1;
}
- cur_path = dbox_file_get_path(ctx->cur_file);
/* add to index */
save_flags = flags & ~MAIL_RECENT;
@@ -136,7 +134,8 @@ int dbox_save_init(struct mailbox_transa
if (o_stream_send(ctx->cur_output, &dbox_msg_hdr,
sizeof(dbox_msg_hdr)) < 0) {
mail_storage_set_critical(_t->box->storage,
- "o_stream_send(%s) failed: %m", cur_path);
+ "o_stream_send(%s) failed: %m",
+ dbox_file_get_path(ctx->cur_file));
ctx->failed = TRUE;
}
@@ -224,7 +223,6 @@ int dbox_save_finish(struct mail_save_co
struct dbox_save_context *ctx = (struct dbox_save_context *)_ctx;
struct mail_storage *storage = &ctx->mbox->storage->storage;
struct dbox_save_mail *save_mail;
- const char *cur_path;
uoff_t offset = 0;
unsigned int count;
@@ -235,7 +233,9 @@ int dbox_save_finish(struct mail_save_co
index_mail_cache_parse_deinit(ctx->cur_dest_mail,
ctx->cur_received_date);
- if (!ctx->failed) {
+ if (!ctx->failed) T_FRAME_BEGIN {
+ const char *cur_path;
+
cur_path = dbox_file_get_path(ctx->cur_file);
offset = ctx->cur_output->offset;
dbox_save_write_metadata(ctx);
@@ -244,7 +244,7 @@ int dbox_save_finish(struct mail_save_co
"o_stream_flush(%s) failed: %m", cur_path);
ctx->failed = TRUE;
}
- }
+ } T_FRAME_END;
o_stream_unref(&ctx->cur_output);
i_stream_unref(&ctx->input);
More information about the dovecot-cvs
mailing list