Fix Flatpak build with SLIC3R_PCH=OFF (mixed-filament missing includes) - #712
Merged
LiuLikeQian merged 1 commit intoAug 13, 2026
Merged
Conversation
MixedFilamentBatchDialog.cpp uses wxWindowUpdateLocker but never included <wx/wupdlock.h>; it only compiled because the PCH (pchheader.hpp) pulls the header in. The Flatpak build sets -DSLIC3R_PCH=OFF, so the TU failed with 'wxWindowUpdateLocker was not declared in this scope'. MixedFilamentColorMapPanel.hpp uses std::array without including <array>, the same latent PCH dependency; the Flatpak CI run never reached this file (74% aborted), so it would have failed on the next run. Both are one-line include additions matching the surrounding code.
LiuLikeQian
approved these changes
Aug 13, 2026
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.
Description
The Flatpak CI build fails because the mixed-filament code relies on the precompiled header to pull in two headers:
src/slic3r/GUI/MixedFilamentBatchDialog.cppuseswxWindowUpdateLockerbut never includes<wx/wupdlock.h>. The Flatpak build sets-DSLIC3R_PCH=OFF, so the TU fails with'wxWindowUpdateLocker' was not declared in this scope(run 31679936598, aarch64 Flatpak job).src/slic3r/GUI/MixedFilamentColorMapPanel.hppusesstd::arraywithout including<array>— the same latent PCH dependency. The failed CI run aborted at 74% before compiling this TU, so it would have failed on the next run.Both are one-line include additions, matching sibling files (e.g.
BitmapComboBox.cpp,EditGCodeDialog.cpp) that already include these headers directly.Screenshots/Recordings/Graphs
N/A — build-only fix.
Tests
-DSLIC3R_PCH=OFF(MSVC, fresh Ninja build reusing the prebuilt deps):MixedFilamentBatchDialog.cppfailed with C2065'wxWindowUpdateLocker': undeclared identifier; after the fix, all 14 TUs touched by the mixed-filament commit (9e42e78) compile cleanly.b63ab9afb9) had both Flatpak jobs green; the failing dispatch run (31679936598, commitdf205a640d) differs by 6 commits, of which only the mixed-filament commit (feat: mixed-filament phase 2 — batch color match with manual/recommended modes #702) touches C++ that reaches the Flatpak build.