1
0
mirror of synced 2025-02-02 04:17:56 +01:00

fix: --pl subcommand not working correctly anymore

This commit is contained in:
WerWolv 2025-01-28 19:47:20 +01:00
parent d45dd45720
commit 53fc018ada
3 changed files with 8 additions and 2 deletions

View File

@ -15,11 +15,17 @@ struct ImGuiContext;
namespace hex {
struct SubCommand {
enum class Type : u8 {
Option,
SubCommand
};
std::string commandLong;
std::string commandShort;
std::string commandDescription;
std::function<void(const std::vector<std::string>&)> callback;
Type type = Type::Option;
};
struct Feature {

View File

@ -53,7 +53,7 @@ namespace hex::subcommands {
while (argsIter != args.end()) {
const std::string &arg = *argsIter;
if (!currentSubCommandArgs.empty() && arg.starts_with("--")) {
if (!currentSubCommandArgs.empty() && arg.starts_with("--") && !(currentSubCommand.has_value() && currentSubCommand->type == SubCommand::Type::SubCommand)) {
// Save command to run
if (currentSubCommand) {
subCommands.emplace_back(*currentSubCommand, currentSubCommandArgs);

View File

@ -76,7 +76,7 @@ IMHEX_PLUGIN_SUBCOMMANDS() {
{ "encode", "", "Encode a string", hex::plugin::builtin::handleEncodeCommand },
{ "decode", "", "Decode a string", hex::plugin::builtin::handleDecodeCommand },
{ "magic", "", "Identify file types", hex::plugin::builtin::handleMagicCommand },
{ "pl", "", "Interact with the pattern language", hex::plugin::builtin::handlePatternLanguageCommand },
{ "pl", "", "Interact with the pattern language", hex::plugin::builtin::handlePatternLanguageCommand, SubCommand::Type::SubCommand },
{ "hexdump", "", "Generate a hex dump of the provided file", hex::plugin::builtin::handleHexdumpCommand },
{ "demangle", "", "Demangle a mangled symbol", hex::plugin::builtin::handleDemangleCommand },
{ "reset-settings", "", "Resets all settings back to default", hex::plugin::builtin::handleSettingsResetCommand },