Disabling of automatic sorting in the symbols view breaks column sorting

オープン
#7,997 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
4/5
見積もり時間
3〜5日
初心者へのやさしさ
35/100
issue の種類
バグ
明瞭さ
おおむね明確
活発さ
停滞
技術スタック
cpp

調査の方向性

Start by reproducing the failure in the Symbols view using a DYLD Shared Cache and a loaded UIKitCore, including disabling and re-enabling automatic sorting. Trace the Symbols view sorting behavior during and after analysis; done means column sorting works again after automatic sorting is re-enabled, including for other binaries.

索引モデルが issue の本文から書いたものです。

説明

Component: UI Effort: Low Impact: High UI: Symbols

Version and Platform (required):

  • Binary Ninja Version: 5.3.9208-dev Ultimate (8b909a0c)
  • Edition: Ultimate
  • OS: macOS
  • OS Version: 26.3
  • CPU Architecture: M1

Bug Description:
Sorting symbols in the symbol view by column seems to randomly break, although it is likely caused by automatic sorting being disabled. Re-enabling automatic sorting does not fix this. Its a useful feature to be able to sort symbols in alphabetical order or by address but often I find I can't.

Steps To Reproduce:
I'm not 100% sure if this will reproduce each time as I'm not sure about the exact cause:

  1. Open a copy of the DYLD Shared Cache
  2. Wait for initial analysis to complete
  3. Notice that the symbols view can be sorted by column still
  4. Load UIKitCore
  5. Wait for automatic sorting of the symbols view to be disabled
  6. Notice the column sorting arrow will have disappeared
  7. Wait for analysis to finish
  8. Click on a column in the symbols view and notice that it does nothing
  9. Re-enabled automatic sorting
  10. Observe that sorting by column is still broken

Expected Behavior:
That column sorting in the symbols view can always be done even if it requires re-enabling automatic sorting. Its not a big deal that it can't be during analysis, but afterwards it should work again.

Additional Information:
This applies to other binaries, not just the DYLD Shared Cache, its just an easy example because the initial load doesn't break the sorting but loading certain libraries can.

主要言語
C++
スター
1.3k
フォーク
298
平均マージ
5日 5時間
マージ済み PR(30日)
19

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

Vector35/binaryninja-api のほかの issue

Vector35/binaryninja-api の issue をすべて見る

似ている issue

C++ の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。