diff options
| author | Peter LaFosse <peter@vector35.com> | 2019-07-28 10:06:35 -0400 |
|---|---|---|
| committer | Peter LaFosse <peter@vector35.com> | 2019-08-03 10:21:31 -0400 |
| commit | 8bda3399997c0af7fbba6c8a6cf3d22cdd6d0297 (patch) | |
| tree | 3093a1089d7a7c68763173b2dc5fd55c5650183d /ui | |
| parent | 5581a6e80d4c0e983147517e23aeb51f3639fa28 (diff) | |
Fix symbol list issues. Vector35/binaryninja-api #1412
Diffstat (limited to 'ui')
| -rw-r--r-- | ui/symbollist.h | 16 |
1 files changed, 6 insertions, 10 deletions
diff --git a/ui/symbollist.h b/ui/symbollist.h index c33472e9..8010d3e2 100644 --- a/ui/symbollist.h +++ b/ui/symbollist.h @@ -33,15 +33,13 @@ public: struct NamedObject { SymbolRef sym; - std::string archName; mutable std::string name; mutable bool named; - NamedObject() : sym(nullptr), archName(emptyArch), named(false) {} - NamedObject(SymbolRef s, std::string& a=emptyArch) : sym(s), archName(a), named(false) {} + NamedObject() : sym(nullptr), named(false) {} + NamedObject(SymbolRef s) : sym(s), named(false) {} NamedObject(const NamedObject& n) { sym = n.sym; - archName = n.archName; named = n.named; name = n.name; } @@ -49,7 +47,6 @@ public: NamedObject(const NamedObject&& n) { sym = std::move(n.sym); - archName = std::move(n.archName); name = std::move(n.name); named = n.named; } @@ -57,7 +54,6 @@ public: NamedObject& operator=(const NamedObject&& n) { sym = std::move(n.sym); - archName = std::move(n.archName); name = std::move(n.name); named = n.named; return *this; @@ -66,7 +62,6 @@ public: NamedObject& operator=(const NamedObject& n) { sym = n.sym; - archName = n.archName; name = n.name; named = n.named; return *this; @@ -116,9 +111,7 @@ private: enum SymbolListUpdateType { UnnamedFunctionAddedToSymbolList, - UnnamedFunctionRemovedFromSymbolList, UnnamedDataAddedToSymbolList, - UnnamedDataRemovedFromSymbolList, SymbolAddedToSymbolList, SymbolUpdatedInSymbolList, SymbolRemovedFromSymbolList @@ -153,7 +146,8 @@ private: BinaryViewRef m_data; std::set<std::string> m_archNames; std::vector<NamedObject> m_allSyms; - std::vector<NamedObject> m_curSyms; + std::vector<NamedObject> m_curSymsBySortOrder; + std::vector<NamedObject> m_curSymsByAddress; NamedObject m_currentSym; std::string m_filter; @@ -248,6 +242,8 @@ public: SortType getSortType() const { return m_sortType; } NamedObject getCurrentSym() const { return m_currentSym; } + bool checkTriggerFullUpdate(); + Q_SIGNALS: void afterListReset(); void beforeListReset(); |
