-
Notifications
You must be signed in to change notification settings - Fork 158
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
D 10.1 Berlin: crash with empty FMX application #18
Comments
I just quickly analyzed the issue and it is caused by the fact that the weak references hashmap is lazy initialized which happens when FastMM is already initialized but is finalized in the finalization part of System.pas which happens after the finalization part of FastMM4.pas is run (which calls FinalizeMemoryManager). So this requires finalizing FastMM later (or not at all as seems to be done for BCB according to the ifdef?) or using the NeverUninstall option? |
Wow, how did something that basic make it past both internal testing and the beta?!? |
Is it the same as www.translate.ru -> http://www.sql.ru/forum/1162994/grabli-s-fastmm-bds-exe ? They say to avoid this it needs to ensure the memory manager does not hook into SysUtils neither directly nor via other used units. |
From that forum "That is the same: Monitors support is initialized in SysUtils themselves" |
Quality Central: https://quality.embarcadero.com/browse/RSP-16796 |
The Quality Central issue says it is resolved in 10.2.2 but has any of you actually checked that it is? |
Well, ok, sorry for the noise, this comes from my own code, a very weird case of interdependencies between interface instances. |
I've got the same issue using Tokyo 10.2. I'll see if my client will allow me to upgrade to 10.2.2 or 10.2.3 and see if that fixes the issue. [edit] |
Hi, A somewhat hack (but seems effective) fix for this Regards Change the bottom of FastMM4.pas (including initialize and finalize) with code below. // FastMM4Options.inc // FastMM4.pas {$ifndef PatchBCBTerminate} procedure ExitProcFinalize; initialization finalization end. |
While it says that the issue is fixed in 10.2.2 - it is not. Not all FreeMem/Dispose calls were removed in 10.2 and 10.3. Only 10.4 seems to fix this issue completely. |
This is fixed in 10.4, so this ticket should probably be closed. |
Hello,
using FastMM4 in an empty FMX application in Delphi 10.1 Berlin results in crash in procedure TMonitor.Destroy;
steps to reproduce:
Best regards
Dirk
The text was updated successfully, but these errors were encountered: