Skip to content

Comments

Fix: Should not throw on ARJ detection#1067

Merged
adamhathcock merged 3 commits intoreleasefrom
adam/fix-arj-factory
Dec 8, 2025
Merged

Fix: Should not throw on ARJ detection#1067
adamhathcock merged 3 commits intoreleasefrom
adam/fix-arj-factory

Conversation

@adamhathcock
Copy link
Owner

@adamhathcock adamhathcock commented Dec 8, 2025

Same as #1066

Fixes #1064

Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR fixes issue #1064 where ArjFactory.IsArchive would throw exceptions when attempting to detect non-ARJ files, rather than returning false as expected. The fix wraps the ARJ header detection logic in a try-catch block to handle invalid data gracefully.

  • Adds exception handling to ArjFactory.IsArchive to catch exceptions during header parsing
  • Adds two test cases to verify the fix: one for non-archive files and one for valid archives

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.

File Description
src/SharpCompress/Factories/ArjFactory.cs Adds try-catch block around ARJ header reading to return false instead of throwing on invalid data
tests/SharpCompress.Test/ArchiveTests.cs Adds regression tests for IsArchive method behavior with both invalid and valid archive files

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@adamhathcock adamhathcock merged commit 41c4263 into release Dec 8, 2025
2 checks passed
@adamhathcock adamhathcock deleted the adam/fix-arj-factory branch December 8, 2025 11:04
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