Hi,

I have an XS module that is loaded with:

use Apache2::XSLoader ();
our $VERSION = '0.05';
Apache2::XSLoader::load __PACKAGE__;

Is Apache2::XSLoader for public use or is it only mod_perl-internal? I am 
asking because no documentation is found for this module.

Anyway, if a previous version of my module is already installed then I get 
version conflicts between the xs and the pm parts while testing.

The reason is this line from XSLoader::load:

    my $modlibname = (caller())[1];

It obviously assumes that there is nothing in between in the caller chain.

But Apache2::XSLoader::load calls XSLoader::load as

    XSLoader::load(@_);

Wouldn't it be better to change this line to

    goto &XSLoader::load;

to make XSLoader happy?

Torsten
Index: lib/Apache2/XSLoader.pm
===================================================================
--- lib/Apache2/XSLoader.pm	(revision 638852)
+++ lib/Apache2/XSLoader.pm	(working copy)
@@ -28,7 +28,7 @@
 
 sub load {
     return unless BOOTSTRAP;
-    XSLoader::load(@_);
+    goto &XSLoader::load;
 }
 
 1;

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to