697 Commits

Author SHA1 Message Date
hasherezade ae49906374 [NOBIN] Added wayland plugin to AppImage (Issue #75) 2026-06-06 19:41:32 +02:00
hasherezade c8eb8327c4 [NOBIN] Added script to build AppImage (Issue #75) v0.7.2 2026-06-05 22:18:45 +02:00
hasherezade 1a16b1238d Updated README 2026-06-05 21:32:22 +02:00
hasherezade 8781d18901 Add 'How to use' section in README
Added a section on how to use the application.
2026-06-05 21:31:04 +02:00
hasherezade 5b3ac21623 Updated README 2026-06-05 21:29:45 +02:00
hasherezade 0ba36caf0b Updated sig_finder 2026-06-05 18:36:29 +02:00
hasherezade 5a8a205fa0 [FEATURE] Updated sig_finder. Do not translate signature name. 2026-06-05 18:31:47 +02:00
hasherezade a8174a63e6 [VERSION] 0.7.2 2026-06-05 17:38:03 +02:00
hasherezade d9733a0e67 [BUGFIX] In HexView: keep track on the open editors. On dataSet: validate the index 2026-06-05 17:19:11 +02:00
hasherezade 94767c5573 [NOBIN] Updated .gitignore 2026-06-05 16:35:41 +02:00
hasherezade 431be073ee [REFACT] Refactored for compatibility with Qt4 2026-06-05 02:13:25 +02:00
hasherezade 3aab73fe4e [VERSION] Incremented subversion 2026-06-04 14:44:17 -08:00
hasherezade 787d0b5f16 [BUGFIX] Fixed UAF in case of fast hex editing
A full reset (begin/endResetModel, and the QTableView::reset() reached via
 modelUpdated()->onModelUpdated()) releases every open item editor through
 deleteLater(). During fast hex editing that deferred delete races against
 Qt's deferred editor commit/close (_q_commitDataAndCloseEditor) and ends up
 dereferencing a freed editor -> crash (read access violation on editor).
	//
 A byte edit never changes the grid: columnCount is constant and rowCount
 only changes when the file size or shown page changes. So when the row
 count is unchanged we repaint the visible cells in place with dataChanged()
 and emit neither the model reset nor modelUpdated() - editors are left
 completely untouched. A genuine layout change (size/structural change, which
 never coincides with an open cell editor) still takes the full-reset path.
2026-06-04 14:42:08 -08:00
hasherezade ae5e027411 [FEATURE] In changed formatting in follow the number from hex 2026-06-04 14:13:48 -08:00
hasherezade 289179dd6f [BUGFIX] Fixed unsafe font size setting 2026-06-04 14:06:23 -08:00
hasherezade 407c21577d [BUGFIX] Fixed memory leak while setting palette 2026-06-04 14:02:13 -08:00
hasherezade d5ac9a2cde [BUGFIX] Fixed uneditable content in clickable disasm records 2026-06-04 13:57:24 -08:00
hasherezade 27f538211c [REFACT] In DisasmView: cleanup. Don't emit args on mouse move 2026-06-04 12:05:33 -08:00
hasherezade 559be805f8 [BUGFIX] Fixed DisasmView selection color on Windows 11. Removed redundant reset. Other small fixes 2026-06-04 11:41:44 -08:00
hasherezade 57f5a89b7b [FEATURE] In HexView: reset when editing finished
1. The PeTreeModel base constructor already connected modified() -> onNeedReset()
with a direct connection. Re-route it (and marked()) to queued connections so
the full model reset never runs in the middle of a cell-editor commit: reset()
clears the view's editor registry, which tears down the active editor mid-edit
and makes Qt log "editor does not belong to this view" on the following
commitData()/closeEditor(). Deferring the reset by one event-loop cycle lets the
edit fully unwind first; for non-edit changes (fill/paste/undo) it is an
invisible one-tick delay. (This also drops a pre-existing redundant connection.)

2. Queued so the advance (setCurrentIndex + edit of the next cell) runs after the
current editor's commit/close has unwound AND after the queued model reset in
HexDumpModel; otherwise the freshly opened next-cell editor would be torn down
by that reset. Ordering is guaranteed: modified() is emitted before dataSet(),
so the reset is queued ahead of this advance.
2026-06-04 21:08:23 +02:00
hasherezade 7acf694ff7 [BUGFIX] In HexEdit: advance to edit the next field only if the current field was modified. Removed dead code 2026-06-04 20:50:59 +02:00
hasherezade 8f7c13ee61 [BUGFIX] Fixed UAF when the search window was closed before the search finished 2026-06-04 20:25:33 +02:00
hasherezade 4407e02d90 [BUGFIX] Simplified destructor in CollectorThread. Make sure that the existing thread is not overwritten in SigFinderThread 2026-06-04 20:04:26 +02:00
hasherezade 77093baa72 [REFACT] Removed dead code: CollectorThread 2026-06-04 19:12:57 +02:00
hasherezade db293ae9ec [BUGFIX] In PatternSearchWindow: removed focus switch on changing the tabs 2026-06-04 18:57:45 +02:00
hasherezade 73fb55f3d5 [FEATURE] Allow to search by ANSI or Unicode strings 2026-06-03 16:01:24 -08:00
hasherezade a1f3f97531 [BUGFIX] In search window: fixed elements attached to wrong layouts; added autofocus on the relevant edit after tab switch 2026-06-03 15:24:43 -08:00
hasherezade ea2d51ed06 [VERSION] Incremented version 2026-06-03 15:17:18 -08:00
hasherezade 3c46a87949 [FEATURE] Restart search from the beginning if ended 2026-06-03 15:16:37 -08:00
hasherezade 97fcdd026e [FEATURE] Added string search option 2026-06-03 15:16:09 -08:00
hasherezade 5d1add0abc Remove Ubuntu2204 from AppVeyor configuration 2026-06-03 19:58:42 +02:00
hasherezade 3ac5a31fdb Update Qt version in AppVeyor configuration for Ubuntu 2026-06-03 19:54:27 +02:00
hasherezade 8952b96769 Update Qt version and paths in AppVeyor config 2026-06-03 19:47:03 +02:00
hasherezade c454eae79a Update AppVeyor configuration to exclude Ubuntu2204
Remove Ubuntu2204 from the AppVeyor build matrix.
2026-06-03 19:38:56 +02:00
hasherezade e2379d8e8e [FEATURE] In DiffWindow: global toolbar only dockable at the top or bottom of the window 2026-06-03 08:42:52 -08:00
hasherezade 09705727bb [BUGFIX] Signal/slot connection made on file select should be set as Unique 2026-06-03 08:37:40 -08:00
hasherezade bbcb083e82 [FEATURE] In DiffWindow: use one global toolbar to navigate 2026-06-03 08:22:14 -08:00
hasherezade 6fc36ab660 [VERSION] Incremented subversion 2026-06-03 07:55:16 -08:00
hasherezade ba7ff2d56b [FEATURE] Added option to fill content with custom value 2026-06-03 07:54:24 -08:00
hasherezade f2c668240f [REFACT] Unified implementation of Clear and NOP selected 2026-06-03 07:48:32 -08:00
hasherezade cf125cc2ef [BUGFIX] Consistent HexDump selection colors across systems 2026-06-03 07:33:44 -08:00
hasherezade 4bee88174a [REFACT] Fixed integer cast 2026-06-03 07:32:41 -08:00
hasherezade 1cb70de318 [NOBIN] In AppVeyor: updated QT_DIR on Windows 2026-06-03 06:37:22 -08:00
hasherezade c705f36c8b [NOBIN] In AppVeyor: updated QT_DIR on Ubuntu 2026-06-03 06:31:23 -08:00
hasherezade 66cb2fa84d [FEATURE] Added following various types of addresses from the HexDump 2026-06-03 06:23:25 -08:00
hasherezade 7d7f654b8f [VERSION] 0.7.1.1 2026-06-03 02:05:25 +02:00
hasherezade 0c634fd777 [FEATURE] Allow to follow the address selected on the Hex Edit 2026-06-02 23:42:46 -08:00
hasherezade df9408f03d [FEATURE] Improved definition of the selection colors (it was not updating on some versions of Windows) 2026-06-02 22:06:27 -08:00
hasherezade e7af3f6690 [BUGFIX] Fixed Qt5 compatibility 2025-11-02 02:04:39 +01:00
hasherezade c8503fc55d [FEATURE] Added Japanese translation (issue #71) 2025-10-25 16:28:44 +02:00