On 8/14/06, Joe Orton <[EMAIL PROTECTED]> wrote:
On Mon, Aug 14, 2006 at 02:55:49PM -0400, Garrett Rooney wrote:
> I'm really just hoping for a way to make DSO loaded libraries just the
> same as any other library, if they require a whole lot of backflips to
> use reliably, that seems like a problem to me.
Of course, with DSOs there are some whole new lifetime issues to think
about - it *is* difficult, no doubt about it. Nesting pools properly
and avoiding "global" pools helps with constraining the DSO to its own
little short-lived world.
I'm not seeing anything at all here which needs changing in APR; just
some application code which has not been designed in anticipation of
being used from a DSO. That is really not something which can or should
be fixed in APR.
But if it's not fixed in APR then we've basically determined that you
cannot write a library that uses APR and DSOs and exposes interfaces
to the outside world that involve pools, or apparently constant
strings, it seems, or if you do you have to impose all sorts of extra
requirements on the lifetimes of pools that calling code passes in.
That seems kind of unreasonable to me, especially since we have a
place (apr_initialize) that is in a perfect position to solve this
problem for us, why can't we use it?
-garrett