fix(wine): release drop target after drop or leave - #3
Draft
silaswester wants to merge 2 commits into
Draft
silaswester wants to merge 2 commits into
silaswester wants to merge 2 commits into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
8ca473d0c6aa3b2d2711de4b6d24fe2c85fa6c48to release the retainedIDropTargetat the end ofdrag_drop_dropanddrag_drop_leave.Issue
drag & drop stops working at random intervals).silaswester/ableton-linux. It does not update, supersede, or rebase the two earlier open PRs (#1fromtask-t_bf605a9-116andfix/user32-drop-target-lifetime) so all three implementations remain available for side-by-side comparison.Source-equivalence / provenance
8ca473d0c6aa3b2d2711de4b6d24fe2c85fa6c48:Zhou Zhang <zhangzhou@uniontech.com>(mail header preserved)Fri, 17 Jul 2026 15:22:15 +0800(mail header preserved)[PATCH] user32: Release drop target at the end of drag_drop_drop and drag_drop_leave.(preserved verbatim, including the wrapped continuation)dlls/user32/clipboard.cbase SHA256 (extracted from vendoredvendor/wine-base-5c23dd1c.tar.zst) equalswine-mirror/wine's file at the upstream parent commitc5cb1e78.dlls/user32/clipboard.cSHA256 after applyingpatches/0099-user32-Release-drop-target-at-the-end-of-drag_drop_d.patchequalswine-mirror/wine's file at upstream8ca473d0.Acceptance matrix
scripts/test-user32-drop-target-lifetime.sh(preserves upstream mail authorship and subject)drag_drop_leaveretained-target cleanupscripts/test-user32-drop-target-lifetime.sh(covers drag_drop_leave retained-target cleanup)drag_drop_dropreleasescripts/test-user32-drop-target-lifetime.sh(covers delayed drop-path release after drop processing)scripts/test-user32-drop-target-lifetime.sh(applies cleanly to pinned Wine user32 source context)0099-...patch./scripts/build-audit.sh --check-series-policy patches/SERIES.sha256(OK: required Wine and PipeASIO series tails are present.)patches/SERIES.sha256re-verifiessha256sum -c patches/SERIES.sha256(all 106 entries OK)make check(pointer safety checks: PASS)make verify(OKfor every vendored archive)scripts/test-release-policy.sh(patch series cannot lose either required terminal member)Pre-existing failure isolated to unchanged baseline:
make testreachesscripts/test-desktop-integration.sh, which fails withinstaller kit is missing its PipeWire compatibility checkboth on this branch and on cleanmain. The failure is unrelated to this change.Documentation reconciliation
BUILDING.mddocuments thatmake testnow exercises the patch 0099 applicability invariant and that the deterministic source checks preserve the link to upstream commit8ca473d0c6aa3b2d2711de4b6d24fe2c85fa6c48.CHANGELOG.mdrecords the new backport, the upstream commit linkage, the runtime reproduction caveat (no Live runtime reproduction captured), and the relation to issue 116.patches/BASE.txtreconciles the series count, the 0099 provenance entry, and notes that runtime behavior is not proved by the deterministic checks.Scope evidence
git diff --name-status origin/main...HEAD: 0 deletions, 8 scoped filesBUILDING.md,CHANGELOG.md,Makefile,patches/0099-user32-Release-drop-target-at-the-end-of-drag_drop_d.patch(added),patches/BASE.txt,patches/SERIES.sha256,scripts/build-audit.sh,scripts/test-user32-drop-target-lifetime.sh(added).origin/mainat4004f205b67546d559e342f4ab62fd78b03fed5b. Local head SHA:0184ab996d3b856d300f83c39d6be458c78d2eed.Known defects / limits
make testdesktop-integration failure predates this branch and is unrelated to the patch 0099 change.Boundaries
silaswester/ableton-linuxonlymaintask-t_47cee33-116is left for Matt's comparison review; do not merge automatically#1and#2are not modified