#ifndef wrap_keyword_plugin
# ifdef OP_CHECK_MUTEX_LOCK
# define KEYWORD_PLUGIN_MUTEX_LOCK OP_CHECK_MUTEX_LOCK
# define KEYWORD_PLUGIN_MUTEX_UNLOCK OP_CHECK_MUTEX_UNLOCK
# else
# define KEYWORD_PLUGIN_MUTEX_LOCK ((void)0)
# define KEYWORD_PLUGIN_MUTEX_UNLOCK ((void)0)
# endif
STATIC
void
wrap_keyword_plugin( pTHX_ Perl_keyword_plugin_t new_plugin, Perl_keyword_plugin_t *old_plugin_p ) {
#define wrap_keyword_plugin( a, b ) wrap_keyword_plugin( aTHX_ a, b )
if
( *old_plugin_p )
return
;
KEYWORD_PLUGIN_MUTEX_LOCK;
if
( !*old_plugin_p ) {
*old_plugin_p = PL_keyword_plugin;
PL_keyword_plugin = new_plugin;
}
KEYWORD_PLUGIN_MUTEX_UNLOCK;
}
#endif