#define dl_connections (dl_cxtx.x_connections)
-static void terminate(void)
+static void terminate(pTHX_ void *ptr)
{
- dTHX;
dMY_CXT;
int size = GetHandleSize((Handle) dl_connections) / sizeof(ConnectionID);
HLock((Handle) dl_connections);
dMY_CXT;
if (!dl_connections) {
dl_connections = (ConnectionID **)NewHandle(0);
- atexit(terminate);
+ call_atexit(terminate, (void*)0);
}
PtrAndHand((Ptr) &connID, (Handle) dl_connections, sizeof(ConnectionID));
RETVAL = connID;
CODE:
DLDEBUG(2,PerlIO_printf(Perl_debug_log,"dl_install_xsub(name=%s, symref=%x)\n",
perl_name, symref));
- ST(0)=sv_2mortal(newRV((SV*)newXS(perl_name, (void(*)())symref, filename)));
+ ST(0) = sv_2mortal(newRV((SV*)newXS_flags(perl_name,
+ (void(*)(pTHX_ CV *))symref,
+ filename, NULL,
+ XS_DYNAMIC_FILENAME)));
char *