On 15 July 2013 19:32, Maxim Dounin <[email protected]> wrote: > Hello! > > On Sat, Jul 13, 2013 at 12:19:51PM +0200, Kate F wrote: > >> Hi, >> >> I'm trying to use EXSLT's <func:function> with nginx's xslt filter >> module. The effect I think I'm seeing is that my functions are >> seemingly ignored. > > [...] > >> Looking at ngx_http_xslt_filter_module.c I see exsltRegisterAll() is >> called, which is what should register libexslt's handler for >> func:function and friends: >> >> #if (NGX_HAVE_EXSLT) >> exsltRegisterAll(); >> #endif >> >> I know NGX_HAVE_EXSLT is defined because other EXSLT functions (such >> as things in the date: and str: namespaces) work fine. > > It looks like exsltRegisterAll() is called too late for EXSLT > Functions extension. > > Please try the following patch: > > # HG changeset patch > # User Maxim Dounin <[email protected]> > # Date 1373909466 -14400 > # Node ID bc1cf51a5b0a5e8512a8170dc7991f9e966c5533 > # Parent 8e7db77e5d88b20d113e77b574e676737d67bf0e > Xslt: exsltRegisterAll() moved to preconfiguration. > > The exsltRegisterAll() needs to be called before XSLT stylesheets > are compiled, else stylesheet compilation hooks will not work. This > change fixes EXSLT Functions extension.
Awesome! Good catch. Thanks for that. Your patch works fine. -- Kate _______________________________________________ nginx mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx
