]> git.sur5r.net Git - openldap/commitdiff
don't use temporaries
authorPierangelo Masarati <ando@openldap.org>
Tue, 26 Apr 2005 00:33:43 +0000 (00:33 +0000)
committerPierangelo Masarati <ando@openldap.org>
Tue, 26 Apr 2005 00:33:43 +0000 (00:33 +0000)
servers/slapd/overlays/rwmdn.c

index dd7203c3cdc06ecfa61e7eb77e004df9dc3c5c1a..8b26b9818ad38628eb73dde8d71678eb24b562f9 100644 (file)
@@ -157,13 +157,14 @@ rwm_dn_massage(
 {
        int             rc = 0;
        struct berval   mdn;
+       static char     *dmy = "";
 
        assert( dc );
        assert( in );
        assert( dn );
 
        rc = rewrite_session( dc->rwmap->rwm_rw, dc->ctx,
-                       ( in->bv_len ? in->bv_val : "" ), 
+                       ( in->bv_val ? in->bv_val : dmy ), 
                        dc->conn, &mdn.bv_val );
        switch ( rc ) {
        case REWRITE_REGEXEC_OK:
@@ -197,6 +198,10 @@ rwm_dn_massage(
                break;
        }
 
+       if ( mdn.bv_val == dmy ) {
+               BER_BVZERO( &mdn );
+       }
+
        return rc;
 }