Corinna Vinschen <corinna-cygwin <at> cygwin.com> writes: > Incredible but true. It was an alignment problem with a local buffer > in the function which moves the directory to the bin when a sharing > violation occurs.
> BYTE infobuf[sizeof (FILE_NAME_INFORMATION) + 32767 * sizeof (WCHAR)] That's an awfully big buffer to be stack-allocating. It's bigger than a system page, which means if you are nearing stack overflow, then call rmdir(), your application could suffer from silent termination rather than orderly SIGSEGV stack overflow when it accesses beyond the guard page. Didn't a recent gcc version add a -W option to warn about stack frames larger than a certain size? > This seems to be a new problem with gcc-4. As long > as I built Cygwin with gcc-3, I never had this problem. Weird, indeed. > > Please test the latest from CVS. It should fix your problem. I'll let you know how it goes. Meanwhile, I've patched the autoconf testsuite to avoid triggering the problem in the first place. -- Eric Blake -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/