 |
BorlandTalk.com Borland discussion newsgroups
|
| View previous topic :: View next topic |
| Author |
Message |
quantdev2004@yahoo.co.uk Guest
|
Posted: Wed Mar 02, 2005 12:32 pm Post subject: Default8087CW magic reset |
|
|
Dear NG,
I am having hard time trying to understand what is causing a reset of
the Default8087CW system variable.
I am debugging a COM server written with Delphi 5.
This is the code:
I reset Default8087CW to $1332 in the entry point of the delphi
component.
The code:
Procedure EntryPointClass.EntryPointMethod();
begin
// At this point Default8087CW is $27F (all masks are activated)
// Let's reset this to what the correct value should be
Set8087CW($1332);
SomeMethodGoingDeep(); // BREAKPOINT_1
exit; // BREAKPOINT_2
end;
I have a watch on Default8087CW set to "Break when changed".
When I get to BREAKPOINT_1 I hit "Run". Process stops at
BREAKPOINT_2, and the value of Default8087CW has changed back to $27F.
the debugger does not stop when the variable changed.
So I thought I would step into SomeMethodGoingDeep to understand when
the variable was actually being changed. However, if I step into
SomeMethodGoingDeep (as opposed to hitting run), the variable does not
change.
Comments welcome.
Quantdev
|
|
| Back to top |
|
 |
Jamie Guest
|
Posted: Wed Mar 02, 2005 7:50 pm Post subject: Re: Default8087CW magic reset |
|
|
[email]quantdev2004 (AT) yahoo (DOT) co.uk[/email] wrote:
| Quote: | Dear NG,
I am having hard time trying to understand what is causing a reset of
the Default8087CW system variable.
I am debugging a COM server written with Delphi 5.
This is the code:
I reset Default8087CW to $1332 in the entry point of the delphi
component.
The code:
Procedure EntryPointClass.EntryPointMethod();
begin
// At this point Default8087CW is $27F (all masks are activated)
// Let's reset this to what the correct value should be
Set8087CW($1332);
SomeMethodGoingDeep(); // BREAKPOINT_1
exit; // BREAKPOINT_2
end;
I have a watch on Default8087CW set to "Break when changed".
When I get to BREAKPOINT_1 I hit "Run". Process stops at
BREAKPOINT_2, and the value of Default8087CW has changed back to $27F.
the debugger does not stop when the variable changed.
So I thought I would step into SomeMethodGoingDeep to understand when
the variable was actually being changed. However, if I step into
SomeMethodGoingDeep (as opposed to hitting run), the variable does not
change.
Comments welcome.
Quantdev
it could be the bebugger it self doing that. |
try running the app out side the IDE and use a Test message to see what
the value is.
just an idea.
|
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|