View Issue Details

IDProjectCategoryView StatusLast Update
0003907NoesisGUIC++ SDKpublic2025-06-02 11:58
ReporterAnKor Assigned Tosfernandez  
PrioritynormalSeveritycrash 
Status resolvedResolutionfixed 
Product Version3.2.6 
Target Version3.2.8Fixed in Version3.2.8 
Summary0003907: Crash inside BringIndexIntoView if called while items are changing
Description

The crash happens randomly, but debug runtime always breaks with error
[NOESIS/E] Assertion failed: i < mSize, at Vector.inl(135)
that indicates out of bounds vector access and leads to memory corruption.

I get this crash in two similar scenarios: in both cases I'm trying to scroll a list to currently selected or most recently added item, while handling either SelectionChanged event of the list or CollectionChanged event of the source.

I believe the first time I saw it was back in 3.1.x version of Noesis, but only now I managed to investigate it with the help of debug runtime.
Of course there's a chance I'm doing something wrong and I'll be grateful for any advice in this case.

Steps To Reproduce

Attached an archive with two modified files from your HelloWorld example.

  1. Start the application. The list on the left initially has 9 items.
  2. Click the button on the right. The list is updated to have 4 items.
  3. Select any item in the list.
  4. Click the button again.
    The list now contains 9 items, but debug runtime shows an error while trying to bring first item into view inside SelectionChanged handler.
    This only happens when switching from smaller to larger collection.
Attached Files
PlatformWindows

Activities

Issue History

Date Modified Username Field Change
2025-01-16 22:38 AnKor New Issue
2025-01-16 22:38 AnKor File Added: Modified-HelloWorld.zip
2025-01-17 10:08 sfernandez Assigned To => sfernandez
2025-01-17 10:08 sfernandez Status new => assigned
2025-01-17 10:08 sfernandez Target Version => 3.2.7
2025-01-20 17:42 jsantos Target Version 3.2.7 => 3.2.8
2025-06-02 11:58 sfernandez Status assigned => resolved
2025-06-02 11:58 sfernandez Resolution open => fixed
2025-06-02 11:58 sfernandez Fixed in Version => 3.2.8