Skip to content

CppDesk 3.5.1

Choose a tag to compare

@oocsng oocsng released this 12 Oct 22:46
· 49 commits to main since this release

Downloads

  • Windows (x64): Download CppDesk.exe (standalone portable executable, no installation required).
  • macOS (Apple Silicon & Intel): Download CppDesk-v3.5.1-macos.tar.gz, extract, and run ./build.sh to build CppDesk.app and CppDesk-macos.tar.gz.

Security & Cross-Platform Fixes in 3.5.1

  • File Sync Path Traversal Hardening: Rejected drive colons (:), .. traversal segments, and absolute paths in FileSyncManager::normalizePath(), and added canonical root-prefix containment checks before writing incoming delta blocks.
  • POSIX 64-Bit File I/O: Replaced Windows-only _wfopen and _fseeki64 calls on non-Windows targets with UTF-8 fopen and 64-bit fseeko (_FILE_OFFSET_BITS=64) to support >2 GB files on macOS and Linux.
  • CoreGraphics Alpha Channel Normalization: Enforced 0xFF opaque alpha during macOS screen capture row copies so translucent windows do not corrupt dirty-tile diffing or SIMD tile hashes.
  • macOS TCC Permissions & CppDesk.app Bundle: Added platform/macos/Info.plist with Screen Recording, Accessibility, and Microphone usage descriptions, configured CMake MACOSX_BUNDLE packaging, and added runtime CGPreflightScreenCaptureAccess / CGRequestScreenCaptureAccess prompts.
  • Cross-Platform Clipboard & File Transfer: Added Apple CommonCrypto CC_SHA256_CTX streaming SHA-256 verification, std::filesystem::space disk space checks, and HOME downloads resolution on macOS.