On 8/5/06, Philip Martin <philip@codematters.co.uk> wrote:
> "Garrett Rooney" <rooneg@electricjellyfish.net> writes:
>
> > +/* Global pool to allocate DSOs in. */
> > +static apr_pool_t *dso_pool;
>
> > +void
> > +svn_dso_initialize()
> > +{
> > + if (dso_pool)
> > + return;
> > +
> > + dso_pool = svn_pool_create(NULL);
>
> > +svn_error_t *
> > +svn_dso_load(apr_dso_handle_t **dso, const char *fname)
> > +{
> > + apr_status_t status;
> > +
> > + if (! dso_pool)
> > + svn_dso_initialize();
>
> If we agree on Vlad's refactoring of the atomic_init_once stuff for
> SASL then this might be another place it could be used.
That had occurred to me, but I didn't use it in this patch because I
wanted to keep things fairly self contained for backport purposes.
Once 1.4.x is kicked out the door I'd want to go back and make it use
the atomics code. Of course, we could also backport the atomics code,
but honestly, small changes to 1.4.x seem best at this point, and it's
not like this is the only non-thread-safe initialization code we've
got in the tree.
-garrett
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Sun Aug 6 06:33:43 2006