diff options
author | Sergey Poznyakoff <gray@gnu.org.ua> | 2010-12-19 22:26:28 +0200 |
---|---|---|
committer | Sergey Poznyakoff <gray@gnu.org.ua> | 2010-12-19 22:26:28 +0200 |
commit | 68d83f0d247aaa3331bf8e4a29b89687c9b2e6ea (patch) | |
tree | 22531a377df79bc7380425d4970e6f4fb9b1e8c2 /include/mailutils/sys/amd.h | |
parent | 094f5d94f39d5476e33dfb4e38e394746972ec74 (diff) | |
download | mailutils-68d83f0d247aaa3331bf8e4a29b89687c9b2e6ea.tar.gz mailutils-68d83f0d247aaa3331bf8e4a29b89687c9b2e6ea.tar.bz2 |
maildir: speed up mailbox scanning
* include/mailutils/sys/amd.h (_amd_message_lookup_or_insert): New proto.
* libmailutils/base/amd.c (_amd_message_lookup_or_insert): New function.
(_amd_message_insert): Rewrite using _amd_message_lookup_or_insert.
* libproto/maildir/mbox.c (maildir_message_cmp): Stop comparison on
':'.
(maildir_message_lookup): Remove.
(maildir_scan_dir): Use _amd_message_lookup_or_insert.
* po/POTFILES.in: Update.
Diffstat (limited to 'include/mailutils/sys/amd.h')
-rw-r--r-- | include/mailutils/sys/amd.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/mailutils/sys/amd.h b/include/mailutils/sys/amd.h index fde26da92..2bc8dc721 100644 --- a/include/mailutils/sys/amd.h +++ b/include/mailutils/sys/amd.h @@ -106,6 +106,9 @@ struct _amd_data int amd_init_mailbox (mu_mailbox_t mailbox, size_t mhd_size, struct _amd_data **pmhd); +int _amd_message_lookup_or_insert (struct _amd_data *amd, + struct _amd_message *key, + size_t *pindex); int _amd_message_insert (struct _amd_data *mhd, struct _amd_message *msg); int amd_message_stream_open (struct _amd_message *mhm); void amd_message_stream_close (struct _amd_message *mhm); |