What's Changed
- Files: opening a RAW no longer crashes the host. A decode that used to place
LibRaw, which is about 750 KB of state, on the stack of the worker thread
overflowed that thread's 512 KB stack and the process died with a bus error.
LibRaw now lives on the heap, and the open thread gets the same 8 MB stack the
filmstrip thread already used, so a large frame develops all the way through - Files: the "Opening" label in the status bar and over the preview uses three
dots. A single ellipsis character is missing from some fonts and showed as a
question mark - Build: the backend follows one layout.
app/Bootstrapis the composition root
and builds the DAOs and the managers once at start-up; the interface keeps no
knowledge of how a manager is put together - Build: the open, export, colour-space, chain, and parameter flows are managers
with an interface and an implementation each, so the panels call one method and
the manager owns the sequence behind it. The old free functions in
services/Actions.cppandservices/Export.cppare gone - Build: sidecar and workspace-project file access sits behind
SidecarDaoand
WorkspaceProjectDao. A manager asks the DAO for a load or a save, so the
on-disk format has one home. Neither file name nor JSON shape changed - Build: managers and the chain and parameter commands take a narrow
ManagerSession(document, interface state, chain, filmstrip, status, and the
workers) instead of the wholeWorkspace, so a call that needs the document
cannot also reach an unrelated part of the state - Build: the interface boundary has request types (
ExportRequest,
ColorSpaceChange), and the validation for an empty destination or an
out-of-range choice happens in the manager rather than in the dialog - Build: none of this changes a pixel, the sidecar format, the workspace format,
the menus, or the shortcuts
Downloads
- macOS (Apple Silicon):
OfxRawHost-macOS-arm64.dmg - macOS (Intel):
OfxRawHost-macOS-x86_64.dmg - Windows (x64):
OfxRawHost-Windows-x64.exe - Linux (x86_64):
OfxRawHost-Linux-x86_64.AppImage
Full Changelog: v0.4.4...v0.4.5