Skip to content

v0.4.2

Choose a tag to compare

@github-actions github-actions released this 20 Apr 12:12
· 15 commits to main since this release

Real fix for the "Clone tree here" issue v0.4.1 missed.

Fixed

  • "Clone tree here" actually works now. The 7-Zip dialog was not a v0.4.0
    regression as v0.4.1's revert assumed — it was a pre-existing bug in
    PowerLinkDropHandler::QueryContextMenu. The handler returned the count
    of items added (per the obvious-but-wrong reading) instead of the
    documented largest command-id offset used, plus one. With folder drops
    the only inserted item was at offset 1 (CMD_CLONE), but we returned 1
    instead of 2. Windows then advanced the next chained drop handler's
    idCmdFirst by 1 — colliding our id 4097 with the next handler's id
    4097. Visually the user saw "PowerLink: Clone tree here" but the click
    routed to whichever later handler had claimed the same id (7-Zip on the
    reporter's machine). Now we track the actual max offset used and return
    that plus one.

    Hardlink-on-file drops happened to ship working because CMD_HARDLINK
    is offset 0 and count==1==max+1 for that case — the wrong formula
    produced the right number by coincidence.

Added (internal)

  • DropHandler now writes Debug-build diagnostic traces to
    %TEMP%\powerlink-menu.log (the same file ModernMenuCommand uses), with
    a [drop] tag. No effect on Release builds — pure no-op.

Full Changelog: v0.4.1...v0.4.2