Search Issue Tracker
Fixed
Fixed in 2022.3.30f1, 6000.0.1f1
Won't Fix in 2023.2.X
Votes
0
Found in
2021.3.38f1
2022.3.24f1
2023.2.20f1
6000.0.0b16
7000.0.0a1
Issue ID
UUM-70009
Regression
No
DownloadHandlerTexture can access a destroyed texture object on destruction
If DownloadHandlerTexture.GetContent is used to query a texture and that texture is explicitly destroyed prior to the destruction of DownloadHandlerTexture, this can lead to an access violation in the destructor.
The destructor tries to dereference m_Texture if it was queried, where it could've been explicitly destroyed as a user-owned texture prior to this destruction.
{code:java}
if (m_Queried)
RemoveGarbageCollectSharedAssetsExclusion(m_Texture->GetInstanceID());{code}
A straightforward way to reproduce this is with the process in the attached project where Dispose isn't expicitly called, and handler destruction is left to GC. I've found -debugallocator needs to be used for this to reliably be detected.
*Steps to reproduce:*
1. Either build a player using the attached project, or the prebuilt exe.
2. Run the player exe with *-debugallocator*
3. Press 'D' to trigger the download event
*Actual results:*
An access violation should occur when running with -debugallocator
*Expected results:*
No access violation or crash
*Reproducible with versions:* Seen on 2022.3.22f1, looks present on all
*Tested on (OS):* Windows
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Inconsistent behaviour when interacting with different dropdown types with pointer events on parent Visual Element
- Hidden GameObjects won't re-enable when they have call "DontDestroyOnLoad" function
- Overlay Canvas are rendered on each split-screen camera when HDR is enabled
- [Android] The Player loses focus when using UnityEngine.Handheld.StartActivityIndicator() with Facebook SDK
- Build fails with "Building Library/Bee/artifacts/MacStandalonePlayerBuildProgram/gahcy/hj9mx3z/951.0 failed with output:..." errors when Scripting Backend is set to IL2CPP
Resolution Note (2023.2.X):
Closing as Won't fix due to 2023.2 reaching it's EOL.