EurekaLog newsgroups
Go Back   EurekaLog newsgroups > Other > Suggestions
Reply
 
Thread Tools Display Modes
  #1  
Old 10-Sep-2008, 08:41 AM
Yams Yams is offline
Member
 
Join Date: Jul 2008
Posts: 59
Default Include more information into EL's debug info

Hello, Fabio.

Here goes my part two for: http://news.eurekalog.com/showthread.php?t=2041
Part one is here: http://news.eurekalog.com/showthread.php?t=2106

For demo, please see my part one. The interesting part is output of demo application. Let see it here ("Use debug DCUs" is off, "Do not store the Class/Procedure names" is off):

004C3C62: TForm11.Button1Click 49		[004C3C62]{Project12.exe} Unit11.TForm11.Button1Click (Line 49, "Unit11.pas")
004C41E5: TForm11.FormCreate 86			[004C41E5]{Project12.exe} Unit11.TForm11.FormCreate (Line 86, "Unit11.pas")
004A7836: . 0					[004A7836]{Project12.exe} Forms.TCustomForm.DoCreate
004A748E: . 0					[004A748E]{Project12.exe} Forms.TCustomForm.AfterConstruction
004A7464: . 0					[004A7464]{Project12.exe} Forms.TCustomForm.Create
The left column is information retrieved by GetSourceInfoByAddr (i.e. it is EL's debug info).
The right column is information retrieved by GetLocationInfoStr (i.e. it is JCL's debug info).

As you can see, the EL's debug information misses some important information.
Please note, that additional information has nothing to do with JCL itself. If I enable map file for project ("Detailed" option) and turn off JCL debug info - the output will be the same.
In other words: all nessesary information exists. It can be found (for example) in map file:

  Address             Publics by Name

 0004:0000888C       ActnList..9
 0001:000A1748       ActnList..TActionLink
 0001:000A1320       ActnList..TContainedAction
 ...
 0001:000AA0AC       Forms.TCustomForm.ActiveChanged
 0001:000A647C       Forms.TCustomForm.AfterConstruction   <<--
 0001:000A7E6C       Forms.TCustomForm.AlignControls
 ...
 0001:000ABB8C       Forms.TCustomForm.CMUIActivate
 0001:000A62F0       Forms.TCustomForm.Create   <<--
 0001:000A64B4       Forms.TCustomForm.CreateNew
 ...
 0001:000A722C       Forms.TCustomForm.DoClose
 0001:000A6804       Forms.TCustomForm.DoCreate   <<--
 0001:000A6880       Forms.TCustomForm.DoDestroy
 ...  

But for some reason this information is not included into EL's debug information.

Of couse, there are no line numbers for Forms unit. But the names of methods are present. Please, add this information into EL.

P.S.
I suspect function TBaseModule.BuildMapFile as the source of such behaviour, but I didn't dig this issue. At first glance TBaseModule.BuildMapFile gather all required information (ProcedureList) but do not write it anywhere if unit does not contain line numbers information.

P.P.S.
Also note that even with MAP and JDBG info available - EL does not try to extract information from these sources when it is unable to find information in EL' debug info.
Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Get debug info within a thread without an error Yahoo Serious Suggestions 0 05-Aug-2008 02:51 PM
A way to disable adding EL debug info? Unregistered General 3 21-Jul-2008 01:37 PM
Runtime Packages and debug info johnfaris General 5 25-Nov-2005 02:00 PM
Debug Info ON? Tom Boon General 1 28-Aug-2005 07:52 AM
Is it possible to obtain all debug information and log it manually? Konstantin Knyazev General 6 23-Jun-2005 10:26 AM

All times are GMT. The time now is 02:58 PM.
Powered by vBulletin® Version 3.8.2
Copyright ©2000 - 2013, Jelsoft Enterprises Ltd.
Copyright © EurekaLab s.a.s. - VAT ID: IT05554520824