fix: Make sure providers returned by createProvider don't get deleted unexpectedly

This commit is contained in:
WerWolv
2025-12-16 23:36:05 +01:00
parent e696d384c2
commit baa3329e7f
13 changed files with 33 additions and 34 deletions

View File

@@ -378,9 +378,9 @@ namespace hex::plugin::builtin {
ContentRegistry::UserInterface::addMenuItem({ "hex.builtin.menu.file", "hex.builtin.menu.file.create_file" }, ICON_VS_FILE, 1050, CTRLCMD + Keys::N + AllowWhileTyping + ShowOnWelcomeScreen, [] {
auto newProvider = hex::ImHexApi::Provider::createProvider("hex.builtin.provider.mem_file", true);
if (newProvider != nullptr && !newProvider->open())
hex::ImHexApi::Provider::remove(newProvider);
hex::ImHexApi::Provider::remove(newProvider.get());
else
EventProviderOpened::post(newProvider);
EventProviderOpened::post(newProvider.get());
}, noRunningTasks, ContentRegistry::Views::getViewByName("hex.builtin.view.hex_editor.name"));
/* Open File */