Comments (11)
@soosr Do we need this in the release?
Seems like an edge case (Pressing PageDown when the list is just updating), I would say we can release without it.
@wieslawsoltes How sure are you about your fix and is it ready? If so we can squeeze it in but I think we are good without it too.
Not ready, it need more refactoring and definitely testing. We should skip it for release. It's and edge case.
from walletwasabi.
@soosr Do we need this in the release?
Seems like an edge case (Pressing PageDown when the list is just updating), I would say we can release without it.
@wieslawsoltes How sure are you about your fix and is it ready? If so we can squeeze it in but I think we are good without it too.
from walletwasabi.
Closing the issue as we haven't been able to repro since it was reported, plus several fixed happened, fixes that can be related to this issue.
Reopen if someone meets with this again.
from walletwasabi.
I think what could happen is you pressed PageDown key and it that time selection must have changed in history list (e.g. new conjoin transaction arrived and list was updated) and resulted in change in SelectedIndex (IndexPath).
https://github.com/AvaloniaUI/Avalonia.Controls.TreeDataGrid/blob/a9e59bb7fd28116575b2e3da270df1c00aa722ee/src/Avalonia.Controls.TreeDataGrid/Selection/TreeDataGridRowSelectionModel.cs#L232
from walletwasabi.
I think what could happen is you pressed PageDown key and it that time selection must have changed in history list (e.g. new conjoin transaction arrived and list was updated) and resulted in change in SelectedIndex (IndexPath). https://github.com/AvaloniaUI/Avalonia.Controls.TreeDataGrid/blob/a9e59bb7fd28116575b2e3da270df1c00aa722ee/src/Avalonia.Controls.TreeDataGrid/Selection/TreeDataGridRowSelectionModel.cs#L232
And we reset SelectedIndex each time:
https://github.com/zkSNACKs/WalletWasabi/blob/3e151ca170480dbf2de8e652c1316b3bfd8bf532/WalletWasabi.Fluent/ViewModels/Wallets/Home/History/HistoryViewModel.cs#L217
from walletwasabi.
@soosr Do we need this in the release?
from walletwasabi.
I had the same crash on 2.0.4 main release/Ubuntu while the computer was idle, but some of the lines referenced are different:
Exception type: System.IndexOutOfRangeException
Message: Index was outside the bounds of the array.
Stack Trace: at Avalonia.Controls.IndexPath.get_Item(Int32 index) in //src/Avalonia.Controls.TreeDataGrid/IndexPath.cs:line 64
at Avalonia.Controls.Selection.TreeDataGridRowSelectionModel1.Avalonia.Controls.Selection.ITreeDataGridSelectionInteraction.OnPreviewKeyDown(TreeDataGrid sender, KeyEventArgs e) in /_/src/Avalonia.Controls.TreeDataGrid/Selection/TreeDataGridRowSelectionModel.cs:line 251 at Avalonia.Controls.TreeDataGrid.OnPreviewKeyDown(Object o, KeyEventArgs e) in /_/src/Avalonia.Controls.TreeDataGrid/TreeDataGrid.cs:line 326 at Avalonia.Interactivity.EventRoute.RaiseEventImpl(RoutedEventArgs e) in /_/src/Avalonia.Interactivity/EventRoute.cs:line 118 at Avalonia.Interactivity.EventRoute.RaiseEvent(IInteractive source, RoutedEventArgs e) in /_/src/Avalonia.Interactivity/EventRoute.cs:line 79 at Avalonia.Interactivity.Interactive.RaiseEvent(RoutedEventArgs e) in /_/src/Avalonia.Interactivity/Interactive.cs:line 123 at Avalonia.Input.KeyboardDevice.ProcessRawEvent(RawInputEventArgs e) in /_/src/Avalonia.Input/KeyboardDevice.cs:line 248 at Avalonia.Input.InputManager.ProcessInput(RawInputEventArgs e) in /_/src/Avalonia.Input/InputManager.cs:line 37 at Avalonia.RawEventGrouper.DispatchFromQueue() in /_/src/Shared/RawEventGrouping.cs:line 61 at Avalonia.Threading.JobRunner.RunJobs(Nullable
1 priority) in //src/Avalonia.Base/Threading/JobRunner.cs:line 37
at Avalonia.X11.X11PlatformThreading.HandleX11(CancellationToken cancellationToken) in //src/Avalonia.X11/X11PlatformThreading.cs:line 199
at Avalonia.X11.X11PlatformThreading.RunLoop(CancellationToken cancellationToken) in //src/Avalonia.X11/X11PlatformThreading.cs:line 205
at Avalonia.Threading.Dispatcher.MainLoop(CancellationToken cancellationToken) in //src/Avalonia.Base/Threading/Dispatcher.cs:line 65
at Avalonia.Controls.ApplicationLifetimes.ClassicDesktopStyleApplicationLifetime.Start(String[] args) in //src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 120
at Avalonia.ClassicDesktopStyleApplicationLifetimeExtensions.StartWithClassicDesktopLifetime[T](T builder, String[] args, ShutdownMode shutdownMode) in /_/src/Avalonia.Controls/ApplicationLifetimes/ClassicDesktopStyleApplicationLifetime.cs:line 209
at WalletWasabi.Fluent.Desktop.WasabiAppExtensions.<>c__DisplayClass0_0.b__0()
at WalletWasabi.Daemon.WasabiApplication.RunAsync(Func`1 afterStarting)
at WalletWasabi.Fluent.Desktop.WasabiAppExtensions.RunAsGuiAsync(WasabiApplication app)
at WalletWasabi.Fluent.Desktop.Program.Main(String[] args)
Inner Exception:
from walletwasabi.
(edge case -> corner case)
from walletwasabi.
Might be related AvaloniaUI/Avalonia.Controls.TreeDataGrid#227
from walletwasabi.
what's up with this?
from walletwasabi.
We have updated TreeDataGrid with many bug fixes, can anyone repro again ?
from walletwasabi.
Related Issues (20)
- [Change avoidance] Misleading suggested amount when using send max button HOT 2
- block download didn't get logged HOT 4
- Keeps hanging, HOT 3
- Switch to Taproot by default HOT 8
- Update SECURITY.md HOT 2
- Crashes after a short while HOT 1
- Multiple Wasabi app at the same time HOT 3
- UI glitch on privacy progress. HOT 1
- Still zkSNACKs mentioned everywhere
- Autoupdater shows version 0.0.0 HOT 4
- wasabi wallet HOT 1
- Autoupdater suggests to update but not to the latest version HOT 1
- Label CJs with a coordinator identifier, like domain name.
- No attempt to connect to Tor was successful HOT 1
- Wasabi Wallet v 2.1.0 crashing while in Coinjoin process - OS: Windows 11 Ver 23H2 Build 22631.3880 HOT 5
- Placeholder value for Plebs Don't Pay
- New Crash HOT 1
- crash HOT 1
- Hi HOT 5
- cannot build v2.1.0.0 from source: Warning As Error: Package 'System.Text.Json' 8.0.3 has a known high severity vulnerability
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from walletwasabi.