I'm having big problems with TDBF when using it in my multi threaded application.
Here is a shortened version of call stack:
[005AEE69]{NavStreetsImporter.exe} dbf_prsdef.TExpressList.Add (Line 805, "dbf_prsdef.pas") + $7
[005AD47C]{NavStreetsImporter.exe} dbf_prssupp.TSortedCollection.AddList (Line 148, "dbf_prssupp.pas") + $10
[005C0785]{NavStreetsImporter.exe} dbf_parser.TDbfParser.FillExpressList (Line 445, "dbf_parser.pas") + $19
[005AF54F]{NavStreetsImporter.exe} dbf_prscore.TCustomExpressionParser.Create (Line 304, "dbf_prscore.pas") + $4
[005C05E0]{NavStreetsImporter.exe} dbf_parser.TDbfParser.Create (Line 365, "dbf_parser.pas") + $4
[005BFD0A]{NavStreetsImporter.exe} dbf.TDbfMasterLink.Create (Line 2956, "dbf.pas") + $9
[004494FE]{NavStreetsImporter.exe} StdCtrls.TCustomEdit.DefaultHandler (Line 2002, "StdCtrls.pas") + $6
[005BD2BA]{NavStreetsImporter.exe} dbf.TDbf.Create (Line 627, "dbf.pas") + $9
[005C3426]{NavStreetsImporter.exe} Geometry.TShapeFile.Create (Line 732, "Geometry.pas") + $9
[005D0208]{NavStreetsImporter.exe} ImportData.ImportSHP (Line 468, "ImportData.pas") + $7
[005D14A7]{NavStreetsImporter.exe} ImportData.TImportWorkerThread.DoExecute (Line 667, "ImportData.pas") + $4
[005CE13A]{NavStreetsImporter.exe} Globals.TWorkerThread.Execute (Line 1187, "Globals.pas") + $5
[004494FE]{NavStreetsImporter.exe} StdCtrls.TCustomEdit.DefaultHandler (Line 2002, "StdCtrls.pas") + $6
[0042D0AE]{NavStreetsImporter.exe} Classes.ThreadProc (Line 9372, "classes.pas") + $5
[004494FE]{NavStreetsImporter.exe} StdCtrls.TCustomEdit.DefaultHandler (Line 2002, "StdCtrls.pas") + $6
[00403001]{NavStreetsImporter.exe} System.@FreeMem (Line 2466, "system.pas") + $0
[00404D48]{NavStreetsImporter.exe} System.ThreadWrapper (Line 11554, "system.pas") + $0
[004494FE]{NavStreetsImporter.exe} StdCtrls.TCustomEdit.DefaultHandler (Line 2002, "StdCtrls.pas") + $6
The exception occurs when I'm trying to create new instance of TDBF and it happens only sometime so I guess it's because TDBF is not thread safe. Now I've removed support for MasterLink (as you can read from stack list, exception is raised when TDbfParser creation is in progress) and because I don't use Filter so TDbfParser is never used. I hope it will help, but I'll appreciate if this bug will be fixed ASAP.
I'm using Delphi 7 Professional.
Hi Paul,
I have given 'Developers' permission to update tickets. Does this allow
you to update the status?
Thanks
On 20-05-15 18:38, Paul Baker wrote:
Related
Bugs:
#68Hi Micha,
Yes. I already had permission to create. Now I have permission to edit
too. I marked bugs 58 and 68 closed-fixed.
On Thu, May 21, 2015 at 4:15 AM, Micha Nelissen mdv@users.sf.net wrote:
Related
Bugs:
#68This is fixed in revision 407.
Last edit: Paul Baker 2015-05-21