diff options
| author | heas <heas@NetBSD.org> | 2004-03-27 16:31:19 +0000 |
|---|---|---|
| committer | heas <heas@NetBSD.org> | 2004-03-27 16:31:19 +0000 |
| commit | f32166d8a91a2c82316a00a40ee4842e27ec245d (patch) | |
| tree | 23fa8e0342da03f7dc80d4e582d0351d2a2f3724 /gnu/dist/postfix/src/cleanup/cleanup_envelope.c | |
| parent | 5f1ffa71fcd47bffcc5eb3f23221d6570b558e8f (diff) | |
merge from 2.0.19 import
Diffstat (limited to 'gnu/dist/postfix/src/cleanup/cleanup_envelope.c')
| -rw-r--r-- | gnu/dist/postfix/src/cleanup/cleanup_envelope.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/gnu/dist/postfix/src/cleanup/cleanup_envelope.c b/gnu/dist/postfix/src/cleanup/cleanup_envelope.c index 3ef96b0e8e7..5be545bb5ac 100644 --- a/gnu/dist/postfix/src/cleanup/cleanup_envelope.c +++ b/gnu/dist/postfix/src/cleanup/cleanup_envelope.c @@ -153,10 +153,12 @@ static void cleanup_envelope_process(CLEANUP_STATE *state, int type, char *buf, } } if (type == REC_TYPE_TIME) { - state->time = atol(buf); + if (state->time == 0) + state->time = atol(buf); cleanup_out(state, type, buf, len); } else if (type == REC_TYPE_FULL) { - state->fullname = mystrdup(buf); + if (state->fullname == 0) + state->fullname = mystrdup(buf); } else if (type == REC_TYPE_FROM) { VSTRING *clean_addr = vstring_alloc(100); @@ -211,6 +213,8 @@ static void cleanup_envelope_process(CLEANUP_STATE *state, int type, char *buf, vstring_free(clean_addr); myfree(state->orig_rcpt); state->orig_rcpt = 0; + } else if (type == REC_TYPE_DONE) { + /* void */ ; } else if (type == REC_TYPE_WARN) { if ((state->warn_time = atol(buf)) < 0) { state->errs |= CLEANUP_STAT_BAD; |
