Skip to content

Conversation

@luojiyin1987
Copy link

Fixes #66

Summary

Fix variable shadowing bug in fix_incorrect_toc() that caused updates to be written to wrong array positions.

Problem

The list_index variable (original TOC index) was being overwritten inside the page content loop. When results were written back to toc_with_page_number, they went to the wrong index.

Change

Rename loop variable from list_index to page_list_idx to avoid shadowing the original TOC index.

Impact

Before: If fixing TOC item at index 5, but page loop ended at index 19, the update would go to position 19.
After: Update correctly goes to position 5.

The list_index variable (original TOC index) was being overwritten
by the page loop iterator, causing results to be written back to
wrong index positions when updating toc_with_page_number.

Rename the loop variable to page_list_idx to avoid shadowing.
- Add docstring documenting parameters, returns, and constraints
- Validate start_index >= 1 (raise ValueError if invalid)
- Log page_list alignment assumptions for debugging
- Track and warn when pages are skipped due to bounds issues
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.

fix: prevent list_index variable shadowing in fix_incorrect_toc

1 participant