Problem with dynamic created TIBCStoredProc - CodeGuard

Discussion of open issues, suggestions and bugs regarding IBDAC (InterBase Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
tkujalow
Posts: 5
Joined: Mon 01 Sep 2008 08:48
Location: Poznań - Poland

Problem with dynamic created TIBCStoredProc - CodeGuard

Post by tkujalow » Mon 01 Sep 2008 09:17

I create dynamicly TIBCStoredProc component. I only create them, and I get this wormings in CodeGuard:
What is wrong with this component. I use TIBCQuery, ane TIBCScript in the same way, and everything is ok.
I use Builder 5.0 Prof, and licensed IBDAC 2.5.0.37 Prof


Error 00067. 0x130C10 (Thread 0x15A0):
Method called on illegally casted object: Attempt to access 712 byte(s) at
0x0200EEFC. The 'this' pointer points to heap block 0x0200EEFC which is only
708 bytes long.
Call Tree:
0x00424DB4(=ServerDBfC9x.exe:0x01:023DB4) C:\PROGRAM FILES\BORLAND\CBUILDER5\IBDAC\INCLUDE\IBC.hpp#862
0x00424921(=ServerDBfC9x.exe:0x01:023921) D:\Builder C++\Server DBfC - IBDAC\_DBfC_IBConnections.cpp#32
0x0042D6B2(=ServerDBfC9x.exe:0x01:02C6B2) D:\Builder C++\Server DBfC - IBDAC\_DBfC_IBConnections.cpp#1022
0x0042F33D(=ServerDBfC9x.exe:0x01:02E33D) D:\Builder C++\Server DBfC - IBDAC\_DBfC_IBConnections.cpp#1306
0x0042EFEE(=ServerDBfC9x.exe:0x01:02DFEE) D:\Builder C++\Server DBfC - IBDAC\_DBfC_IBConnections.cpp#1246
0x00415CF8(=ServerDBfC9x.exe:0x01:014CF8) D:\Builder C++\Server DBfC - IBDAC\_DBfC.cpp#801

The memory block (0x0200EEFC) [size: 708 bytes] was allocated with SysGetMem
Call Tree:
0x0056103A(=ServerDBfC9x.exe:0x01:16003A)
0x00424921(=ServerDBfC9x.exe:0x01:023921) D:\Builder C++\Server DBfC - IBDAC\_DBfC_IBConnections.cpp#32
0x0042D6B2(=ServerDBfC9x.exe:0x01:02C6B2) D:\Builder C++\Server DBfC - IBDAC\_DBfC_IBConnections.cpp#1022
0x0042F33D(=ServerDBfC9x.exe:0x01:02E33D) D:\Builder C++\Server DBfC - IBDAC\_DBfC_IBConnections.cpp#1306
0x0042EFEE(=ServerDBfC9x.exe:0x01:02DFEE) D:\Builder C++\Server DBfC - IBDAC\_DBfC_IBConnections.cpp#1246
0x00415CF8(=ServerDBfC9x.exe:0x01:014CF8) D:\Builder C++\Server DBfC - IBDAC\_DBfC.cpp#801


This happend in this point of code IBC.hpp:

#pragma option push -w-inl
/* TCustomIBCQuery.Create */ inline __fastcall virtual TIBCStoredProc(Classes::TComponent* Owner) :
TCustomIBCQuery(Owner) { }
#pragma option pop


I make only this:


IB_P=new TIBCStoredProc(Owner);

where IB_P:
TIBCStoredProc * IB_P;

Plash
Devart Team
Posts: 2844
Joined: Wed 10 May 2006 07:09

Post by Plash » Tue 02 Sep 2008 07:10

We have fixed this problem. The fix will be included in the next build of IBDAC.

Post Reply