Skip to content

Fix section lookup after a boundary flush - #29

Merged
tbybell merged 3 commits into
gtkwave:mainfrom
Rodrigodd:upstream/rvat-boundary-section-lookup
Oct 18, 2026
Merged

tbybell merged 3 commits into
gtkwave:mainfrom
Rodrigodd:upstream/rvat-boundary-section-lookup

Conversation

@Rodrigodd

Copy link
Copy Markdown
Contributor

Problem: A value lookup at a section's end time also checks the next section, which may contain a later value change at that same time. When trying to read to next section, the code was seeking to the wrong position, causing it to read the current section's header instead of the next section's header. This led to incorrect behavior when the next section was a value change section, later resulting in a heap overflow when parsing the chain table.

Solution: read the next section at its actual start and use its header only when it begins at the requested time.

AI-assisted

Problem: A value lookup at a section's end time also checks the next
section, which may contain a later value change at that same time. When
trying to read to next section, the code was seeking to the wrong
position, causing it to read the current section's header instead of the
next section's header. This led to incorrect behavior when the next
section was a value change section, later resulting in a heap overflow
when parsing the chain table.

Solution: read the next section at its actual start and use its header
only when it begins at the requested time.

AI-assisted
@tbybell

tbybell commented Oct 18, 2026

Copy link
Copy Markdown
Contributor

Thanks. You might want to make sure I didn't accidentally delete any test references/comments in the meson.build and test harness when I resolved mere conflicts.

-Tony

@tbybell
tbybell merged commit 5b4bb75 into gtkwave:main Oct 18, 2026
3 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.

2 participants