Project JEDI - Issue Tracker
Mantis Bugtracker

Viewing Issue Advanced Details Jump to Notes ] View Simple ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0002676 [JEDI VCL] 00 JVCL Components crash always 2005-02-21 14:26 2006-04-05 01:17
Reporter foxy View Status public  
Assigned To obones
Priority normal Resolution fixed Platform
Status resolved   OS
Projection none   OS Version
ETA none Fixed in Version 3.30 Product Version 3.00 BETA 2
  Target Version Product Build
Summary 0002676: JvInterpreter: Call of derived methods does not work
Description I have defined a new class TRemoteQuery, descendent of TClientDataSet, which is desendent of TDataSet.
I have also defined my method TRemoteQuery.Open.
But instead of calling my new method TRemoteQuery.Open, JvInterpreter calls TDataSet.Open method.

The problem is in GetMethod function of TJvInterpreterAdapter.GetValue method.
After calling FGetList.Find(Identifier, i) function,
it checks (((Args.ObjTyp = varObject) and (Args.Obj is JvInterpreterMethod.FClassType))...

Open method of TDataSet is situated in FGetList list prior to TRemoteQuery.Open method, so it will be checked first.

Now, since TRemoteQuery is descendent of TDataSet, then "Args.Obj is JvInterpreterMethod.FClassType" will return true, which will cause the *WRONG* method to be called (instead of TRemoteQuery.Open);

I have attached the modifications of GetMethod function and FGetList.Find() method that will avoid this problem (check my comments);
Steps To Reproduce
Additional Information
Tags No tags attached.
Attached Files ? file icon GetMethod_and_Find.pas [^] (2,594 bytes) 2005-02-21 14:26

- Relationships

-  Notes
obones (administrator)
2005-02-25 05:21

Which version of the JVCL are you using ?
foxy (reporter)
2005-02-25 08:13

JVCL 3.00 RC 1
obones (administrator)
2006-03-30 05:22

Thanks, this is now confirmed as working.
It will be in CVS as soon as SourceForge fixes the issues with CVS.
obones (administrator)
2006-04-05 01:17

This is now in CVS

- Issue History
Date Modified Username Field Change
2005-02-21 14:26 foxy New Issue
2005-02-21 14:26 foxy File Added: GetMethod_and_Find.pas
2005-02-25 05:20 obones Summary Calling methods of descendent classes => JvInterpreter: Call of derived methods does not work
2005-02-25 05:21 obones Note Added: 0006579
2005-02-25 05:21 obones Status new => feedback
2005-02-25 08:13 foxy Note Added: 0006587
2006-03-30 05:22 obones Note Added: 0008750
2006-03-30 05:22 obones Status feedback => confirmed
2006-04-05 01:17 obones Status confirmed => resolved
2006-04-05 01:17 obones Resolution open => fixed
2006-04-05 01:17 obones Assigned To => obones
2006-04-05 01:17 obones Note Added: 0008924

Mantis 1.1.6[^]
Copyright © 2000 - 2008 Mantis Group
Powered by Mantis Bugtracker