The reason you don't see the problem on Linux is most likely you are making a thread safe structure on Windows, but not Linux. Try adding --enable-maintainer-ztsto Linux and then checking with valgrind ( USE_ZEND_ALLOC=0 valgrind /usr/bin/PHP .php)
With a quick look at your code, I saw that you did not define your own php_xsplit_init_globals, which initialized the flow variables. The Tis function must be registered from MINITby adding
ZEND_INIT_MODULE_GLOBALS(xsplit, php_yplist_init_globals, NULL);
call. Maybe something else is wrong, but this is the first thing I saw.
source
share