Dne 03/27/06 v 08:03:58 (-0700), Vitaliy Margolen napsal(a):
> Monday, March 27, 2006, 12:51:03 AM, Petr Tesarik wrote:
>> > Hi,
>> > this patch fixes a bug in get_thread_context(). Currently, this
> > routine assumes that all registers except debug registers are saved in
> thread->>context if it exists. However, it does not include FPU
> > registers.
>> > IMO, we should not blindly assume which registers are present in
> thread->>context but look at ContextFlags.
>> > BTW I found this bug when winedbg stopped working with programs using
> > the FPU.
>> > ChangeLog:
>> > * Look at ContextFlags to see which registers are saved in
> > thread->context.
>> Sorry this is not correct. Exception handler should get full context
> including FPU context. If we not saving it that's the problem on the
> other end.
I don't think so. A real 80386 without a math coprocessor does not
even have an FPU context. I guess this is why CONTEXT_FULL does not
include CONTEXT_FLOATING_POINT.
Petr Tesarik