Commit Graph

898 Commits

Author SHA1 Message Date
WerWolv bca73ef01e fix: Loading of custom fonts not working anymore 2023-07-24 17:25:36 +02:00
WerWolv 8b3cd2d76d impr: Properly print asserts 2023-07-23 23:39:00 +02:00
WerWolv b8d5e1e9c5 feat: Added built-in logging console 2023-07-23 23:37:47 +02:00
WerWolv fdd2e1fcde patterns: Added [[hex::spec_name]] 2023-07-23 09:14:00 +02:00
WerWolv 4979c65566 fix: Missing <array> include in stacktrace helper 2023-07-22 22:47:35 +02:00
WerWolv f5fda76414 impr: Cleanup main 2023-07-22 21:30:22 +02:00
WerWolv 4b0d980d54 impr: Don't use fmt::println if it's not supported 2023-07-22 20:22:25 +02:00
WerWolv 8aec382440 fix: Loading of plugins and localizations after restart 2023-07-22 18:38:14 +02:00
WerWolv f6bbfd7283 impr: Properly print new line characters in cli 2023-07-21 15:17:21 +02:00
WerWolv 0033d9f4eb patterns: Updated pattern language 2023-07-21 14:20:57 +02:00
WerWolv e5a793e8de fix: Subcommands not working at all on Linux 2023-07-21 14:12:08 +02:00
WerWolv 3149183450 patterns: Updated pattern language 2023-07-21 11:53:37 +02:00
WerWolv 7c321a79c3 impr: Print message if no stacktrace can be collected 2023-07-20 21:41:22 +02:00
WerWolv 7c203e0635 build: Updated libwolv
Fixes #1201
2023-07-20 21:38:37 +02:00
WerWolv 6d7f217e2a patterns: Updated pattern language 2023-07-17 11:20:17 +02:00
WerWolv a83ca3c228 feat: Added --pl and --magic command 2023-07-17 10:43:29 +02:00
WerWolv a83f87fbfa build: Updated nativefiledialogs-extended to latest version 2023-07-17 08:08:29 +02:00
WerWolv e9450b490f feat: Added --plugin, --calc, --hash, --encode and --decode subcommands 2023-07-16 23:46:41 +02:00
WerWolv 0a6815da8f fix: Always use default CA Cert 2023-07-16 19:56:07 +02:00
Nik 5171bea0bf feat: Added cross-platform .NET scripts support (#1185)
This PR intends to add support for .NET scripts that can extend ImHex's
functionality in a portable and cross-platform way.

---------

Co-authored-by: Justus Garbe <55301990+Nowilltolife@users.noreply.github.com>
2023-07-15 14:29:14 +02:00
WerWolv 0f54a3a1f3 build: Added option to disable strict warnings 2023-07-15 10:02:19 +02:00
Nik aae3004f1f build: Various build improvements (#1193) 2023-07-15 00:10:01 +02:00
WerWolv 04b56c3d4d patterns: Updated pattern language 2023-07-14 21:39:49 +02:00
iTrooz 1ed658bcdc feat: Added command line interface support (#1172)
System design has been discussed on discord

Should fix #948

---------

Co-authored-by: WerWolv <werwolv98@gmail.com>
2023-07-13 14:08:23 +02:00
WerWolv cdc4f2db89 patterns: Updated pattern language 2023-07-11 09:21:13 +02:00
WerWolv 10756c65a6 patterns: Updated pattern language 2023-07-11 00:04:54 +02:00
WerWolv 8524e93445 impr: Display encoding types in header of hex editor
Closes #1186
2023-07-11 00:04:26 +02:00
WerWolv ce9ce42c1c impr: Only reload localization when necessary 2023-07-09 20:24:56 +02:00
WerWolv 6343cb092b build: Fixed include issues 2023-07-09 12:53:31 +02:00
WerWolv 7cb26b1499 patterns: Updated pattern language 2023-07-09 12:40:51 +02:00
WerWolv 5d047a335d patterns: Updated pattern language 2023-07-09 12:30:48 +02:00
WerWolv 14bb98a519 build: Updated libwolv 2023-07-07 09:02:31 +02:00
WerWolv 33d3bea472 fix: Flickering cursor issues 2023-07-06 10:26:12 +02:00
WerWolv c9c6f3aadb fix: New visualizers behaving weirdly with large font sizes 2023-07-06 10:08:47 +02:00
WerWolv c9dbcbb3d3 build: Updated dependencies 2023-07-06 08:26:36 +02:00
WerWolv 924c816dbd fix: Chunk size setting in information view being reset the first time 2023-07-06 00:00:56 +02:00
WerWolv 695e11477e feat: Added single stepping feature to pattern debugger 2023-07-05 21:32:11 +02:00
iTrooz ac2a609d0a impr: Use execvp() instead of system() on Linux (#1170)
This PR it just a hack to fix #1160 , it doesn't solve the underlying
problem.

It fixes the problem because by using execvp() directly, it avoids the
call to `sh` done with `system()`, which has a bug on Ubuntu 22.04 which
makes it i,compatibles with the glibc inside the AppImage.
It doesn't fix the underlying problem because the programs we call
themselves still link to the AppImage's libraries instead of the system
ones.
2023-07-05 20:50:46 +02:00
iTrooz e3ae169833 impr: Separate the behaviour of being savable and being dumpable for provider (#1183)
### Problem description

Currently, the providers use the method `isSavable()` to determine both
if they can use "Save" or "Save as".
This behaviour is problematic because some providers may need to be
saveable but not saveable as: for example the view provider. The
original provider may not allow to be saved.

### Implementation description
I separate these two behaviour by creating another function:
`isDumpable()`, that return true by default but can be overridden by the
provider to return false, if the provider should not be dumped in any
way.

### Additional things

While I was at it, I also marked "export" operations as needing the
"dumpable" flag. That way, we can't accidentally export the whole
address space of a process as base64.

I also added documentation for these some functions in Provider
2023-07-05 20:49:57 +02:00
WerWolv 25d6380963 build: Upgraded capstone to full V5 release 2023-07-05 20:45:46 +02:00
WerWolv 86c4c8fa96 feat: Added new pattern inline visualizers 2023-07-04 22:18:06 +02:00
WerWolv b265d8e54a build: Restructure romfs assets 2023-07-04 08:42:33 +02:00
WerWolv ceed8c7420 pattern: Properly display Start/End/Size column again for zero sized types 2023-07-03 21:24:15 +02:00
WerWolv d297b2d1cc impr: Hide sections with an empty name 2023-07-03 12:04:20 +02:00
WerWolv a0c89858ed patterns: Don't re-evaluate format functions during highlighting 2023-07-01 14:06:15 +02:00
iTrooz c6c3ca4d26 fix: Reset terminate handler directly when being called + some other crashes to crash handling (#1174)
This PR fixes some things about crash handling:
- when the terminate handler is called, immediately set it back to the
original one, so can't make a recursion if the crash-handling code fails
- Only save projects if the crash occured after Imhex finished startup
- do not update the project location when saving the crash backup file:
this will remove problems when `EventAbnormalTermination` is called
before `crashCallback()`

I also added a bit more documentation
2023-07-01 12:32:28 +02:00
WerWolv f9909dab98 fix: Properly clear all global registries 2023-06-30 13:40:16 +02:00
WerWolv bc98556897 impr: Automatically scroll pattern console to the bottom when new lines are added 2023-06-30 00:11:48 +02:00
WerWolv 4f08ba3590 patterns: Fixed race condition when evaluating patterns 2023-06-30 00:11:26 +02:00
WerWolv 78cb0a2592 patterns: Updated pattern language 2023-06-28 18:15:29 +02:00