Watch, Follow, &
Connect with Us
Public Report
Report From: Delphi-BCB/RTL/Delphi/Thread support    [ Add a report in this area ]  
Report #:  18069   Status: Closed
(Pulled) Threadvar variables and DLLs do not mix. SysInit calls ExitThreadTLS before calling the user's DllProc. This means the DllProc c
Project:  Delphi Build #:  5.0.6.13
Version:    5.0 Submitted By:   John Kaster
Report Type:  Crash / Data loss / Total failure Date Reported:  1/21/2000 12:00:00 AM
Severity:    Serious / Highly visible problem Last Updated: 3/20/2012 2:24:39 AM
Platform:    All versions Internal Tracking #:   79159
Resolution: Fixed (Resolution Comments) Resolved in Build: : 10.0.2098.14501
Duplicate of:  None
Voting and Rating
Overall Rating: No Ratings Yet
0.00 out of 5
Total Votes: None
Description
Threadvar variables and DLLs do not mix. SysInit calls ExitThreadTLS before calling the user's DllProc. This means the DllProc cannot use any threadvar variables.
Steps to Reproduce:
Build the attached project group.
Run the project from Delphi's IDE.
Click Begin Thread a couple times.
Select a thread and click End Thread.
The DLL reports a problem.
(Because the problem deals with uninitialized memory, it might work by mere coincidence. Running in the IDE reduces the chances that the TLS memory will remain untouched after it is freed.)
Workarounds
None
Attachment
N
Comments

None

Server Response from: ETNACODE01