Correction to crash inside RtlCaptureStackBackTrace() + test case
joyer83 at live.fi
Sun Jan 23 13:56:39 CST 2011
Thanks for quick response!
> First i see is that your mail application wrapped the patch ( that is when
> long likes brake down into the next line ).
> Then you have a whitespace issue in the makefile i think...
Looks like my mailer (Windows Live Mail) thinks that if attachment has .txt
extension it is ok to do line wrapping and changing EOLs to CR LF. I
couldn't find an option to turn this feature off, but sending patches with
.patch extensions seems to prevent this formatting.
> > I created a new signal.c file for the test case under ntdll/tests since
> > I couldn’t find more fitting place.
> Not a good idea. Please put the test into rtl.c
Ok, I will do that.
> Please put ok() check inside get_back_trace_with_invalid_frame_pointer().
Hmm, good point, I wonder why I didn't check the result -variable instead...
I will change it as you proposed.
> Please use HeapAlloc/HeapFree. Don't cast void pointers. Here you don't
> to allocate anything, just use a stack variable.
True, using stack is easier, I don't know why I tried to do it the hard way.
> Also you not checking the return value from RtlCaptureStackBackTrace().
> Please do.
The function returns number of frames it could get. I don't know what kind
of value should be checked here since RtlCaptureStackBackTrace() is
implemented only on i386 architecture. The test would fail on other
architectures like arm, powerpc, x86_64 and sparc.
> Also, please send the test patch by itself through winebot before posting
> and verify that it passes on all flavors of windows.
Ok, I will try it out when I have fixed the test case.
More information about the wine-devel