diff options
author | Matthias Andree <matthias.andree@gmx.de> | 2010-04-24 05:14:02 +0200 |
---|---|---|
committer | Matthias Andree <matthias.andree@gmx.de> | 2010-12-14 17:53:02 +0100 |
commit | 3718805edd205a4eb557205b0dbc476fa765d339 (patch) | |
tree | 4315e88395cb1d30056d0665901a165fe25bff21 /pop3.c | |
parent | 771429b93137b16b0a338735488d8db15ea7ae95 (diff) | |
download | fetchmail-3718805edd205a4eb557205b0dbc476fa765d339.tar.gz fetchmail-3718805edd205a4eb557205b0dbc476fa765d339.tar.bz2 fetchmail-3718805edd205a4eb557205b0dbc476fa765d339.zip |
Reduce complexity of adding UIDs in fastuidl.
Diffstat (limited to 'pop3.c')
-rw-r--r-- | pop3.c | 5 |
1 files changed, 3 insertions, 2 deletions
@@ -812,6 +812,7 @@ static int pop3_fastuidl( int sock, struct query *ctl, unsigned int count, int int ok; unsigned int first_nr, last_nr, try_nr; char id [IDLEN+1]; + struct idlist *savep = NULL; /** pointer to cache save_str result, speeds up saves */ first_nr = 0; last_nr = count + 1; @@ -853,8 +854,8 @@ static int pop3_fastuidl( int sock, struct query *ctl, unsigned int count, int last_nr = try_nr; /* save it */ - newl = save_str(&ctl->oldsaved, id, UID_UNSEEN); - newl->val.status.num = try_nr; + savep = save_str(savep ? &savep : &ctl->oldsaved, id, UID_UNSEEN); + savep->val.status.num = try_nr; } } if (outlevel >= O_DEBUG && last_nr <= count) |