diff mbox

discover/device-handler: Disable safe mode warning on reinit

Message ID 20170823013911.15052-1-sam@mendozajonas.com
State Accepted
Headers show

Commit Message

Sam Mendoza-Jonas Aug. 23, 2017, 1:39 a.m. UTC
If a user pressed "Rescan Devices" in safe mode the reinit would
complete successfully, but the big warning that safe mode is active
would remain. On reinit clear the safe_mode flag properly.

This has no functional change aside from clearing the UI warning - the
IPMI override remains active until cleared or a successful boot occurs.

Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com>
---
 discover/device-handler.c | 10 ++++++++++
 1 file changed, 10 insertions(+)
diff mbox

Patch

diff --git a/discover/device-handler.c b/discover/device-handler.c
index ce3fc46..4e1b3ca 100644
--- a/discover/device-handler.c
+++ b/discover/device-handler.c
@@ -18,6 +18,7 @@ 
 #include <process/process.h>
 #include <url/url.h>
 #include <i18n/i18n.h>
+#include <pb-config/pb-config.h>
 
 #include <sys/sysmacros.h>
 #include <sys/types.h>
@@ -393,6 +394,7 @@  void device_handler_reinit(struct device_handler *handler)
 {
 	struct discover_boot_option *opt, *tmp;
 	struct ramdisk_device *ramdisk;
+	struct config *config;
 	unsigned int i;
 
 	device_handler_cancel_default(handler);
@@ -440,6 +442,14 @@  void device_handler_reinit(struct device_handler *handler)
 
 	set_env_variables(config_get());
 
+	/* If the safe mode warning was active disable it now */
+	if (config_get()->safe_mode) {
+		config = config_copy(handler, config_get());
+		config->safe_mode = false;
+		config_set(config);
+		discover_server_notify_config(handler->server, config);
+	}
+
 	device_handler_reinit_sources(handler);
 }