diff --git a/sway/config.c b/sway/config.c
index f63835bf..2c051146 100644
--- a/sway/config.c
+++ b/sway/config.c
@@ -474,7 +474,6 @@ static bool load_include_config(const char *path, const char *parent_dir,
 		list_del(config->config_chain, index);
 		return false;
 	}
-	free(real_path);
 
 	// restore current_config_path
 	config->current_config_path = parent_config;
diff --git a/sway/tree/view.c b/sway/tree/view.c
index d9938130..70ab9364 100644
--- a/sway/tree/view.c
+++ b/sway/tree/view.c
@@ -1086,6 +1086,9 @@ bool view_is_visible(struct sway_view *view) {
 }
 
 void view_set_urgent(struct sway_view *view, bool enable) {
+	if (view_is_urgent(view) == enable) {
+		return;
+	}
 	if (enable) {
 		struct sway_seat *seat = input_manager_current_seat(input_manager);
 		if (seat_get_focus(seat) == view->swayc) {