Having a type selected in the types view whilst many types are being defined causes the UI to freeze

Aperta
#8,192 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
45/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
cpp

Direzione di ricerca

Start at the Types view with a type definition selected, then reproduce the freeze while analysis or a plugin creates many types, such as when loading an additional DYLD Shared Cache image. Trace the repeated updates and verify that the UI remains responsive while type creation continues and the selected definition still updates correctly.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Version and Platform (required):

  • Binary Ninja Version: 5.3.9429-dev Ultimate (ea9c02c3)
  • Edition: Ultimate
  • OS: macOS
  • OS Version: 26.4
  • CPU Architecture: M1

Bug Description:
If you have a type selected in the types view such that you can see its type definition, and a bunch of types are being created (for instance because a plugin is doing analysis that causes types to be generated automatically) the UI will freeze because it seems to be running an update on the main thread every time a new type gets created.

Even though I recognise this issue it still bites me quite often. I'll be looking at DYLD Shared Cache and at some point decide to load an additional image, forgetting about this issue and the fact I have a type selected in the types view. Then I get hit with a constant freeze until Binary Ninja can catch up which can be a long time (10s of minutes) depending on the image loaded and the number of types being created.

Additional Information:
I thought maybe I'd reported this issue before but I couldn't find it. My other issues related to the types view and UI freezing appear to have different causes.

Lingua principale
C++
Stelle
1.3k
Fork
298
Merge medio
5g 5h
PR unite (30g)
19

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di Vector35/binaryninja-api

Tutte le issue di Vector35/binaryninja-api

Issue simili

Altre issue su C++

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.