Skip to content

Conversation

@statico
Copy link

@statico statico commented Dec 22, 2025

Thanks for this! We've been trying this library out for some .dmg analysis. Claude helped us fix a few things.

  • Add LZMA decompression support for DMG files
  • Fix HFS+ file extraction to handle multi-extent files and prevent infinite loops
  • Fix partition offset handling in DMG ReadAt for reliable file reads
  • Make HFS+ attributes B-tree optional to handle more filesystem variations

Tests:

  • Tested against real-world DMG files with LZMA-compressed chunks
  • Verified multi-extent file extraction works correctly
  • Confirmed no hangs on large/complex HFS+ filesystems

cc @pmarkowsky

- dmg.go: Add LZMA compression support, fix partition offset handling
- hfsplus.go: Rewrite Files() for efficiency, add infinite loop protection
- types.go: Fix multi-extent file reading, fix String() recursion

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
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.

1 participant