Repository navigation
Sally v1.0.22
Sally v1.0.22 focuses on Unicode and path-safety hardening, safer Find result handling, FTP reliability, and more headless coverage for file-operation logic.
Highlights:
- Fixed an FTP view/download crash caused by unsafe initialization of FTP disk-work state.
- Added headless integration coverage for FTP disk writes and recursive delete prompt behavior.
- Added Find result save/load support, including safer reload validation.
- Preserved Unicode "Look in" paths in saved Find presets.
- Prevented lossy ANSI fallback from targeting the wrong file in Find result actions.
- Improved Unicode error reporting in worker copy/delete/create/convert/attribute dialogs.
- Hardened recursive delete script generation so skipped child directories do not cause parent directory deletes.
- Fixed a ZIP SFX settings initialization bug.
- Fixed a Salmon crash reporter static-initialization crash.
Find Improvements:
- Find results can now be saved and loaded.
- Loaded Find CSV/TXT rows are validated and re-statted before becoming actionable.
- Delete from Find results now uses the wide shell path list, avoiding wildcard-like behavior from lossy ANSI names.
- Actions that still depend on ANSI-backed paths now refuse non-round-trippable Unicode rows instead of risking operations on the wrong file.
- Saved Find presets now persist Unicode Look in roots.
File Operation And Unicode Hardening:
- Centralized long-path decoration.
- Moved more file-system operations behind wide-first interfaces.
- Routed directory enumeration through IFileEnumerator.
- Added ADS stream enumeration and wider worker I/O interface coverage.
- Improved snapshot builder support for directory move/delete/change-attrs/change-case flows.
- Added opt-in handling for non-empty/system-hidden delete prompts, ADS-loss prompts, fast directory moves, and reparse-point directory deletes.
Reliability Fixes:
- FTP disk work no longer corrupts CPathBuffer members during initialization.
- ZIP SFX settings no longer clears a std::string owner with memset.
- Salmon no longer uses handle-tracked critical-section initialization before the handle system is ready.
- Recursive delete scripts now respect skipped subtrees all the way up to the parent.
Full Changelog: v1.0.21...v1.0.22