1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-10 23:44:24 +00:00

Windows: Use ComSmartPtr to manage FileDropTarget

This commit is contained in:
reuk 2025-10-28 15:24:31 +00:00
parent 57c739c444
commit 254e03a435
No known key found for this signature in database

View file

@ -1342,7 +1342,6 @@ public:
if (dropTarget != nullptr) if (dropTarget != nullptr)
{ {
dropTarget->peerIsDeleted = true; dropTarget->peerIsDeleted = true;
dropTarget->Release();
dropTarget = nullptr; dropTarget = nullptr;
} }
} }
@ -2076,7 +2075,7 @@ private:
bool isDragging = false, isMouseOver = false, bool isDragging = false, isMouseOver = false,
hasCreatedCaret = false, constrainerIsResizing = false, sizing = false; hasCreatedCaret = false, constrainerIsResizing = false, sizing = false;
IconConverters::IconPtr currentWindowIcon; IconConverters::IconPtr currentWindowIcon;
FileDropTarget* dropTarget = nullptr; ComSmartPtr<FileDropTarget> dropTarget;
UWPUIViewSettings uwpViewSettings; UWPUIViewSettings uwpViewSettings;
TransparencyKind transparencyKind = TransparencyKind::opaque; TransparencyKind transparencyKind = TransparencyKind::opaque;
#if JUCE_MODULE_AVAILABLE_juce_audio_plugin_client #if JUCE_MODULE_AVAILABLE_juce_audio_plugin_client
@ -2288,7 +2287,7 @@ private:
if (peer == nullptr) if (peer == nullptr)
peer = this; peer = this;
dropTarget = new FileDropTarget (*peer); dropTarget = ComSmartPtr { new FileDropTarget (*peer), IncrementRef::no };
} }
RegisterDragDrop (hwnd, dropTarget); RegisterDragDrop (hwnd, dropTarget);