On Wed, Mar 15, 2023 at 03:57:40PM -0400, Andrew Piskorski wrote: > On Tue, Mar 14, 2023 at 04:44:21PM -0400, Andrew Piskorski wrote: > > > Debug Error! > > Program: C:\web\ns-fork-pub\naviserver\nsd\libnsd.dll > > Run-Time Check Failure #2 - Stack around the variable 'filter' was > > corrupted.
> On Windows, running the "ns_config.test" tests triggers that one. All > the tests through ns_config-7.4.0, pass, then it stops with no further > output. Yep, the next test, ns_config-7.4.1, is sufficient to trigger > the problem all by itself. I put the same code that the ns_config-7.4.1 test runs into a simple *.tcl page like this: set xx [ns_set array [ns_configsection -filter "unread" ns/testconfig]] ns_return 200 {text/plain} "Result: $xx" Hitting that web page, I the ns_return never runs, because nsd.exe has broken before getting that far. WinDbg says the stack corruption is happening in NsTclConfigSectionObjCmd() (in "nsd/tclconf.c"), but it doesn't notice until it gets to the end of that function. I think most of the work there is in Ns_ParseObjv(), so maybe that, or something it calls, is the most likely place for some sort of array bounds overrun to be hiding. I don't know though, it could be anything that NsTclConfigSectionObjCmd() calls. I don't know how else to further track down this bug, but if anybody has further suggestions I'm willing to try them. -- Andrew Piskorski <a...@piskorski.com> _______________________________________________ naviserver-devel mailing list naviserver-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/naviserver-devel