aboutsummaryrefslogtreecommitdiffhomepage
path: root/notmuch-new.c
diff options
context:
space:
mode:
authorGravatar Austin Clements <amdragon@mit.edu>2011-06-11 12:54:05 -0400
committerGravatar David Bremner <bremner@debian.org>2011-09-24 20:00:28 -0300
commit1353dbe8642ebf5fc7e4ff562bb4b8f3a8e15132 (patch)
tree867e4076f6569d987b340cbbe91a982174c56448 /notmuch-new.c
parent51c3c0b2d27c8d0ba8e1ae242fd907c59f82d992 (diff)
new: Cleanup. Put removed/renamed message count in add_files_state_t.
Previously, pointers to these variables were passed around individually. This was okay when only one function needed them, but we're about to need them in a few more places.
Diffstat (limited to 'notmuch-new.c')
-rw-r--r--notmuch-new.c36
1 files changed, 16 insertions, 20 deletions
diff --git a/notmuch-new.c b/notmuch-new.c
index 82e2d358..c7dfbb74 100644
--- a/notmuch-new.c
+++ b/notmuch-new.c
@@ -42,7 +42,7 @@ typedef struct {
int total_files;
int processed_files;
- int added_messages;
+ int added_messages, removed_messages, renamed_messages;
struct timeval tv_start;
_filename_list_t *removed_files;
@@ -730,8 +730,7 @@ static void
_remove_directory (void *ctx,
notmuch_database_t *notmuch,
const char *path,
- int *renamed_files,
- int *removed_files)
+ add_files_state_t *add_files_state)
{
notmuch_directory_t *directory;
notmuch_filenames_t *files, *subdirs;
@@ -748,9 +747,9 @@ _remove_directory (void *ctx,
notmuch_filenames_get (files));
status = notmuch_database_remove_message (notmuch, absolute);
if (status == NOTMUCH_STATUS_DUPLICATE_MESSAGE_ID)
- *renamed_files = *renamed_files + 1;
+ add_files_state->renamed_messages++;
else
- *removed_files = *removed_files + 1;
+ add_files_state->removed_messages++;
talloc_free (absolute);
}
@@ -760,7 +759,7 @@ _remove_directory (void *ctx,
{
absolute = talloc_asprintf (ctx, "%s/%s", path,
notmuch_filenames_get (subdirs));
- _remove_directory (ctx, notmuch, absolute, renamed_files, removed_files);
+ _remove_directory (ctx, notmuch, absolute, add_files_state);
talloc_free (absolute);
}
@@ -781,7 +780,6 @@ notmuch_new_command (void *ctx, int argc, char *argv[])
char *dot_notmuch_path;
struct sigaction action;
_filename_node_t *f;
- int renamed_files, removed_files;
notmuch_status_t status;
int i;
notmuch_bool_t timer_is_active = FALSE;
@@ -854,6 +852,7 @@ notmuch_new_command (void *ctx, int argc, char *argv[])
add_files_state.processed_files = 0;
add_files_state.added_messages = 0;
+ add_files_state.removed_messages = add_files_state.renamed_messages = 0;
gettimeofday (&add_files_state.tv_start, NULL);
add_files_state.removed_files = _filename_list_create (ctx);
@@ -868,27 +867,24 @@ notmuch_new_command (void *ctx, int argc, char *argv[])
ret = add_files (notmuch, db_path, &add_files_state);
- removed_files = 0;
- renamed_files = 0;
gettimeofday (&tv_start, NULL);
for (f = add_files_state.removed_files->head; f && !interrupted; f = f->next) {
status = notmuch_database_remove_message (notmuch, f->filename);
if (status == NOTMUCH_STATUS_DUPLICATE_MESSAGE_ID)
- renamed_files++;
+ add_files_state.renamed_messages++;
else
- removed_files++;
+ add_files_state.removed_messages++;
if (do_print_progress) {
do_print_progress = 0;
generic_print_progress ("Cleaned up", "messages",
- tv_start, removed_files + renamed_files,
+ tv_start, add_files_state.removed_messages + add_files_state.renamed_messages,
add_files_state.removed_files->count);
}
}
gettimeofday (&tv_start, NULL);
for (f = add_files_state.removed_directories->head, i = 0; f && !interrupted; f = f->next, i++) {
- _remove_directory (ctx, notmuch, f->filename,
- &renamed_files, &removed_files);
+ _remove_directory (ctx, notmuch, f->filename, &add_files_state);
if (do_print_progress) {
do_print_progress = 0;
generic_print_progress ("Cleaned up", "directories",
@@ -965,16 +961,16 @@ notmuch_new_command (void *ctx, int argc, char *argv[])
printf ("No new mail.");
}
- if (removed_files) {
+ if (add_files_state.removed_messages) {
printf (" Removed %d %s.",
- removed_files,
- removed_files == 1 ? "message" : "messages");
+ add_files_state.removed_messages,
+ add_files_state.removed_messages == 1 ? "message" : "messages");
}
- if (renamed_files) {
+ if (add_files_state.renamed_messages) {
printf (" Detected %d file %s.",
- renamed_files,
- renamed_files == 1 ? "rename" : "renames");
+ add_files_state.renamed_messages,
+ add_files_state.renamed_messages == 1 ? "rename" : "renames");
}
printf ("\n");