Commit Graph

1341 Commits

Author SHA1 Message Date
WerWolv ae06954771 fix: Stack trace printing on Windows not working right 2023-06-22 15:15:06 +02:00
WerWolv cb3b71e2f3 fix: Typo in content registry comment 2023-06-21 23:59:40 +02:00
WerWolv d65e669bbb impr: Make loading of large table files significantly faster 2023-06-21 23:58:21 +02:00
iTrooz b7d8e46288
feat: Display detailed error message when loading of project fails (#1135)
In order to do this I add to make some other additions :
- Add a warning popup (TODO, maybe add some icons to differentiate
error/warning popups in a future PR ?)
- create showError() and showWarning() functions, as helpers to show a
message both to the logs and as a popup
2023-06-21 20:07:36 +02:00
WerWolv da11c47693 impr: Better sorting of hex cell visualizers 2023-06-21 17:48:51 +02:00
WerWolv 98395afe9d patterns: Updated pattern language 2023-06-21 13:55:40 +02:00
WerWolv 6435d8d955 feat: Name runner threads for tasks 2023-06-21 09:29:57 +02:00
WerWolv 0da87cdb68 patterns: Updated pattern language 2023-06-21 09:29:40 +02:00
Nik f703b15165
feat: Added statistics and crash log uploading (#1149)
Co-authored-by: Justus Garbe <gihihoh@gmail.com>
2023-06-20 11:55:56 +02:00
WerWolv 54061c56bf fix: Logging race conditions 2023-06-18 22:32:55 +02:00
WerWolv 25154dd450 build: Force enable exceptions and rtti 2023-06-18 14:42:48 +02:00
WerWolv e09b678426 patterns: Updated pattern language 2023-06-18 10:58:24 +02:00
WerWolv 03f377bf40 fix: Don't try to initialize plugins that failed to load 2023-06-18 10:18:41 +02:00
WerWolv 90a576c3c7 fix: Highlighting and updating of the new console not working well 2023-06-14 10:35:23 +02:00
WerWolv dd832bfa7e ui: Make pattern editor console use another text editor 2023-06-13 22:58:57 +02:00
WerWolv 5c31b5cf0d patterns: Updated pattern language 2023-06-13 13:50:01 +02:00
WerWolv 7de367a944 impr: Properly allow multi-threaded logging without messing up output 2023-06-12 08:24:36 +02:00
WerWolv 03673b5846 feat: Added basic Pattern Language debugger 2023-06-11 21:41:11 +02:00
WerWolv f0be585fd8 patterns: Updated pattern language 2023-06-11 12:14:24 +02:00
WerWolv 34732a1ee7 fix: Corrected some memory leaks 2023-06-11 10:47:17 +02:00
WerWolv ef9cb31204 patterns: Updated pattern language 2023-06-11 00:08:34 +02:00
WerWolv cde5940063 fix: Popups sometimes not appearing centered on the main window 2023-06-10 15:15:52 +02:00
WerWolv 73d4214fd3 fix: Window title being cleared after ImHex exits 2023-06-10 15:08:56 +02:00
WerWolv 0e8273eaa7 impr: Make sure icons are more centered 2023-06-09 00:30:12 +02:00
WerWolv 903d1fb555 impr: Analyze file content of newly loaded files only when they are selected 2023-06-08 17:02:16 +02:00
WerWolv 6e3204b443 patterns: Updated pattern language 2023-06-08 12:16:48 +02:00
WerWolv 81971eaf4a patterns: Updated pattern language 2023-06-08 09:58:26 +02:00
WerWolv 46270ab213 patterns: Updated pattern language 2023-06-08 09:09:37 +02:00
WerWolv 57bf878312 patterns: Updated pattern language 2023-06-07 23:46:18 +02:00
WerWolv 110c3ac310 patterns: Updated pattern language 2023-06-07 11:08:17 +02:00
WerWolv 456895a6a6 fix: Various pattern drawer issues 2023-06-06 11:29:58 +02:00
WerWolv a125408410 patterns: Updated pattern language 2023-06-05 17:09:31 +02:00
WerWolv 9712329924 feat: Added pattern export option to pattern data view 2023-06-05 11:57:26 +02:00
WerWolv 59aa52e744 patterns: Allow console log to be printed immediately and from format functions 2023-06-05 09:45:25 +02:00
WerWolv ae48ae659b impr: Move various settings from settings window to hex editor and pattern data view 2023-06-05 09:07:58 +02:00
WerWolv 244e34ab84 feat: Added pattern data filter field 2023-06-04 16:13:46 +02:00
WerWolv 100b9e3bca fix: Cursor icons on Windows not working correctly after imgui update 2023-06-04 12:12:15 +02:00
WerWolv 07aabe8efa impr: Improved types used in provider functions 2023-06-04 10:42:11 +02:00
iTrooz 25476d4e1e
build: Update ImGui and its dependencies (#1122)
This PR updates imgui and its dependencies from the last time, ~1 year
ago
(deabacbd50)

Commits will be refactored before merging

Things you might ask :
- why did you remove `ImGui_ImplGlfw_SetBorderlessWindowMode()` ?
-> Where is it used ? The only usage of it I see is commented
(cb9a3b1f55/lib/external/imgui/source/imgui_impl_glfw.cpp (L757))
- why did you remove the implot anti aliasing flag ?
-> They.. seem to have removed it altogether ?
https://github.com/epezent/implot/issues/479
2023-06-04 00:09:45 +02:00
WerWolv de76c37ffb fix: Multiple file provider resize issues 2023-06-03 23:57:41 +02:00
WerWolv 1dff81f7cd fix: Crash when deleting overlays 2023-06-03 22:50:37 +02:00
WerWolv 504c022f01 patterns: Added hex_viewer visualizer 2023-06-02 10:47:23 +02:00
iTrooz 117832e007
impr: Handle crashes that may happen before the main loop (#1115)
Draft because I absolutely do not trust myself writing good code at 2AM.
I will review it tomorrow
2023-06-01 18:35:41 +02:00
WerWolv 9dafdeb70a patterns: Updated pattern language 2023-05-29 10:52:39 +02:00
WerWolv 5e0ca4ac50 patterns: Properly display exported variables 2023-05-28 15:44:01 +02:00
WerWolv 8d8a5a70f3 fix: Find view replace and hex editor paste logic being wrong 2023-05-28 14:30:33 +02:00
WerWolv c8c3f5e753 feat: Added primitive replace feature to find view 2023-05-28 11:50:10 +02:00
iTrooz 0ba011dbe1
feat: Add a native error message when glfw window creation fails (#1104)
Draft because I want to test it again tomorrow with all OSes, first

---------

Co-authored-by: Nik <werwolv98@gmail.com>
2023-05-27 17:45:41 +02:00
iTrooz e578127f67
feat: Save opened projects as recent entries (#1105)
This PR does two things :
- save opened projects as recent entries
- refactor stuff about recent entries in a separate file. The reason is
that I felt like welcome_screen.cpp was really big ( 685 lines before
this, 500 now). What do you think ?

---------

Co-authored-by: Nik <werwolv98@gmail.com>
2023-05-27 16:59:30 +02:00
WerWolv acfd89aee0 patterns: Updated pattern language 2023-05-27 14:43:53 +02:00
WerWolv ba33629e80 patterns: Updated pattern language 2023-05-25 12:03:11 +02:00
WerWolv cb9a3b1f55 fix: Invalid key code error spam 2023-05-24 21:05:14 +02:00
WerWolv 0e3da22c76 feat: Added support for changing the page size 2023-05-23 11:34:30 +02:00
iTrooz 7ce0613977
impr: Added better crash backup and restore mechanism (#1094)
- Add a new file 'crash.json' to store metadata about the crash, like
the log file or project opened
- show the log file of the session that caused the crash to the user
- Correctly restore the project path
2023-05-22 13:24:48 +02:00
WerWolv f81276f7e3 feat: Added support for transparent and blurry window styles 2023-05-22 12:00:35 +02:00
WerWolv e7b51a56a5 feat: Added support for automatically loading patterns using binary pattern magic 2023-05-22 00:01:58 +02:00
WerWolv df75218ecb fix: Ranges found by find view not being highlighted 2023-05-22 00:00:50 +02:00
WerWolv a2333fa22e patterns: Updated pattern language 2023-05-21 18:02:39 +02:00
WerWolv 2179c3c014 fix: View shortcuts acting like global shortcuts 2023-05-21 18:02:29 +02:00
iTrooz 5666a5c5fb
feat: Added context menu with right-clicking on file provider (#1084)
Co-authored-by: Nik <werwolv98@gmail.com>
2023-05-21 13:21:53 +02:00
WerWolv 180a27fdc9 fix: Local keybindings not working correctly 2023-05-21 10:28:55 +02:00
WerWolv f503a89f98 fix: Typo in IEEE754 tool 2023-05-20 21:49:45 +02:00
WerWolv f94e5488d4 fix: Mouse cursor not adjusting anymore properly 2023-05-20 21:36:15 +02:00
WerWolv 7336c8dddc fix: Cursor types on Windows sometimes getting stuck 2023-05-20 21:10:12 +02:00
WerWolv c91e3875d4 build: Updated libwolv 2023-05-20 19:27:00 +02:00
WerWolv 0181325b64 build: Updated libwolv 2023-05-20 18:10:26 +02:00
WerWolv 11f55a7561 fix: File handles not being closed correctly 2023-05-20 18:07:15 +02:00
WerWolv 9bb3a92e12 build: Updated libwolv 2023-05-20 15:47:21 +02:00
KOLANICH 4faebf435c
impr: Remove an unused `std::mutex` in `TaskManager::runner` (#1088) 2023-05-20 13:38:12 +02:00
KOLANICH 749823e044
build: Move `-s` additional compiler flags into linker flags, and enable it only when gcc/clang are used. (#1087)
Compiler when compiling doesn't use them in those cases and emit a
warning, which is turned into an error by `-Werror`. Unfortunately,
CPack doesn't expose the logic it uses for stripping binaries.
2023-05-20 13:37:57 +02:00
KOLANICH 608c9e2e7a
fix: WASM disassembler not being available in Capstone < 5 (#1086)
This fixes build on Debian with Capstone from packages.
2023-05-20 13:37:45 +02:00
WerWolv 96ee544538 build: Updated libwolv 2023-05-20 13:31:41 +02:00
WerWolv 969a37877a fix: Crash on exit 2023-05-20 13:10:24 +02:00
paxcut 3e4c4430d5
feat: Greatly improved the IEEE754 tool (#1047)
I just realized one feature request existed about this tool and have
added a comment to it referring this pr. Errors and additions are
described in the fork commit already. I'm not sure if I should repeat
them here again. I have tested the changes thoroughly, but it is always
possible some fringe case was not tested and is incorrect. The tests
were done using the many similar online calculators for IEEE 754
floating point formats.
IEEE 745 floating point tool redesign modeled after 'float toy' web app
(http://evanw.github.io/float-toy/)

Streamlined output using colors and compact layout which can be further
simplified.
Chosen display mode (detailed or simplified) is automatically saved and
set on new sessions.
Edit the binary bits, the integer hexadecimal or the floating point
decimal values and the entire app will update with the change.
Supports the main IEEE745 standard formats (half, single and double
precision) together with custom formats of size <= 64 bits.
Each format choice uses and displays the number of significant decimal
digits defined by the mantissa size.
Added labels to identify the location of each bit box inside the binary
representation.
Satisfies round trip / idempotent (reproducing) conversion property
Added theme colors, radio buttons for display mode and a clear button
that resets the tool.
Removed previously and incorrectly added locale translation to various
labels and languages
Attempted to adhere to code style formatting using existing code as
example.
An effort was made to use preferred variable types and functions from
std namespace when appropriate.
Attempted to document code using comments. 

Not implemented / left to complete at an later time

Arbitrary width and precision formats. 
Extended precision formats.
Shortest string property.
hexadecimal floating point display and conversions.
2023-05-19 21:18:38 +02:00
WerWolv 39276e123e patterns: Allow bitfield values to be edited 2023-05-19 19:56:55 +02:00
WerWolv 0f9434740f fix: Crash when deleting last environment variable in pattern editor 2023-05-19 17:15:37 +02:00
WerWolv 7ed153a47b patterns: Updated pattern language 2023-05-19 16:14:54 +02:00
WerWolv c9d673ce40 patterns: Updated pattern language 2023-05-19 15:29:18 +02:00
WerWolv 0be610f1cd patterns: Updated pattern language 2023-05-18 23:20:10 +02:00
WerWolv 511375feb5 patterns: Updated pattern language 2023-05-18 09:51:24 +02:00
WerWolv 8119929ece fix: Don't wait for services on exit 2023-05-16 14:59:14 +02:00
WerWolv e28f2dfea1 fix: Only 5 patterns per byte being highlighted
Fixes #1076
2023-05-16 14:41:02 +02:00
WerWolv 636ed0095d feat: Added new `imhex/capabilities` network interface 2023-05-16 11:01:40 +02:00
WerWolv 14341d611d impr: Handle macOS Open with... correctly 2023-05-15 18:07:49 +02:00
WerWolv 07565eea63 build: Updated libwolv 2023-05-15 18:07:35 +02:00
WerWolv c006062540 feat: Added basic network interface support 2023-05-15 11:30:24 +02:00
WerWolv 7656fd7a4e patterns: Updated pattern language 2023-05-15 08:17:02 +02:00
WerWolv 60a2b30e91 fix: Another wrong include on macOS 2023-05-14 22:53:52 +02:00
WerWolv 79cdf51588 fix: Wrong include on macOS 2023-05-14 22:23:05 +02:00
WerWolv 7b048d9b96 fix: Compile on macOS _again_ 2023-05-14 22:03:04 +02:00
WerWolv d96fc6d41b fix: Compilation on macOS 2023-05-14 21:50:58 +02:00
WerWolv 609afebc55 fix: Updated build script 2023-05-14 20:20:40 +02:00
WerWolv 3bd9ab6349 fix: Hopefully open files now on macOS 2023-05-14 20:20:22 +02:00
WerWolv 5027f36d95 fix: Open with crashing on macOS
#1070
2023-05-14 18:35:35 +02:00
WerWolv 4afd5a7905 patterns: Updated pattern language
#1069
2023-05-13 17:21:44 +02:00
WerWolv 6709baa710 patterns: Updated pattern language 2023-05-13 15:43:37 +02:00
WerWolv 857e90a37b fix: ImHex freezing when evaluating patterns 2023-05-13 11:12:38 +02:00
WerWolv aaeebd3fe9 fix: Various pattern execution race conditions 2023-05-12 15:46:13 +02:00
WerWolv 18bc5de169 fix: Copy-as options not being disabled correctly 2023-05-12 08:38:07 +02:00
WerWolv f2af90fe06 fix: Help hover icon issues 2023-05-11 23:56:51 +02:00
WerWolv 0649e0dcd3 impr: Clean up old layout stuff 2023-05-11 23:21:52 +02:00
WerWolv ceeaca1a4b feat: Added layout manager to save and restore custom layouts 2023-05-11 18:44:50 +02:00
WerWolv 688471fd61 build: Updated libfmt to 10.0 2023-05-11 12:06:58 +02:00
WerWolv ea482ff0f5 fix: Crash when closing providers too quickly 2023-05-11 12:01:06 +02:00
WerWolv 8f07f0f8ae impr: Better look and feel of the welcome screen close button 2023-05-11 12:00:45 +02:00
WerWolv 4f17a96707 build: Updated libwolv 2023-05-11 10:04:09 +02:00
WerWolv ab41899cc2 build: Updated libwolv 2023-05-11 09:54:06 +02:00
WerWolv 50c3cf8272 build: Replace old interval tree in favour of custom libwolv one 2023-05-11 09:27:23 +02:00
WerWolv 0b29719fe9 patterns: Updated pattern language 2023-05-10 19:15:01 +02:00
WerWolv 5a6e5d2255 build: Switch to better interval tree implementation 2023-05-07 23:27:43 +02:00
WerWolv 82111617a4 patterns: Updated pattern language 2023-05-06 10:09:33 +02:00
WerWolv 0574387ee1 fix: Properly use absolute paths when compiling magic files 2023-05-06 10:09:23 +02:00
WerWolv 2d1381860d fix: Corrected build issues with GCC 13 2023-05-06 10:07:22 +02:00
iTrooz e44eb2aa8e
impr: Added more documentation to libimhex (#1052)
This PR adds some documentation. It's actually pretty random, I followed
the function calls I was curious about and commented whenever I wasn't
sure/I thought it needed clarification

You might want to make sure to squash them, because the commits are kind
of a mess, I didn't went through the effort of interactive rebase
2023-05-05 22:02:18 +02:00
iTrooz 34e12e2515
feat: Added a button to restore default layout when there are no views open (#1053)
Co-authored-by: Nik <werwolv98@gmail.com>
2023-05-05 22:00:17 +02:00
iTrooz 980e4cad06
fix: Handle errors in Tar::readVector() (#1059) 2023-05-05 21:57:37 +02:00
WerWolv 5680b90549 fix: Project files failing to save when no custom encoding is loaded 2023-05-04 23:23:44 +02:00
WerWolv bec655a8c6 impr: Added event logging in debug mode 2023-05-02 20:35:30 +02:00
WerWolv 0c8b3e31e7 fix: Dangerous function call popup not showing up 2023-05-02 20:34:37 +02:00
WerWolv f54617e92f patterns: Updated pattern language 2023-04-21 11:02:12 +02:00
WerWolv 306690762c impr: Drastically improve file read speeds 2023-04-21 10:52:10 +02:00
WerWolv 58a0fe8109 patterns: Updated pattern language 2023-04-20 14:32:45 +02:00
WerWolv 1e39f4354f fix: Provider reader being broken 2023-04-20 13:46:44 +02:00
WerWolv e1b12546da build: Updated dependencies 2023-04-20 10:48:17 +02:00
WerWolv 1b28bf1474 patterns: Updated pattern language
Fixes #1037
2023-04-20 10:41:27 +02:00
WerWolv 8245f3d4c9 build: Updated libwolv 2023-04-19 21:56:34 +02:00
WerWolv bb8b4afb85 patterns: Updated pattern language 2023-04-18 10:32:38 +02:00
WerWolv d5b1ef7875 patterns: Updated pattern language 2023-04-18 10:17:37 +02:00
WerWolv 6c122e5fbe patterns: Updated to new API 2023-04-18 10:06:47 +02:00
WerWolv bdc51dd8a5 patterns: Updated pattern language 2023-04-17 17:06:52 +02:00
WerWolv 04a5efc7a3 fix: Crash when evaluating patterns to quickly 2023-04-17 17:02:10 +02:00
WerWolv 99a736df27 impr: Replace horrible pattern extra data class with a more modular system 2023-04-17 16:18:48 +02:00
WerWolv 07bef10092 patterns: Updated pattern language 2023-04-17 09:22:21 +02:00
WerWolv 1690cd2740 fix: Various issues with the new popup system 2023-04-16 21:34:29 +02:00
WerWolv 52925c99e8 impr: Default to monitor synchronized FPS limit 2023-04-13 17:12:40 +02:00
WerWolv 1367e9cebe build: Fixed Objective-C compiler flags 2023-04-13 17:07:34 +02:00
WerWolv 3e87022da1 fix: Provider undo stack not being handled correctly 2023-04-13 16:12:00 +02:00
WerWolv 143fe36d35 build: Fixed various build warnings 2023-04-13 16:11:39 +02:00
WerWolv 803b99f2a9 impr: Immensely improve provider read speeds 2023-04-12 19:21:48 +02:00
WerWolv 86b49f34d9 patterns: Updated pattern language
Fixes #1031
2023-04-12 17:18:46 +02:00
WerWolv 7e144b136b patterns: Updated pattern language
Fixes #1030
2023-04-12 16:03:58 +02:00
WerWolv aa7c5422c0 fix: Make sure provider data is properly cleared when deleting provider 2023-04-11 15:26:18 +02:00
WerWolv e79664256a patterns: Updated pattern language 2023-04-09 12:26:13 +02:00
WerWolv b4d0f984a4 build: Updated libwolv 2023-04-08 21:13:19 +02:00
WerWolv 21f38974a8 impr: Use smart pointers to allocate Views 2023-04-08 12:08:45 +02:00
WerWolv 80edaea392 impr: Update all of ImHex to the new popup system 2023-04-08 00:58:53 +02:00
WerWolv 9c9ac23818 feat: Added a much more flexible popup system 2023-04-07 10:21:27 +02:00
WerWolv d92e7d19cc fix: Submenu items ignoring enabled flag 2023-04-06 22:33:02 +02:00
WerWolv 248b93f41a patterns: Updated pattern language 2023-04-06 19:23:16 +02:00
WerWolv c73f33aac2 impr: Added various new events 2023-04-06 17:36:28 +02:00
WerWolv 5f713882d4 fix: Occasional crash when loading project files 2023-04-06 12:44:25 +02:00
WerWolv a5568d09d8 patterns: Updated pattern language
Fixes #1011
2023-04-05 18:03:30 +02:00
WerWolv 7a4f909c68 fix: Disassembler arch names not correctly corresponding to their ids
Fixes #1010
2023-04-05 18:02:47 +02:00
WerWolv 89aee456c6 patterns: Updated pattern language
Fixes #1011
2023-04-05 07:26:44 +02:00
WerWolv 4cf92103d8 fix: Names of disassembler architectures not corresponding to their actual type
Fixes #1010
2023-04-05 07:20:06 +02:00
WerWolv e3b1ebb826 patterns: Updated pattern language 2023-04-04 23:42:39 +02:00
WerWolv 3658d8d96e fix: Disassembler not supporting any Capstone 5 features anymore
Fixes #1010
2023-04-04 23:08:10 +02:00
WerWolv 6c047f01f9 git: Fixed release CI not reading version correctly 2023-04-04 21:59:43 +02:00
WerWolv 649f6c28bf patterns: Updated pattern language 2023-04-04 11:20:09 +02:00
WerWolv 867972b7f5 patterns: Updated pattern language 2023-04-04 10:23:01 +02:00
WerWolv efe3227ef2 patterns: Updated pattern language 2023-04-04 09:34:50 +02:00
H1X4 aab8c88a96
feat: allow loading and saving pattern code via events (#1004)
Currently there is no way to save the pattern code progamically from a
plugin unless the builtin plugin is modified to add those events. This
pull request will be adding ability to load and save pattern code from
specified file.
2023-04-01 11:18:52 +02:00
Thomas 24106b860a
impr: Added some documentation to providers (#1001) 2023-04-01 11:17:19 +02:00
WerWolv 72c4dbdb2f patterns: Updated pattern language 2023-03-31 13:49:59 +02:00
WerWolv 8195db6d4c fix: Prevent occasional crash when having ImHex open and connecting to the computer over RDP 2023-03-31 11:08:53 +02:00
WerWolv 1460044e91 impr: Save custom encoding file to project
Fixes #1005
2023-03-31 11:06:51 +02:00
WerWolv 8930adf532 patterns: Updated pattern language 2023-03-28 09:29:49 +02:00
WerWolv f44b8a5618 patterns: Updated pattern language 2023-03-27 22:40:19 +02:00
WerWolv 98846421f6 build: Update dependencies 2023-03-26 11:23:32 +02:00
Thomas fabb1596e5
impr: Handle and show NFD errors (#995)
This PR handles errors that NFD might encounter (both in Init() and the
other method to open the dialog), and log them in the logs and in the
GUI

This (among other) fix the crash I had running ImHex as root and opening
a file
2023-03-26 11:02:51 +02:00
Thomas 725e32250b
fix: Move config files to XDG_CONFIG_HOME (#993)
This pull request changes Config Directories on Linux to only include
the XDG_CONFIG_HOME directory, as opposed to all directories in
XDG_DATA_DIRS before (introduced in
https://github.com/WerWolv/ImHex/pull/644/files#diff-c1a4d2b63fed168a9a3568944e9cadeae096f2ddcec3649e4a9b2d29fd104be0L162-L166).

Reasons:
- This changes the location of the config file to the standard directory
meant for configurations
- This prevents the config file from being read/written in system
locations, like /usr/share

This PR also includes a migration task that will run on Linux and move
config/GUI dimensions to the new directory

as a bonus, as discussed on discord, it writes the logs to a Data
directory instead of a Config directory
2023-03-26 11:02:23 +02:00
Zaggy1024 5fa264ea18
patterns: Update pattern_language and implement support for new bitfield features (#992)
This requires https://github.com/WerWolv/PatternLanguage/pull/34 to be
merged first, and then this can be amended to update the submodule and
merged to add support for the new features.
2023-03-26 11:01:37 +02:00
WerWolv 5e175b118d build: Updated libwolv 2023-03-25 11:24:24 +01:00
WerWolv 635173e55a impr: Make sure themes are added correctly when downloaded from the store 2023-03-23 20:35:16 +01:00
WerWolv 2296766746 build: Allow building with capstone 4.X again 2023-03-23 16:45:00 +01:00
WerWolv 13be499510 build: Pull in latest version of libyara and libcurl 2023-03-23 16:30:55 +01:00
WerWolv 8ef863cae1 fix: Progress not working with with new http wrapper 2023-03-23 13:32:35 +01:00
WerWolv 9463105172 fix: Header memory leak in http requests class 2023-03-23 12:08:33 +01:00
WerWolv bb4819bce4 sys: Fixed http request stack overflow 2023-03-23 11:43:07 +01:00
WerWolv 15be24db62 sys: Updated to use the new HttpRequest helper instead of Net 2023-03-23 11:23:07 +01:00
WerWolv e7e2af9f91 patterns: Updated pattern language 2023-03-23 09:41:32 +01:00
WerWolv 8c5fd021f7 api: Hook up new http wrapper to the rest of ImHex 2023-03-22 23:05:18 +01:00
WerWolv 1a1ba19770 api: Added new, more flexible curl http wrapper 2023-03-22 21:48:14 +01:00
WerWolv f95214d8fe patterns: Updated pattern language 2023-03-22 17:43:45 +01:00
WerWolv 45649264f9 patterns: Updated pattern language 2023-03-22 13:12:57 +01:00
WerWolv cec62d23b0 fix: Window resizing causing freezes in some cases 2023-03-21 22:39:35 +01:00
WerWolv 57a62d0544 impr: Clean up entire API and added doc comments 2023-03-21 15:33:43 +01:00
Thomas 8731b7582b
impr: Display a more detailed errors when opening a raw disk provider failed (#970)
PR title is self explaining

I may modify other providers implementations to display a detailed error
message later

I'm not sure how to deal with other locales because the format changed.
Before, I had to add and comment the key in all locale files, now I'm
not so sure.
2023-03-21 10:33:00 +01:00
WerWolv e6959dc572 patterns: Updated pattern language
Fixes #954
2023-03-21 10:31:13 +01:00
WerWolv 060ff56f9d impr: Improve file reading performance if opening of files is slow 2023-03-21 09:47:42 +01:00
WerWolv a182e8daf2 patterns: Updated pattern language
Fixes #983
2023-03-20 15:12:27 +01:00
WerWolv a4dfaba03f fix: All menu item shortcuts being global 2023-03-20 15:12:12 +01:00
WerWolv 6e23560e80 feat: Added all menu items to command palette 2023-03-20 14:11:43 +01:00
WerWolv 39e8d557e8 sys: Completely revamped main menu item system 2023-03-20 13:11:43 +01:00
WerWolv c9342d90fb fix: Prevent new line from appearing on every pl code save
Fixes #982
2023-03-20 08:29:00 +01:00
WerWolv 367bd76046 ui: Mae sure all theme scaling values are scaled correctly 2023-03-18 10:52:50 +01:00
WerWolv 1a1bf98905 impr: Look for magic files recursively 2023-03-17 21:18:28 +01:00
WerWolv 031884c327 patterns: Updated pattern language
Fixes #979
2023-03-17 17:28:17 +01:00
WerWolv 466dacaab4 ui: Improve the look and feel of the information view 2023-03-17 17:07:39 +01:00
WerWolv 1f8645fd43 fix: Occasional crash when multiple threads are reading data from a file provider 2023-03-17 11:43:50 +01:00
WerWolv f10fb56042 impr: Drastically improve file reading performance 2023-03-17 11:31:50 +01:00
WerWolv 64be6d89ee fix: Moving cursor around using arrow keys behaving weirdly 2023-03-17 09:17:44 +01:00
WerWolv 5442c32a3f impr: Allow non-continuous provider values to be saved 2023-03-17 08:38:38 +01:00
WerWolv 5097a223e3 impr: Added default saveAs implementation for all providers 2023-03-17 08:15:43 +01:00
WerWolv 7cdba75bef fix: Crash when not making a valid selection in provider load interfaces 2023-03-16 16:48:15 +01:00
WerWolv 13ef4c04d1 patterns: Updated pattern language
Closes #961
2023-03-14 14:41:32 +01:00
WerWolv a0b36925ed fix: Custom styles not being scaled correctly 2023-03-14 13:19:04 +01:00
WerWolv 3a840c4ced impr: Properly display custom encoding characters that are split between lines 2023-03-14 09:35:43 +01:00
WerWolv bd190d2b65 patterns: Updated pattern language 2023-03-13 11:36:11 +01:00
WerWolv 7d86b277a7 build: Updated curl and libyara 2023-03-13 10:24:56 +01:00
WerWolv 5a8433ede4 build: Updated libwolv 2023-03-13 09:31:24 +01:00
WerWolv 00a5fd2d7c sys: Fixed more build issues 2023-03-13 09:25:07 +01:00
WerWolv 55f9faea10 sys: Updated more code to libwolv 2023-03-13 08:58:08 +01:00
WerWolv fb2e668589 sys: Moved more functions to libwolv 2023-03-12 18:43:05 +01:00
WerWolv 0dafb3d230 sys: Replaced many helper functions with libwolv 2023-03-12 18:27:33 +01:00
Fenrisfulsur 069221757f
feat: Added chunk based entropy analysis to information view (#933)
Issue: https://github.com/WerWolv/ImHex/issues/522

Implementation of chunk based entropy analysis in diagram.hpp available
from the data information view and in the pattern language.

---------

Co-authored-by: WerWolv <werwolv98@gmail.com>
2023-03-10 16:06:18 +01:00
WerWolv 00c2d7ea71 patterns: Updated pattern language 2023-02-20 11:35:33 +01:00
WerWolv cddcc1e85d patterns: Updated pattern language 2023-02-19 10:49:57 +01:00
WerWolv 91928b45d8 fix: Try to fix build again 2023-02-19 10:25:39 +01:00
WerWolv 0017cd2e40 feat: Added binary hex cell visualizer
Closes #939
2023-02-18 22:20:02 +01:00
WerWolv 83a9655772 patterns: Updated pattern language 2023-02-17 20:30:41 +01:00
WerWolv 9e3fe9beb1 patterns: Updated pattern language 2023-02-17 17:35:41 +01:00
WerWolv 94977ad216 patterns: Updated pattern language 2023-02-17 14:55:56 +01:00
WerWolv bf8089dc7e impr: Don't memory map files, never keep a write handle open for long
Closes #592
2023-02-17 10:26:09 +01:00
WerWolv e48761b5c0 fix: Plot lines being invisible 2023-02-17 10:02:43 +01:00
WerWolv 35437c0300 patterns: Added rotation and scale sliders to 3D visualizer 2023-02-16 23:24:24 +01:00
WerWolv 6cecc12d04 patterns: Updated pattern language 2023-02-16 22:20:03 +01:00
WerWolv 5ccbfc1ff8 feat: Allow themes and nodes to be downloaded from the content store 2023-02-16 18:55:21 +01:00
WerWolv d3d6a8a838 patterns: Updated pattern language 2023-02-16 18:23:49 +01:00
WerWolv ac83bbeb0e feat: Added a theme manager view to make it easier to make new themes 2023-02-16 18:06:40 +01:00
WerWolv 851f132188 impr: Make Text Editor word selector also consider underlines 2023-02-15 17:12:16 +01:00
WerWolv 3067ff08ec feat: Greatly improved diff view
Fixes #631
2023-02-15 17:01:36 +01:00
WerWolv 0fad21a980 patterns: Updated pattern language 2023-02-15 09:39:16 +01:00
WerWolv 9ec7b90192 patterns: Updated pattern language 2023-02-14 15:10:52 +01:00
WerWolv 08f0fff34b patterns: Updated pattern language 2023-02-14 12:53:37 +01:00
WerWolv 2c1073eda9 fix: Safety backup restore popup getting hidden by tip of the day 2023-02-14 11:45:32 +01:00
WerWolv c9348f0651 patterns: Updated pattern language 2023-02-13 23:27:12 +01:00
WerWolv accb461c08 impr: Better word select and delete in text editor
Closes #931
2023-02-13 10:21:57 +01:00
WerWolv 61ce88ba9b build: Fix build on systems that have no backtrace or execinfo
Fixes #932
2023-02-13 08:27:08 +01:00
WerWolv 3003dea409 fix: Occasional error when loading recent files 2023-02-12 17:52:09 +01:00
WerWolv 0b18930017 fix: Invalid theme load error 2023-02-12 17:39:47 +01:00
WerWolv d084ec78e9 nodes: Allow immediate values on integer and float inputs
Closes #427
2023-02-12 17:33:53 +01:00
WerWolv a59c17aa83 nodes: Fixed loading saved nodes multiple times 2023-02-10 11:22:11 +01:00
WerWolv 5cc01ae89d nodes: Added support for nested, shareable, custom data processor nodes 2023-02-09 23:07:04 +01:00
WerWolv 303dd28c7c fix: Fix macOS build again 2023-02-08 14:11:42 +01:00
WerWolv dd87dc7046 fix: Building on macOS 2023-02-08 13:51:56 +01:00
WerWolv 89a96c6d25 sys: Improve pattern visualizer API 2023-02-07 14:18:59 +01:00
WerWolv 22ff033b5e fix: More P2468R2 issues 2023-02-02 21:13:56 +01:00
WerWolv 3877f0853d patterns: Updated pattern language 2023-02-02 20:41:51 +01:00
WerWolv 9af8a0113a patterns: Updated pattern language 2023-02-02 19:06:00 +01:00
WerWolv 4ea8971adf lang: Added base translation files 2023-02-02 10:08:47 +01:00
WerWolv 8da072b602 lang: Get codebase ready for the use with Weblate 2023-02-02 09:41:58 +01:00
WerWolv c6e1f45dc3 feat: Added option to copy custom encoding strings from hex view 2023-01-28 21:12:35 +01:00
WerWolv 9b80486285 fix: Process Memory provider search not being case insensitive 2023-01-28 11:41:09 +01:00
WerWolv 3254376d28 fix: Editing static array values being broken 2023-01-28 00:03:20 +01:00
WerWolv 29c1a0cb78 feat: Allow multiple yara files to be selected at once 2023-01-28 00:01:53 +01:00
WerWolv 1cf9f7e990 patterns: Updated pattern language 2023-01-27 10:45:07 +01:00
WerWolv fee1b985c0 feat: Added better error messages for generating and importing ips patches 2023-01-25 10:38:04 +01:00
WerWolv 434b7649c3 fix: CRC8 hashing algorithm displaying 16 bits result 2023-01-25 00:06:48 +01:00
WerWolv fc44dd4592 build: Fixed building of miniaudio on macOS 2023-01-24 23:57:43 +01:00
WerWolv 94cd83e0dc feat: Added sound visualizer 2023-01-24 23:27:35 +01:00
WerWolv 90d9c91717 build: Cleanup opengl and glfw linking 2023-01-24 14:59:19 +01:00
WerWolv cf9df6e36d feat: Added ability to query provider information from pattern language 2023-01-24 09:07:11 +01:00
WerWolv 915106f360 patterns: Fixed various issues with the 3d visualizer 2023-01-23 16:25:23 +01:00
WerWolv a51e4afb05 patterns: Updated pattern language 2023-01-23 13:53:29 +01:00
WerWolv c30f8fa459 patterns: Updated pattern language 2023-01-23 07:25:44 +01:00
WerWolv c86891e0c3 fix: Custom encodings not rendering correctly on non-zero page 2023-01-22 14:17:55 +01:00
WerWolv acf6b839e5 patterns: Updated pattern language 2023-01-22 12:16:22 +01:00
WerWolv 1f50e834fc fix: Copying bytes from non-zero page not working 2023-01-22 11:28:17 +01:00
WerWolv 6322dbf46a fix: Revert back macOS scaling fix as it made it worse 2023-01-21 22:59:08 +01:00
WerWolv 89e0df86a2 feat: Added scaling and rotation to 3D visualizer 2023-01-21 13:00:02 +01:00
WerWolv 7ba9349de2 patterns: Updated pattern language 2023-01-21 12:31:33 +01:00
WerWolv f17e04273d fix: IPS patch applying being broken 2023-01-21 00:29:16 +01:00
WerWolv 76d47bf856 fix: MacOS Build errors because of khronos includes 2023-01-21 00:11:33 +01:00
WerWolv d4967018c2 feat: Added basic lighting and rotations to 3d visualizer model 2023-01-20 23:32:51 +01:00
WerWolv 8e759d9b5f feat: Added basic 3D visualizer, moved visualizers to separate file 2023-01-20 21:16:28 +01:00
WerWolv 4fb544d59d fix: Views starting out super tiny 2023-01-19 16:59:09 +01:00
WerWolv e37a73ae58 patterns: Updated pattern language 2023-01-19 12:19:09 +01:00
WerWolv c5d2739a39 fix: File provider sometimes not saving path to project file 2023-01-19 11:09:24 +01:00
WerWolv ef12798fe2 feat: Allow custom hashes to be saved to projects 2023-01-18 14:30:56 +01:00
WerWolv c747c15567 fix: Buffer overflow caused by hex input boxes 2023-01-18 14:30:44 +01:00
Nik 48a57cd981
feat: Added stacktrace printing on crashes (#892)
* feat: Added simple stack trace output

* feat: Added backtrace wrapper

* build: Added libbacktrace include dirs to build

* build: Fixed libbacktrace variables

* build: More backtrace variable fixes

* build: Try to find backtrace include

* build: Get backtrace header from cmake script

* feat: Added backtrace support for execinfo

* feat: Added support for StackWalk on Windows
2023-01-17 21:38:56 +01:00
Kuruyia a65f0a5238
feat: Support macOS keyboard shortcuts (#889) 2023-01-17 08:16:02 +01:00
WerWolv 62bf877046 patterns: Updated pattern language
Fixes #880, Fixes #863
2023-01-15 22:59:15 +01:00
WerWolv 1b56c7ffae ui: Show task progress in task bar 2023-01-14 14:21:16 +01:00
WerWolv f7e22ce651 patterns: Updated pattern language 2023-01-14 14:20:48 +01:00
WerWolv b9c2b1de5f patterns: Updated pattern language 2023-01-13 22:30:57 +01:00
WerWolv 45492365be fix: Potentially fix scaling issues on macOS 2023-01-13 20:06:03 +01:00
WerWolv 0d91db68db patterns: Added bitmap visualizer 2023-01-12 11:18:36 +01:00
WerWolv 03d216f116 feat: Allow most resources to be loaded relative to the current project 2023-01-11 23:31:25 +01:00
WerWolv b1cab5ccd2 patterns: Updated pattern language 2023-01-11 11:22:01 +01:00
WerWolv 3b5d54dd96 fix: Text Editor behaving a bit weirdly now 2023-01-10 19:27:27 +01:00
WerWolv 87571450f4 patterns: Updated pattern language 2023-01-10 16:20:54 +01:00
WerWolv be1f711fda fix: Pattern editor not scrolling all the way to the right when typing 2023-01-10 13:27:16 +01:00
WerWolv ef3627321c sys: Clear project after loading crash backup 2023-01-10 08:57:29 +01:00
WerWolv dbcb13f473 patterns: Disallow `application/octet-stream` to be used as MIME type 2023-01-09 08:38:19 +01:00
WerWolv c1359a71d6 feat: Added options to automatically expand or flatten the pattern tree 2023-01-08 16:06:26 +01:00
WerWolv b1a26d02c1 patterns: Updated pattern language 2023-01-08 10:20:54 +01:00
WerWolv ceae23eab1 fix: Crash when opening a project file when already having providers open 2023-01-07 22:43:48 +01:00
Thomas ab29303c2e
sys: Clear project context when closing all providers, Display project name in window title (#860)
* clear project context when closing all providers

* Show project name on window title

* refactor RequestChangeWindowTitle to RequestUpdateWindowTitle

* add spaces
2023-01-07 17:31:22 +01:00
WerWolv c26bed894b sys: Add `imhex/lib` path to plugin libraries search paths 2023-01-07 10:32:01 +01:00
WerWolv efeeea37f6 build: Updated libromfs properly 2023-01-05 16:27:16 +01:00
WerWolv 763196f0cc feat: Added filtering to Process Memory Provider 2023-01-05 09:30:15 +01:00
WerWolv ff9048fcf0 fix: Crash on exit
Fixes #854
2023-01-05 09:29:33 +01:00
WerWolv 7d9c86f584 fix: Crash when loading themes on Linux and MacOS 2023-01-04 23:56:36 +01:00
WerWolv 6129360b06 patterns: Updated pattern language
Fixed #853
2023-01-04 19:39:01 +01:00
WerWolv e529a79ddb fix: Template pattern types being placeable using right click menu 2023-01-04 15:50:37 +01:00
WerWolv 45bb9e6706 build: Fix some more ObjC issues 2023-01-04 14:55:58 +01:00
WerWolv e6d14507e2 fix: Window title not resetting when closing all providers 2023-01-04 14:24:18 +01:00
WerWolv 9a5881fc47 build: Fixed -Wpedantic issues on macOS 2023-01-04 14:24:07 +01:00
WerWolv f7dd28002e build: Build everything using `-Wpedantic` 2023-01-04 14:03:09 +01:00
WerWolv 496b0ec41d build: Fixed more build errors 2023-01-04 13:29:39 +01:00
WerWolv eb4a1e2692 build: Try to clean up bundled dependencies a bit 2023-01-04 12:34:38 +01:00
WerWolv e6bec7d2b2 patterns: Updated pattern language 2023-01-04 10:20:50 +01:00
WerWolv 01917439dd fix: More invalid iterator accesses 2023-01-03 13:04:36 +01:00
WerWolv f21c80c48a build: More libfmt fixes 2023-01-02 01:38:07 +01:00
WerWolv 3dc42b711c fix: Plot lines being invisible 2023-01-01 23:53:50 +01:00
WerWolv 4b2863ca14 patterns: Updated pattern language 2023-01-01 22:15:47 +01:00
WerWolv fe1b4b45b5 patterns: Updated pattern language 2023-01-01 21:48:20 +01:00
WerWolv a20d6aa2b2 fix: Project file creation issues 2023-01-01 21:46:41 +01:00
WerWolv 78e52a0fe3 patterns: Updated pattern language 2023-01-01 20:25:41 +01:00
WerWolv d7d19d7594 feat: Further improve process memory provider 2023-01-01 12:26:27 +01:00
WerWolv 90df4413c3 feat: Added basic windows process memory provider 2023-01-01 02:29:38 +01:00
WerWolv 87ed0d31d4 fix: Various invalid iterator and container accesses 2023-01-01 01:01:24 +01:00
WerWolv 921bdd9e3b patterns: Updated pattern language 2022-12-31 10:28:41 +01:00
WerWolv 1f51a603f0 patterns: Updated pattern language 2022-12-30 12:47:23 +01:00
WerWolv 745da6ba45 build: Only use `--export-all-symbols` on Windows 2022-12-30 11:24:53 +01:00
WerWolv ad71e612a3 build: Clean up some old compiler/linker flag settings 2022-12-30 10:35:11 +01:00
WerWolv 85823e8e5d build: Removed all usages of Python 2022-12-29 23:32:57 +01:00
WerWolv 7859a9bb1f feat: Added native custom theme support 2022-12-29 19:26:00 +01:00
WerWolv cf601586fc fix: Deadlock when loading recent files 2022-12-28 23:06:27 +01:00
WerWolv f7b988906e fix: Saving projects to unicode paths not working correctly 2022-12-28 10:46:02 +01:00
WerWolv 5777a6d401 patterns: Updated pattern language 2022-12-27 23:26:25 +01:00
WerWolv 4b8e275254 fix: Crash when closing providers too quickly 2022-12-27 11:35:20 +01:00
WerWolv e272c5d000 build: Updated dependencies 2022-12-24 15:28:51 +01:00
WerWolv e4fbb1b640 pattern: Added basic line plot and image visualizer 2022-12-23 14:33:27 +01:00
WerWolv ee94e9d619 patterns: Updated pattern language 2022-12-21 00:14:42 +01:00
WerWolv 264da1ed78 pattern: Show array entries directly if there are less than 512 2022-12-20 20:56:01 +01:00
WerWolv ce37c795a7 patterns: Updated pattern language 2022-12-19 15:38:51 +01:00
WerWolv ae5d8c9aad build: Updated libromfs 2022-12-19 08:52:12 +01:00
WerWolv 6502920047 patterns: Move pattern editing behind a double click 2022-12-18 23:11:22 +01:00
WerWolv f9a7cdf4dd patterns: Improve editing of pattern values 2022-12-17 22:22:20 +01:00
WerWolv a5296bab95 feat: Added pattern value editing 2022-12-16 11:20:39 +01:00
WerWolv bda7a2b351 patterns: Fixed bitfield fields not caring about endianess
Fixes #837
2022-12-15 16:16:49 +01:00
WerWolv e3f2541fde sys: Make sure libromfs is never used in libimhex 2022-12-05 15:29:19 +01:00
WerWolv 94723dbba3 build: Updated libromfs 2022-12-05 10:08:25 +01:00
WerWolv 6e0b92a4de sys: Added logging for which romfs is being used 2022-12-05 09:31:16 +01:00
WerWolv 13a61f5249 build: Updated libromfs 2022-12-04 22:41:30 +01:00
WerWolv 1347f81236 sys: Added postJson Net helper function 2022-12-04 21:50:47 +01:00
WerWolv 8398c12f74 patterns: Updated pattern language 2022-12-02 15:25:34 +01:00
WerWolv b3fcf71982 lib: Updated libromfs 2022-12-02 12:02:23 +01:00
WerWolv 3b94a42783 lang: Updated localization system to use a more versatile json format 2022-12-02 12:00:04 +01:00
WerWolv 453ddaf0d6 patterns: Updated pattern language 2022-11-29 17:06:34 +01:00
WerWolv d4ff36fde0 build: Updated dependencies 2022-11-29 11:06:22 +01:00
WerWolv 1dd873462e build: Fixed build failure when VERSION file contains extra white space 2022-11-29 09:44:47 +01:00
WerWolv 825c613d64 patterns: Fixed crash when using a void expression in a placement
Fixes #822
2022-11-25 10:58:17 +01:00
André Blome 4aa314b3ab
feat: Added quick "save project" action (#826)
* add quick -save project- action

* translation for -save project as- added

* removed machine translations; header file name extension fixed

* moved openProject() for consistency
2022-11-25 10:47:11 +01:00
iTrooz_ 217cf799c2
sys: Warn user if a net request fails while a proxy is set (#821)
* tell the user if he have a proxy set

* Improved log message

Co-authored-by: Nik <werwolv98@gmail.com>
2022-11-25 10:39:45 +01:00
WerWolv c194588118 fix: File Provider adding zero bytes at the end of the data when saving
Fixes #835
2022-11-25 10:02:55 +01:00
WerWolv 398dc8101f patterns: Updated pattern language 2022-11-20 00:28:05 +01:00
WerWolv 13cb330711 patterns: Updated pattern language 2022-11-19 13:49:50 +01:00
WerWolv c0740822a3 patterns: Updated pattern language 2022-11-19 11:59:57 +01:00
WerWolv 340e627af9 patterns: Updated pattern language 2022-11-19 11:55:00 +01:00
WerWolv 3089a710bd patterns: Updated pattern language 2022-11-19 11:32:09 +01:00
WerWolv de2de1e1d7 patterns: Updated pattern language 2022-11-18 14:27:31 +01:00
WerWolv 91a4f52f67 build: Potentially fix LTO 2022-11-14 10:42:09 +01:00
WerWolv 3bcfa7e10b ux: Make the pattern language text editor always insert spaces instead of tabs 2022-11-14 09:44:10 +01:00
WerWolv cbd7c10f3d build: Updated libromfs 2022-11-13 22:53:41 +01:00
WerWolv 0d09c24840 build: Updated libromfs 2022-11-13 22:41:29 +01:00
WerWolv d54d371ab7 build: Updated libromfs 2022-11-13 21:34:26 +01:00
WerWolv b29d184488 patterns: Updated pattern language 2022-11-09 22:26:13 +01:00
WerWolv 168d6b2080 patterns: Updated pattern language 2022-11-09 20:54:01 +01:00
WerWolv 9074a6fcf1 fix: Edit menu items being always unavailable 2022-11-09 18:49:07 +01:00
WerWolv 4c5d2f6ebb feat: Finish up work on new pl section system 2022-11-08 21:43:22 +01:00
WerWolv 5bbc2fd94c feat: Added basic UI for the new pl section system 2022-11-07 00:04:47 +01:00
WerWolv 901b8f0424 sys: Refactored hex editor into its own reusable component 2022-11-06 12:19:12 +01:00
WerWolv 291da649c1 ui: Limit window title length 2022-11-04 15:19:24 +01:00
WerWolv 48e9d3b4e9 patterns: Updated pattern language 2022-11-04 10:12:26 +01:00
WerWolv 45e2578c5b patterns: Updated pattern language 2022-11-04 09:50:26 +01:00
WerWolv a6742de405 sys: Literally, fuck Valve 2022-11-02 08:24:00 +01:00
Asvel c35eaa7a4d
fix: Pattern auto-loading issue on Windows (#808) 2022-10-30 13:39:40 +01:00
WerWolv 5cf6baca88 fix: Yara matching not being interruptable 2022-10-28 14:32:28 +02:00
WerWolv 0c5e72ab6a nodes: Improve precision of values passed between nodes 2022-10-26 08:54:08 +02:00
WerWolv f67c9735c5 patterns: Fixed memory leak 2022-10-22 23:17:38 +02:00
WerWolv 858e1aed3b nodes: Fixed a few issues with locatizations, errors and overlays 2022-10-22 23:17:18 +02:00
WerWolv 3b7f2fbdaa pattern: Display evaluation time when pattern finished running 2022-10-22 15:47:50 +02:00
WerWolv f53d7fc9f3 fix: Format string syntax error 2022-10-22 13:46:48 +02:00
WerWolv 1eb9858f62 sys: Moved libimhex-rust out of project 2022-10-21 14:55:01 +02:00
WerWolv 241b93aab5 patterns: Added menu to Edit menu for placing types at current selection 2022-10-21 10:03:37 +02:00
WerWolv 6d08a4386d patterns: Updated pattern language 2022-10-20 22:45:46 +02:00
WerWolv 37b4d5e7b5 patterns: Updated pattern language 2022-10-20 09:48:06 +02:00
iTrooz_ f3b0971d00
sys: Improve various error messages (#789)
* Tell the user the net request which failed

* Show signal name

* Print execution time of startup tasks

* replace NULL with nullptr

* change wording for task logs

* Remove '..' from task name

* remove using namespace chrono
2022-10-20 08:28:29 +02:00
WerWolv 05e8e53451 patterns: Updated pattern language 2022-10-17 13:29:43 +02:00
WerWolv 8c96ba1c58 patterns: Updated pattern language 2022-10-16 22:04:30 +02:00
WerWolv e170c45556 patterns: Updated pattern language 2022-10-16 16:24:24 +02:00
WerWolv 802ad96c49 patterns: Updated pattern language
Fixes #783
2022-10-13 22:11:01 +02:00
WerWolv 1ab949b7ef nodes: Added RGBA8 image visualizer 2022-10-13 15:13:53 +02:00
WerWolv 8b39c8f219 feat: Make all tool windows be detachable 2022-10-13 10:47:38 +02:00
WerWolv ee53eca19f patterns: Updated pattern language 2022-10-12 12:25:22 +02:00
WerWolv 015266181e fix: Various issue with the hex editor editing mode 2022-10-12 10:56:03 +02:00
WerWolv cb9458dab4 patterns: Updated pattern language 2022-10-11 14:15:22 +02:00
WerWolv e32a85a33f patterns: Updated pattern language 2022-10-11 09:00:07 +02:00
WerWolv 6a6b860622 patterns: Updated pattern language 2022-10-10 20:33:43 +02:00
WerWolv 86e33a1ee9 build: Bumped version to 1.24.1 2022-10-10 19:11:30 +02:00
WerWolv 37850ad85a patterns: Updated pattern language 2022-10-10 18:15:11 +02:00
WerWolv 6975d7e2cd patterns: Updated pattern language 2022-10-10 16:09:50 +02:00
WerWolv 5b8bed6083 patterns: Updated pattern language 2022-10-10 14:42:13 +02:00
WerWolv 9055105627 fix: Evaluator not exiting evaluating state correctly on error 2022-10-09 17:31:06 +02:00
WerWolv a44de63e24 fix: Build failing on Linux 2022-10-09 16:34:53 +02:00
WerWolv 8fc7931132 patterns: Updated pattern language 2022-10-09 15:56:41 +02:00
WerWolv 4070833229 ui: Highlight selected patterns in pattern data view 2022-10-09 15:56:26 +02:00
WerWolv aa42fb5076 patterns: Updated pattern language 2022-10-08 16:28:49 +02:00
WerWolv 0e358bbefe patterns: Updated pattern language 2022-10-08 10:00:57 +02:00
WerWolv 2b135cf7e0 ui: Limit maximum length of data displayed in pattern tooltip 2022-10-07 16:27:29 +02:00
WerWolv d5a08ae568 patterns: Updated pattern language 2022-10-07 13:17:47 +02:00
WerWolv 484481f886 fix: Opening files with unicode names through the command line 2022-10-07 10:14:24 +02:00
WerWolv eb247b8607 patterns: Updated pattern language 2022-10-06 21:09:58 +02:00
WerWolv 2cd6cb8814 patterns: Updated pattern language 2022-10-06 14:11:03 +02:00
WerWolv 2a93eab14c ui: Make sure pattern data view doesn't flicker when executing pattern 2022-10-06 13:24:22 +02:00
WerWolv f039ea68d0 fix: Potential crashes when pasting with no clipboard content 2022-10-06 09:35:18 +02:00
WerWolv e0c35e0002 fix: Data processor nodes not remembering their positions correctly 2022-10-06 09:14:46 +02:00
WerWolv 5ace199dc4 fix: Foreground tasks not being cancellable 2022-10-05 21:25:52 +02:00
WerWolv 7f2c60b0d7 fix: Race condition with data inspector 2022-10-05 12:02:40 +02:00
WerWolv 7bb9e7ee82 sys: Replaced awful task system with a much more efficient thread pool 2022-10-04 23:37:48 +02:00
WerWolv 26be4c3ac8 patterns: Updated pattern language 2022-10-04 23:37:25 +02:00
WerWolv b80517ab15 sys: Improved UTF-8 path handling in various places
Fixes #768
2022-10-04 09:10:58 +02:00
WerWolv b17cd3696c fix: Handling of exceptions that are not being caught 2022-10-03 10:36:19 +02:00
WerWolv 8bf586cfa9 patterns: Fixed bitfield order not resetting correctly
Fixes #756
2022-10-02 19:20:35 +02:00
Nik 9c484e7b57
fix: Various clang / clang-tidy warnings (#764) 2022-10-02 17:30:26 +02:00
WerWolv 6a07a2f85d feat: Look for custom inspector entries in imhex/scripts/inspectors 2022-10-02 14:18:40 +02:00
WerWolv 3367237da3 feat: Added very primitive support for adding custom data inspector entries 2022-10-01 23:16:55 +02:00
WerWolv 663fb88367 sys: Various cleanup 2022-09-30 12:49:28 +02:00
WerWolv 4d99c4b59d patterns: Updated pattern language 2022-09-30 12:45:43 +02:00
WerWolv ca6a8a7a46 sys: Move resources into their relevant subprojects 2022-09-29 10:33:39 +02:00
WerWolv b450f4797e feat: Added wide string to data inspector 2022-09-28 16:10:40 +02:00
WerWolv 0552084673 patterns: Updated pattern language 2022-09-28 15:41:57 +02:00
WerWolv c769e9cc32 ui: Highlight modified bytes in red 2022-09-28 15:01:43 +02:00
WerWolv 86274b8b94 patterns: Updated pattern language 2022-09-23 21:33:55 +02:00
WerWolv 669427eb24 patterns: Updated pattern language 2022-09-23 21:20:52 +02:00
WerWolv 5ba22e7554 patterns: Updated pattern language 2022-09-23 20:50:55 +02:00
WerWolv 65ad88eed9 patterns: Updated pattern language 2022-09-22 09:05:32 +02:00
WerWolv e34703ea5a fix: Saving and loading projects not working correctly 2022-09-22 09:05:09 +02:00
WerWolv 96b5221c1d patterns: Updated pattern language 2022-09-21 11:55:47 +02:00
iTrooz_ 3a94be9abb
ux: Display an error message if file picker can't be opened (#748)
* add error message for the file picker

* set a different message for Windows/MacOS

* fix typos

* Moved file dialog error handling to a callback function

Co-authored-by: Nik <werwolv98@gmail.com>
2022-09-20 15:47:59 +02:00
WerWolv 7e61b513f3 patterns: Fixed highlighting of arrays of arrays 2022-09-20 15:42:07 +02:00
WerWolv 1d4cbbe418 ux: Handle project loading errors better 2022-09-20 15:33:36 +02:00
WerWolv a102f5fcbf sys: Updated a bunch of dependencies 2022-09-19 23:21:59 +02:00
WerWolv a55177edfa fix: Curl SSL context not being thread safe in the slightest 2022-09-19 21:56:43 +02:00
WerWolv 4c01a749de sys: Improved startup time by running startup tasks in parallel 2022-09-19 16:54:19 +02:00
WerWolv 7b61268f22 ux: Reduce file loading time to basically zero 2022-09-19 16:09:22 +02:00
WerWolv 9893e7a965 ui: Display array patterns in pattern data view in chunks of 512 entries 2022-09-19 14:16:23 +02:00
WerWolv 814c595c12 ui: Added functionality icons to most text input fields 2022-09-19 11:29:51 +02:00
WerWolv 3cdc8c5884 fix: OpenGL textures not being cleaned up correctly 2022-09-18 20:38:45 +02:00
WerWolv b2932773b9 feat: Added unique selection and scrolling position to each provider 2022-09-18 16:22:08 +02:00
WerWolv b766cf0807 patterns: Updated pattern language 2022-09-17 15:48:12 +02:00
WerWolv 6a7bbb8752 fix: Crash on some Linux systems when opening files 2022-09-17 08:55:18 +02:00
WerWolv e4431749e1 patterns: Updated pattern language 2022-09-16 15:12:12 +02:00
WerWolv c587b357eb patterns: Updated pattern language 2022-09-16 10:52:49 +02:00
WerWolv bf00503d1f fix: BufferedReader messing up the second to last byte 2022-09-16 08:30:28 +02:00
WerWolv 03f357efd1 patterns: Updated pattern language 2022-09-15 11:31:13 +02:00
WerWolv c3137df83c patterns: Updated pattern language 2022-09-15 09:46:38 +02:00
WerWolv 66d64cf020 patterns: Refactor creation of default runtime 2022-09-15 09:34:40 +02:00
WerWolv 42f5c0f484 fix: Tasks being interrupted even if they already finished 2022-09-14 13:51:48 +02:00
WerWolv 20a2331504 feat: Allow task stop button to abort pattern evaluation 2022-09-13 16:05:41 +02:00
WerWolv bda4aadc54 fix: Sequence escape codes 2022-09-13 14:10:52 +02:00
WerWolv 7d87c8bb98 patterns: Added references 2022-09-13 13:14:36 +02:00
WerWolv 4fb74a1769 patterns: Updated pattern language 2022-09-12 21:28:29 +02:00
WerWolv aa658b7dbc sys: Make sure constexpr variables don't get copied onto the stack 2022-09-12 21:28:02 +02:00
WerWolv 83f4093796 fix: Rendering of pattern array entries not working correctly 2022-09-08 23:03:58 +02:00
WerWolv d990ee102a sys: More cleanup 2022-09-07 23:11:24 +02:00
WerWolv 7a4040f6ec ui: Fixed indentation of sealed patterns in pattern data view 2022-09-07 22:21:44 +02:00
WerWolv 2fbb351314 patterns: Updated pattern language 2022-09-07 11:32:47 +02:00
WerWolv 50577c9ea0 patterns: Updated pattern language 2022-09-07 00:14:05 +02:00
WerWolv 37cc8f3aae patterns: Updated pattern language 2022-09-06 10:50:26 +02:00
WerWolv a0b2473bf4 ui: Improved pattern color visualization 2022-09-05 23:34:20 +02:00
WerWolv 95a3104a56 sys: Only display FPS in debug builds 2022-09-05 22:37:28 +02:00
WerWolv 2d5f77730b patterns: Updated pattern language 2022-09-05 22:09:44 +02:00
WerWolv 033a0dfbb9 patterns: Updated pattern language 2022-09-05 14:16:44 +02:00
WerWolv cb682b6e21 ui: Fixed graphics artifacts on welcome screen 2022-09-05 14:16:31 +02:00
WerWolv c60c1154b9 patterns: Updated pattern language
Fixes #276
2022-09-04 20:37:40 +02:00
WerWolv 22b6bdb5cf feat: Added Copy as -> Address option to Edit menu
Closes #725
2022-09-04 14:23:09 +02:00
WerWolv d9a47fe815 fix: Crashes when resizing file
Fixes #721
2022-09-04 11:16:24 +02:00
WerWolv d240b4ed49 fix: Build errors 2022-09-04 00:04:27 +02:00
WerWolv 1a21627cdb ui: Added error popup when an exception is thrown in a task 2022-09-03 23:56:57 +02:00
WerWolv 7f6aa9f9a6 fix: Backwards searching being broken
Fixes #713
2022-09-03 23:02:46 +02:00
WerWolv 4df1496a0f patterns: Properly set current base address in pattern language runtime
Fixes #714
2022-09-03 22:04:41 +02:00
WerWolv b68eb0bb5e patterns: Fixed accessing global variables inside [[format]] functions
Fixes #720
2022-09-03 21:34:54 +02:00
WerWolv 7c0fb7c4f2 patterns: Updated pattern language 2022-09-03 17:15:42 +02:00
WerWolv 6689b8ebfa patterns: Updated pattern language 2022-08-29 16:33:40 +02:00
WerWolv 3cb6c4f775 fix: Buffered reader returning zeros if provider size is below 16MiB
Fixes #707
2022-08-29 16:32:32 +02:00
WerWolv b687eb88f9 fix: Pattern source code not being loaded correctly from project files 2022-08-29 13:15:17 +02:00
WerWolv a620400e4e patterns: Fixed unions 2022-08-28 17:53:47 +02:00
WerWolv 2b9c6ec447 patterns: Updated pattern language 2022-08-28 12:35:36 +02:00
WerWolv 742a4e53b5 patterns: Updated pattern language 2022-08-27 14:29:04 +02:00
WerWolv 0cd10b6b70 patterns: Updated pattern language 2022-08-27 13:20:28 +02:00
WerWolv aabf718e60 patterns: Updated pattern language 2022-08-27 12:55:11 +02:00
WerWolv 03116c4ab8 patterns: Updated pattern language 2022-08-27 11:43:43 +02:00
iTrooz_ 38162c0129
build: Use the bundled CA cert in AppImage (#694)
* Added option to bundle CA

* use bundled CA for AppImage

* Fix bundled CA not working on Linux

* revert change to add null terminated string

* set IMHEX_USE_BUNDLED_CA to ON on Windows
2022-08-26 00:21:17 +02:00
WerWolv f62edea450 build: Fix various clang build issues 2022-08-26 00:18:08 +02:00
WerWolv 940f1e30c5 patterns: Updated pattern language 2022-08-25 21:14:20 +02:00
WerWolv eb874ac810 patterns: Updated pattern language 2022-08-25 19:31:06 +02:00
WerWolv a79bf4c3ec patterns: Updated pattern language 2022-08-25 13:53:21 +02:00
WerWolv 90adacab9f fix: Build issues 2022-08-24 14:55:11 +02:00
WerWolv cc09014e6e patterns: Updated pattern language 2022-08-24 00:17:31 +02:00
WerWolv de98b40c93 fix: Build failing on macOS 2022-08-22 11:12:50 +02:00
WerWolv c0a5e2012f patterns: Updated pattern language 2022-08-21 23:34:02 +02:00
WerWolv 389e53a8a0 fix: Net request json parser throwing exceptions 2022-08-21 23:33:08 +02:00
WerWolv 7d85a8b6fc fix: Providers not being closed correctly
Fixes #692
2022-08-20 14:04:12 +02:00
WerWolv d004962e3a patterns: Updated pattern language 2022-08-20 13:58:58 +02:00
WerWolv 93be4c8ed1 fix: Resource embedding not working correctly on Linux and macOS 2022-08-20 13:38:56 +02:00
WerWolv 491ee6aa2f patterns: Updated pattern language 2022-08-18 23:51:50 +02:00
Jonathan Wright be82ee15b7
build: Lower curl version requirement (#684)
to allow building against RHEL 9's system curl
2022-08-18 01:13:38 +02:00
WerWolv 1ddd3ea2b9 fix: Custom pattern include paths not working correctly 2022-08-18 00:30:02 +02:00
WerWolv a56a8c1d6c fix: Some clang issues 2022-08-18 00:24:29 +02:00
WerWolv 55b877d5e0 fix: Region validity check not working correctly with non-zero base address
Fixes #683
2022-08-17 16:28:44 +02:00
WerWolv e779285be4 feat: Added basic ability to interrupt long running tasks 2022-08-17 16:15:36 +02:00
WerWolv aa01d58b33 ui: Increase window size when a bigger font is being used 2022-08-16 11:49:07 +02:00
WerWolv 0c0caf6942 fix: Restarting ImHex not working correctly 2022-08-16 11:48:37 +02:00
WerWolv 7e01ff451f patterns: Fixed return statements inside of loops acting like breaks
Fixes #675
2022-08-16 09:49:29 +02:00
WerWolv 0e2c1f1355 fix: Syntax errors 2022-08-16 00:39:56 +02:00
WerWolv 0ed7341f71 patterns: Updated pattern language 2022-08-16 00:35:24 +02:00
WerWolv 29e970fd81
fix: Out of bounds strlen read 2022-08-16 00:29:53 +02:00
WerWolv 43ab72dcb8
fix: Undefined behaviour in helper functions 2022-08-16 00:12:28 +02:00
WerWolv 9b2ee998de git: Enabled address, leak and UB sanitizers in unit tests CI 2022-08-15 23:33:04 +02:00
WerWolv e1c5cd1e86 patterns: Updated pattern language 2022-08-15 22:35:24 +02:00
WerWolv 0d0301f4f6 patterns: Updated pattern language 2022-08-15 22:22:05 +02:00
WerWolv 6b62a1963e fix: Some occurrences of undefined behaviour 2022-08-15 21:08:09 +02:00
WerWolv e938b75acd patterns: Fixed out of bounds read 2022-08-15 17:34:09 +02:00
WerWolv 03daf0c95b fix: Unavailable address displaying on intel hex provider 2022-08-14 22:38:01 +02:00
WerWolv 7d5b17d5c9 build: Added option to use NFD system library 2022-08-14 14:53:27 +02:00
WerWolv 78785ddc3c fix: More provider display issues 2022-08-14 14:45:18 +02:00
WerWolv 85f0e04d0e feat: Allow recents to also display other providers 2022-08-14 10:07:45 +02:00
WerWolv b580691871
feat: Added Intel Hex and Motorola SREC provider (#670)
* feat: Initial implementation of an Intel Hex provider

* fix: Reading of bytes from intel hex files

* lang: Added localization for new provider

* ui: Only show file name in intel hex provider name

* feat: Added Motorola SREC provider
2022-08-12 15:11:27 +02:00
WerWolv d55c59c796 feat: Added close button for welcome screen 2022-08-10 10:28:40 +02:00
WerWolv 5c13cf9dbf sys: Added support for providers with unreadable regions 2022-08-10 09:26:48 +02:00
WerWolv 19a0dc80db fix: Window title not always updating correctly 2022-08-10 00:11:16 +02:00
WerWolv a3132b7d13 build: Fixed system llvm linking errors 2022-08-09 14:59:58 +02:00
WerWolv 0192c791ce sys: Updated llvm demangler, now supports D-Lang and Rust symbols 2022-08-09 13:51:03 +02:00
WerWolv b1e93fda4b sys: Format settings file more prettily 2022-08-09 09:39:04 +02:00
WerWolv 8ebbe6fb4e patterns: Fixed crash when preprocessor throws an error 2022-08-09 08:58:31 +02:00
WerWolv e38b6ecd2c patterns: Fixed reading from strings passed to functions 2022-08-08 23:51:13 +02:00
WerWolv 966f3b8597
sys: Replace existing bad project system with a much better one (#663)
* sys: Initial effort to replace existing project files with a better system

* sys: Added back marking provider as dirty

* sys: Remove git commit information from project files

* sys: Format data processor save file nicely

* fix: Automatic pattern loading not working correctly

* ui: Added warning popup when closing a provider with modifications

Closes #604

* sys: Fixed build issues

* tests: Removed useless debug logs

* patterns: Updated pattern language

* sys: Added log message when crashing with a signal

* sys: Make sure abnormal termination handlers are being called more reliably
2022-08-08 21:23:52 +02:00
WerWolv 423e23e3c0 fix: Windows native theme detection not working correctly 2022-08-08 12:57:51 +02:00
WerWolv 2c740cab06 sys: Added select region command 2022-08-08 12:57:44 +02:00
WerWolv e16216b39e patterns: Fixed for-loop parsing 2022-08-07 23:27:25 +02:00
WerWolv f221d0f430 fix: Properly place config files in .../imhex/config on Linux 2022-08-07 23:27:15 +02:00
WerWolv 738a537723 patterns: Fixed display issue with static array entries 2022-08-07 22:03:32 +02:00
Bernard Teo d8d3a315a4
build: Update nfd-extended to get correct feature test detection (#661) 2022-08-07 15:32:56 +02:00
WerWolv f62ca307b0 ui: Streamline region selection in different views
Fixes #660
2022-08-07 12:20:40 +02:00
WerWolv 2200e11e85 fix: Pattern language runtime not being reset properly after checking MIME types 2022-08-07 00:11:54 +02:00