, apr_pool_cleanup_run, apr_pool_cleanup_kill. not to
mention having to loop over p-cleanups * num_dsos_to_close in
apr_pool_cleanup_kill.
sure it might be minmal overhead, but it is overhead, period. a little
here, a little there, this stuff adds up.
but if the exposure of apr_dso_handle_close() isn't
On Tuesday, April 17, 2001, at 08:38 PM, [EMAIL PROTECTED] wrote:
I would like David Reid and Brian Havard (and maybe Fred Sanchez and
either Bill)to sign off on the change before we make it.
I don't think that this will make the DSO code for dyld harder to
write... If you give me a day or
there, this stuff adds up.
If we were discussing operation, then I'd agree. We are talking about startup
shutdown behavior, so I'm in favor of Greg's position here, stay with the
interface we've defined for other such beasts.
but if the exposure of apr_dso_handle_close() isn't acceptable
there, this stuff adds up.
but if the exposure of apr_dso_handle_close() isn't acceptable because it
doesn't feel right, i guess apr_dso_make() or whatever will do the trick
until a Perl is released with the proper interface.
I would like David Reid and Brian Havard (and maybe Fred Sanchez and
either Bill
Greg Stein [EMAIL PROTECTED] writes:
I'm sorry, but this is just feeling wrong.
Perl opens these DSOs for me, but won't close them. I can't patch Perl to
do it for me... lessee... oh! I can patch APR! Yah, that's it!
I'm not comfortable with APR being a workaround for other problems.
Doug MacEachern [EMAIL PROTECTED] writes:
below is a complete patch to implement apr_dso_handle_close()
the only cleanup that saved into apr_dso_handle_t was os390:
dso-failing_errno = errno;
which is pointless since that value is returned by the function and
nothing was checking it anyways
i don't want to push apr_dso_handle_close() anymore, i understand that
it is not right for the public apr api. consider my patch recinded. i
will submit a patch for apr_dso_make, if i can cvs up my tree (its been
hanging all morning). and will patch Perl to make the native close
available from there.
Let's just have:
apr_dso_make(apr_dso_handle_t **h, void *plat_hand, apr_pool_t *p);
I know that Doug wants to do something like:
apr_dso_make(h, p);
apr_dso_fill(h, handle1);
apr_dso_unload(h);
apr_dso_fill(h, handle2);
apr_dso_unload(h);
apr_dso_fill(h,
On Mon, 16 Apr 2001 [EMAIL PROTECTED] wrote:
My biggest problem with passing in a void *, and using it as the dlhandle
to close, is that it won't work in error cases on some platforms. OS/2
requires that we save the error message when the error happens, at least
that is my understanding.
below is a complete patch to implement apr_dso_handle_close()
the only cleanup that saved into apr_dso_handle_t was os390:
dso-failing_errno = errno;
which is pointless since that value is returned by the function and
nothing was checking it anyways.
as you can see, the patch does not change any
a valid reason
to start moving outside of the standard apr_FOO_t design of APR. For a
workaround because Perl doesn't give you a function.
Cheers,
-g
On Tue, Apr 17, 2001 at 10:14:41AM -0700, Doug MacEachern wrote:
below is a complete patch to implement apr_dso_handle_close()
the only cleanup
Okay, this issue has died down now, so it is time to bring it back up,
with a potential solution. Doug and I have already discussed this, and he
agrees that this solves his problem. It also solves the other problems
that have been raised on this list.
My biggest problem with passing in a void
/unix/dso.c 2001/02/16 21:04:17 1.33
+++ srclib/apr/dso/unix/dso.c 2001/04/10 00:08:52
@@ -64,19 +64,30 @@
#include string.h /* for strerror() on HP-UX */
#endif
+APR_DECLARE(apr_status_t) apr_dso_handle_close(void *handle)
+{
+#if defined(HPUX) || defined(HPUX10) || defined(HPUX11
to get tossed after
you're done unloading DSOs.
-1 on apr_dso_handle_close. +0 on apr_dso_make. -0 on apr_dso_put.
Cheers,
-g
On Mon, Apr 09, 2001 at 08:54:45PM -0700, [EMAIL PROTECTED] wrote:
The problem is that the code you want to implement is incompatible with
APR's dso code. In order to use
14 matches
Mail list logo