Skip to content

Fix CLI assemble-list crash during plate loading - #560

Open
Ohmicaudio wants to merge 1 commit into
Snapmaker:mainfrom
Ohmicaudio:fix/cli-assemble-list-plate-loading
Open

Fix CLI assemble-list crash during plate loading#560
Ohmicaudio wants to merge 1 commit into
Snapmaker:mainfrom
Ohmicaudio:fix/cli-assemble-list-plate-loading

Conversation

@Ohmicaudio

Copy link
Copy Markdown

Summary

This fixes a Snapmaker Orca CLI crash when using --load-assemble-list.

The crash reproduced locally in Snapmaker Orca V2.3.4 even with a single-object assemble-list control. Upstream OrcaSlicer V2.4.1 can slice the same same-plate assemble-list workflow successfully, so this appears to be a Snapmaker fork CLI assemble-list issue rather than an AMP/profile issue.

Changes

  • Hardened CLI assemble-list plate loading so it does not initialize GUI-only plate/render/raycaster/name-texture state when there is no GUI plater.
  • Fixed STL object name trimming in the assemble-list path.
  • No slicing behavior changes are intended outside the CLI assemble-list loading path.

Changed files

  • src/Snapmaker_Orca.cpp
  • src/slic3r/GUI/PartPlate.cpp
  • src/slic3r/GUI/PartPlate.hpp

Validation

Built successfully locally.

CLI tests after the fix:

  • Single-object assemble-list control: exit code 0, G-code exported.
  • Two-object same-plate assemble-list: exit code 0, G-code exported.

Generated G-code paths from local validation:

  • B:\ohmic\Snapmaker-OrcaSlicer-cli-fix\outputs\amp_cli_patch_probe\single_control_cli_safe_final\plate_1.gcode
  • B:\ohmic\Snapmaker-OrcaSlicer-cli-fix\outputs\amp_cli_patch_probe\same_plate_cli_safe_final\plate_1.gcode

Scope

This branch contains only the CLI assemble-list fix.

It does not include AMP planner code, benchmark docs, generated outputs, submission docs, profile changes, or generated files.

No production profiles were changed.
No G-code generation logic was changed.
No Snapmaker validation or safety logic was changed.

Motivation

This makes CLI-driven slicing and benchmark automation possible for workflows that currently require manual GUI slicing. It also avoids a hard crash when CLI assemble-list loading is used without the GUI plater state available.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants