C++ assertion

  • Thread starter Thread starter Penny Balkwill via .NET 247
  • Start date Start date
P

Penny Balkwill via .NET 247

(Type your message here)
I am supporting a system which uses ORACLE Forms, and we are getting an intermittent error:

Assertion failed!
Program: D:\Dev6i\bin\ifrun60.exe
File: D:\f994w32\src\it\ittl.c
Line: 482

Expression: !((ptimer->pflags_ittlt)&(((ittlpflg)4)))&&(current || !((ptimer->pflags_ittlt)&(((ittlpflg)2))))&&(current || !((ptimer->pflags_ittlt)&(((ittlpflag)1))))

We have no c++ or ORACLE FORMS people on site, as this is third party software. Is it possible anyone out there knows why this error happens??
 
Hello !

A quick look suggests that some sort of a timer's bit flag field is causing
an assertion. It is checking the lowest three bits of a variable
(pflags_ittlt). When simplifying the expression, it will resolve to the
following:

!(pflags_ittlt & 4) AND ( current OR !(pflags_ittlt & 2 ) AND ( current OR
!(pflags_ittlt & 1) )

This expression will lead to an assertion (evaluate to false) when the
following conditions are set:
- third bit of pflags_ittlt is not set AND
- 'current' is not set OR second bit of pflags_ittlt is not set AND
- 'current' is not set OR first bit of pflags_ittlt is not set

Thus, 'current' is the most significant variable. What it represents in the
code is completely unknown to me. I recommend trying to debug the code (if
possible) to see what the value of 'current' is when the assertion occurs.
This might or might not be related to Oracle Forms itself, as you've given
no context upon which to judge whether it is or not. The expression itself
does not say "Yes, I'm Oracle Forms related" or vice versa :)

Hope this helps (though I believe it doesn't)..

-Antti Keskinen
 
Assertion failed!
Program: D:\Dev6i\bin\ifrun60.exe
File: D:\f994w32\src\it\ittl.c
Line: 482

This is most likely a build problem in the executable mentioned
in the message, or in one of DLLs used by it (debug code left in
release build, probably by mistake).
The best way to solve it is to request a fix from the developers of
the application.

Regards,
Oleg
[VC++ MVP]
 
Back
Top