From 66e993fa5fa9533c9cfe754058c386a9e7d66d5b Mon Sep 17 00:00:00 2001 From: ousttrue Date: Mon, 24 Oct 2022 14:48:00 +0900 Subject: [PATCH] fix EditorUtility.SaveFilePanel --- .../Editor/UniGLTF/ExportDialog/SaveFileDialog.cs | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/Assets/UniGLTF/Editor/UniGLTF/ExportDialog/SaveFileDialog.cs b/Assets/UniGLTF/Editor/UniGLTF/ExportDialog/SaveFileDialog.cs index 793a7868e..b820a39f2 100644 --- a/Assets/UniGLTF/Editor/UniGLTF/ExportDialog/SaveFileDialog.cs +++ b/Assets/UniGLTF/Editor/UniGLTF/ExportDialog/SaveFileDialog.cs @@ -7,6 +7,18 @@ namespace UniGLTF public static class SaveFileDialog { static string m_lastExportDir; + + static string extensionString(string[] extensions) + { +#if UNITY_EDITOR_OSX + // in OSX multi extension cause exception. + // https://github.com/vrm-c/UniVRM/issues/1837 + return extensions.Length > 0 ? extensions[0] : ""; +#else + return string.Join(",", extensions); +#endif + } + public static string GetPath(string title, string name, params string[] extensions) { string directory = m_lastExportDir; @@ -15,7 +27,7 @@ namespace UniGLTF directory = Directory.GetParent(Application.dataPath).ToString(); } - var path = EditorUtility.SaveFilePanel(title, directory, name, string.Join(",", extensions)); + var path = EditorUtility.SaveFilePanel(title, directory, name, extensionString(extensions)); if (!string.IsNullOrEmpty(path)) { m_lastExportDir = Path.GetDirectoryName(path).Replace("\\", "/");