Skip to content

Conversation

LagoLunatic
Copy link
Collaborator

@LagoLunatic LagoLunatic commented Aug 21, 2025

Implements diffing the data of just a single symbol when you click on it. This is useful for things like vtables and stringBases:

image image

Fixes #173

Copy link
Owner

@encounter encounter left a comment

Choose a reason for hiding this comment

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

Awesome stuff!

@LagoLunatic
Copy link
Collaborator Author

I reworked the whole-section-symbol diffing a bit. Now, it doesn't try to reuse the real section symbols from the object at all like it did before, since those might not necessarily exist, or might only exist for some sections. Instead it creates a fake section symbol for each section with a unique name, and it does this at the end after sections have been combined. This fixes the following issues with the previous implementation:

  • If one side was missing the section symbol, you couldn't diff the section (e.g. dsd objects).
  • If multiple data sections with the same name existed and were combined into one, the section symbol's size would be outdated, and only include the bytes of the first section instead of all of them.
  • If multiple data sections with the same name existed and were not combined, you could only diff the first pair of them, as the GUI can't distinguish between different symbols with the same name.

Now it looks like this:
image

@encounter encounter merged commit 23009bf into encounter:main Sep 3, 2025
24 checks passed
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.

Add a data view for individual labels in data/rodata/...
2 participants