nvda
a55f9a62 - Fixing GC unreachable error of table navigation (#13613)

Commit
3 years ago
Fixing GC unreachable error of table navigation (#13613) Intermittent GC error "unreachable objects" caused by PR #13345. Description of how this pull request fixes the issue: The root cause was that we used to store TextInfo object inside Document, thus creating a cyclic reference. Such reference loops cannot be deleted by zeroing reference counter and can only be deleted by full GC sweep. I am not sure why NVDA prints warnings in this case. This was fixed by not storing TextInfo in the first place. We now store last cell coordinates as lastRow/lastCol. Table cache is going to be valid as long as row/col of current selection are the same as stored lastRow/lastCol - and in this case we will be using trueRow/trueCol to compute next cell to preserve coordinates when navigating through merged cells.
Author
Parents
Loading