Преглед на файлове

[unity] Fixed IndexOutOfRangeException on Unity 2022.2 upon first project import or upgrade. Closes #2241.

Harald Csaszar преди 2 години
родител
ревизия
bf5d445fa7
променени са 1 файла, в които са добавени 11 реда и са изтрити 6 реда
  1. 11 6
      spine-unity/Assets/Spine/Editor/spine-unity/Editor/Utility/SpineEditorUtilities.cs

+ 11 - 6
spine-unity/Assets/Spine/Editor/spine-unity/Editor/Utility/SpineEditorUtilities.cs

@@ -173,17 +173,22 @@ namespace Spine.Unity.Editor {
 			if (EditorApplication.isPlayingOrWillChangePlaymode) return;
 
 			string[] folders = { "Assets", "Packages" };
-			string[] assets = AssetDatabase.FindAssets("t:script SpineEditorUtilities", folders);
-			string assetPath = AssetDatabase.GUIDToAssetPath(assets[0]);
-			editorPath = Path.GetDirectoryName(assetPath).Replace('\\', '/');
-
+			string[] assets;
+			string assetPath;
 			assets = AssetDatabase.FindAssets("t:texture icon-subMeshRenderer", folders);
 			if (assets.Length > 0) {
 				assetPath = AssetDatabase.GUIDToAssetPath(assets[0]);
 				editorGUIPath = Path.GetDirectoryName(assetPath).Replace('\\', '/');
-			} else {
-				editorGUIPath = editorPath.Replace("/Utility", "/GUI");
 			}
+			assets = AssetDatabase.FindAssets("t:script SpineEditorUtilities", folders);
+			if (assets.Length > 0) {
+				assetPath = AssetDatabase.GUIDToAssetPath(assets[0]);
+				editorPath = Path.GetDirectoryName(assetPath).Replace('\\', '/');
+				if (string.IsNullOrEmpty(editorGUIPath))
+					editorGUIPath = editorPath.Replace("/Utility", "/GUI");
+			}
+			if (string.IsNullOrEmpty(editorGUIPath))
+				return;
 			Icons.Initialize();
 
 			// Drag and Drop