forked from unsound/hfsexplorer
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
0.23.4 #4
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This makes sure these values are never used for calculations in a signed form. Accessors for the raw form of these values have been added as well for completeness.
APMPartition assumed a struct size of 512, but it varies with the block size as specified in the driver descriptor record (a partition always occupies a full block). Thus the data returned by ApplePartitionMap.getData(...) was incorrect and omitted the padding required to fill a whole block, instead laying out the entries as if they were using 512 bytes as block size. Fixed by making the pmPad field variable-sized and not static and copying all the data of the partition entry.
When building an AppleSingle/AppleDouble file with multiple extended attributes whose descriptors didn't end at an alignment boundary we would end up writing the descriptors to an incorrect offset, causing a corrupted attribute list.
The patched code was supposed to add an attribute record to an existing one if the name matched. Instead it ended up never adding attribute records that didn't match the existing last one.
The data offsets were incorrectly recorded in the AttributeEntry, and they weren't aligned properly.
This should be referring to the end of this entry and the start of the next one, but with padding which is usually applied to the FinderInfo / extended attributes entry, this isn't always accurate. Since we didn't know how many bytes have been allocated with padding, we add another 'length' parameter to the getBytes(...) prototype and pass the allocated size down to the FinderInfoEntry logic.
This was a mistake. The start of the value range should be aligned but after that point aligning values is not what macOS expects and it won't display the attribute if we do this.
suse jpl instead of jul clean up
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.