[Issue 21365] TypeInfo.swap must not allow reachable memory to be freed if interrupted by a garbage collection pass

d-bugmail at puremagic.com d-bugmail at puremagic.com
Fri Nov 13 02:54:09 UTC 2020


https://issues.dlang.org/show_bug.cgi?id=21365

--- Comment #3 from Dlang Bot <dlang-bot at dlang.rocks> ---
dlang/druntime pull request #3269 "merge stable" was merged into master:

- e1b53449a9e44a3b63d61da172c37c2fd4aff1bb by Nathan Sashihara:
  Fix Issue 21365 - TypeInfo.swap must not allow reachable memory to be freed
if interrupted by a garbage collection pass

  If the type might contain pointers perform the swap in pointer-sized
  chunks in case a garbage collection pass interrupts the function.
  Directly affected TypeInfo subclasses that were not overriding swap:

  - TypeInfo_AssociativeArray
  - TypeInfo_Class
  - TypeInfo_Delegate
  - TypeInfo_Interface
  - TypeInfo_Struct

https://github.com/dlang/druntime/pull/3269

--


More information about the Digitalmars-d-bugs mailing list