From 92d39f73769040682f708d2ae49d4f630381ba9d Mon Sep 17 00:00:00 2001 From: Howard Chu Date: Wed, 10 Sep 2008 03:35:26 +0000 Subject: [PATCH] Fix prev commit --- servers/slapd/overlays/accesslog.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/servers/slapd/overlays/accesslog.c b/servers/slapd/overlays/accesslog.c index 722bd0cfa2..866afd7937 100644 --- a/servers/slapd/overlays/accesslog.c +++ b/servers/slapd/overlays/accesslog.c @@ -579,10 +579,14 @@ log_old_lookup( Operation *op, SlapReply *rs ) */ a = attr_find( rs->sr_entry->e_attrs, slap_schema.si_ad_entryCSN ); - if ( a && ber_bvcmp( &a->a_vals[0], &pd->csn ) > 0 ) { - AC_MEMCPY( pd->csn.bv_val, a->a_vals[0].bv_val, - a->a_vals[0].bv_len ); - pd->csn.bv_len = a->a_vals[0].bv_len; + if ( a ) { + int len = a->a_vals[0].bv_len; + if ( len > pd->csn.bv_len ) + len = pd->csn.bv_len; + if ( memcmp( a->a_vals[0].bv_val, pd->csn.bv_val, len ) > 0 ) { + AC_MEMCPY( pd->csn.bv_val, a->a_vals[0].bv_val, len ); + pd->csn.bv_len = len; + } } if ( pd->used >= pd->slots ) { pd->slots += PURGE_INCREMENT; -- 2.39.5