Return-Path: Delivered-To: apmail-apr-dev-archive@apr.apache.org Received: (qmail 98730 invoked by uid 500); 23 Nov 2001 17:03:44 -0000 Mailing-List: contact dev-help@apr.apache.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: Delivered-To: mailing list dev@apr.apache.org Received: (qmail 98719 invoked from network); 23 Nov 2001 17:03:44 -0000 Subject: Re: [PATCH] optimization for apr_pool_userdata_set From: Ian Holsman To: Brian Pane Cc: dev@apr.apache.org In-Reply-To: <3BFCBF6E.70007@pacbell.net> References: <3BFCBF6E.70007@pacbell.net> Content-Type: text/plain Content-Transfer-Encoding: 7bit X-Mailer: Evolution/0.99.2 (Preview Release) Date: 23 Nov 2001 09:03:47 -0800 Message-Id: <1006535027.24406.2.camel@griffon.cnet.com> Mime-Version: 1.0 X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N On Thu, 2001-11-22 at 01:03, Brian Pane wrote: > This patch takes advantage of the recent optimizations to > apr_hash_t's handling of APR_HASH_KEY_STRING to eliminate > a strlen call within apr_pool_userdata_set. > your patch seems to patch apr_pool_userdata_setn not apr_pool_userdata_set I've commited the below also applying the same thing to _set ..Ian > --Brian > > Index: srclib/apr/memory/unix/apr_pools.c > =================================================================== > RCS file: /home/cvspublic/apr/memory/unix/apr_pools.c,v > retrieving revision 1.116 > diff -u -r1.116 apr_pools.c > --- srclib/apr/memory/unix/apr_pools.c 2001/11/21 16:40:54 1.116 > +++ srclib/apr/memory/unix/apr_pools.c 2001/11/22 08:48:27 > @@ -1294,12 +1294,10 @@ > apr_status_t (*cleanup) (void *), > apr_pool_t *cont) > { > - apr_size_t keylen = strlen(key); > - > if (cont->prog_data == NULL) > cont->prog_data = apr_hash_make(cont); > > - apr_hash_set(cont->prog_data, key, keylen, data); > + apr_hash_set(cont->prog_data, key, APR_HASH_KEY_STRING, data); > > if (cleanup) { > apr_pool_cleanup_register(cont, data, cleanup, cleanup); > > -- Ian Holsman IanH@cnet.com Performance Measurement & Analysis CNET Networks - (415) 344-2608