Windows 1.3.0 Beta 1: stale openjp2.dll (2.4.0) - 'opj_decoder_set_strict_mode' entry point not found at launch #647
Labels
No labels
amd
avatars
bug
builder
cannot-reproduce
crash
epic
feature
from-viewer
gl-removal
known-limitation
monitoring
parity
perf
platform
priority
critical
priority
high
priority
low
priority
medium
provenance
rendering
rt
status
in-progress
status
testing
status
up-next
triage
ui
upstream
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
sky_line/Slipstream#647
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Reported by a tester on 1.3.0 Beta 1 (Windows). At launch, Windows shows:
In their install folder,
openjp2.dllis dated 29/09/2026, butSlipstreamViewer.exeis dated 10/10/2026. It's not yet known whether they sent a bug report.Cause (confirmed on the local Windows build)
opj_decoder_set_strict_modefromopenjp2.dll. That function only exists from 2.5.0 on.openjp2.dllis still 2.4.0. On the local tree,build-windows-x86_64/sharedlibs/Release/openjp2.dllandpackage/Slipstream_win64/openjp2.dllare both 2.4.0, dated Sep 27. The 2.5.4 DLL is inpackages/lib/release/.CMakeCopyIfDifferent.cmake, a custom command whose output depends on the source) only runs when the source is newer than the output. The 2.5.4 package DLL has an Oct 2025 mtime, which is older than the stale 2.4.0 copy. Ninja therefore treats the copy as up to date and never replaces it.build-windows-x86_64between runs (git clean ... -e build-windows-x86_64). So the released zip and installer almost certainly carry the same stale DLL. This still needs checking against the published asset.libopenjp2.so.Fix
sharedlibs/whenever a 3p package version changes. Every 3p bump can hit this, not just OpenJPEG.sharedlibson the CI runner, and confirm the shippedopenjp2.dllreports 2.5.4.packages/.Workaround for the user
None that is clean. Copying a 2.5.x
openjp2.dllnext to the exe would work, but the real fix is the respin.Same failure reported by a second user in #644 (Windows 11 22621).
Fixed in 1.3.0 Beta 2. The staging copy now compares contents every build, and Windows packaging refuses a stale DLL. The published zip was verified to carry OpenJPEG 2.5.4.