Dear Cint Team,
We have a module where we write a C/C++ script and execute on Cint framework. We are using exported function and system calls in script. These exported functions belongs to another DLL module.
Found issue is critical because of even small fraction time delay(~10 Millisecond) in execution is causing the issue. We are not able to achieve test scenario due to time delay in Cint module.
For example:
int main()
{
TestModule tObj;
char *Readbuff=NULL;
char *Writebuff=NULL;
FILE *fHandle = NULL;
fHandle = fopen(….);
Readbuff = (char )malloc(100sizeof(char));
Writebuff =(char )malloc(100sizeof(char));
Printf(“Statement 1”);
For(int i=0;i<10;i++)
{
If(true == tObj.ReadFunction())
{
Closefile(fHandle);
free(Readbuff);
free(Writebuff);
tObj.Function1Call(); // exported dll function call
tObj.Function2Call(); //exported dll function call
return true;
}
else
{
Readbuff = (char )malloc(200sizeof(char));
Writebuff =(char )malloc(200sizeof(char));
//call another function
CallAnotherFunction();
free(Readbuff);
free(Writebuff);
}
}
Return false;
}
Void CallAnotherFunction()
{
tObj.Function1Call(); // exported dll function call
tObj.Function2Call(); //exported dll function call
…
…
…
tObj.Function1Call(); // exported dll function call
tObj.Function2Call(); //exported dll function call
return;
}
We have observed that though If(false == tObj.ReadFunction()) call return false , CINT interpreter execute those lines which are in if true block. Ideally we are not expecting any calls which are in true block.
Can we have any option in CINT framework through which I can optimize or disable those unwanted call execution ?
Your input would be highly appreciated.
Thanks