From 54d4eb504db356d16f68dc0b8de618f430aa8b0d Mon Sep 17 00:00:00 2001
From: Jean Valverde <moimog33@gmail.com>
Date: Tue, 4 Feb 2025 11:05:24 +0000
Subject: [PATCH] Issue #3502099 by huangweiqiu, mogtofu33: conflict with gin
 theme

---
 modules/ui_icons_menu/ui_icons_menu.module | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/modules/ui_icons_menu/ui_icons_menu.module b/modules/ui_icons_menu/ui_icons_menu.module
index e1359c4..d1c69d7 100644
--- a/modules/ui_icons_menu/ui_icons_menu.module
+++ b/modules/ui_icons_menu/ui_icons_menu.module
@@ -9,6 +9,7 @@ use Drupal\Component\Render\FormattableMarkup;
 use Drupal\Core\Entity\EntityTypeInterface;
 use Drupal\Core\Routing\RouteMatchInterface;
 use Drupal\Core\Theme\Icon\IconDefinition;
+use Drupal\Core\Url;
 
 /**
  * Implements hook_help().
@@ -89,6 +90,16 @@ function ui_icons_menu__preprocess_menu(array &$items): void {
  *   The menu item.
  */
 function ui_icons_menu__preprocess_menu_item(array &$item): void {
+  // Being extra defensive on the menu as other themes/modules can alter in
+  // unknown ways.
+  if (!isset($item['url'])) {
+    return;
+  }
+
+  if (!$item['url'] instanceof Url) {
+    return;
+  }
+
   /** @var \Drupal\Core\Url $url */
   $url = &$item['url'];
 
-- 
GitLab