summaryrefslogtreecommitdiffstats
path: root/modules/mono
diff options
context:
space:
mode:
Diffstat (limited to 'modules/mono')
-rw-r--r--modules/mono/editor/GodotTools/GodotTools/Build/BuildProblemsView.cs16
-rw-r--r--modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/CSharpInstanceBridge.cs4
-rw-r--r--modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.cs17
-rw-r--r--modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.types.cs2
4 files changed, 22 insertions, 17 deletions
diff --git a/modules/mono/editor/GodotTools/GodotTools/Build/BuildProblemsView.cs b/modules/mono/editor/GodotTools/GodotTools/Build/BuildProblemsView.cs
index 93b5a6c7f8..d62eb3ce9e 100644
--- a/modules/mono/editor/GodotTools/GodotTools/Build/BuildProblemsView.cs
+++ b/modules/mono/editor/GodotTools/GodotTools/Build/BuildProblemsView.cs
@@ -308,14 +308,14 @@ namespace GodotTools.Build
return false;
string searchText = _searchBox.Text;
- if (!string.IsNullOrEmpty(searchText) &&
- (!diagnostic.Message.Contains(searchText, StringComparison.OrdinalIgnoreCase) ||
- !(diagnostic.File?.Contains(searchText, StringComparison.OrdinalIgnoreCase) ?? false)))
- {
- return false;
- }
-
- return true;
+ if (string.IsNullOrEmpty(searchText))
+ return true;
+ if (diagnostic.Message.Contains(searchText, StringComparison.OrdinalIgnoreCase))
+ return true;
+ if (diagnostic.File?.Contains(searchText, StringComparison.OrdinalIgnoreCase) ?? false)
+ return true;
+
+ return false;
}
private Color? GetProblemItemColor(BuildDiagnostic diagnostic)
diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/CSharpInstanceBridge.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/CSharpInstanceBridge.cs
index 16be494d99..7b6b35b68f 100644
--- a/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/CSharpInstanceBridge.cs
+++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/CSharpInstanceBridge.cs
@@ -94,7 +94,7 @@ namespace Godot.Bridge
// Signals
if (godotObject.HasGodotClassSignal(CustomUnsafe.AsRef(name)))
{
- godot_signal signal = new godot_signal(*name, godotObject.GetInstanceId());
+ godot_signal signal = new godot_signal(NativeFuncs.godotsharp_string_name_new_copy(*name), godotObject.GetInstanceId());
*outRet = VariantUtils.CreateFromSignalTakingOwnershipOfDisposableValue(signal);
return godot_bool.True;
}
@@ -102,7 +102,7 @@ namespace Godot.Bridge
// Methods
if (godotObject.HasGodotClassMethod(CustomUnsafe.AsRef(name)))
{
- godot_callable method = new godot_callable(*name, godotObject.GetInstanceId());
+ godot_callable method = new godot_callable(NativeFuncs.godotsharp_string_name_new_copy(*name), godotObject.GetInstanceId());
*outRet = VariantUtils.CreateFromCallableTakingOwnershipOfDisposableValue(method);
return godot_bool.True;
}
diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.cs
index 968afa664b..e344dc84c7 100644
--- a/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.cs
+++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.cs
@@ -310,13 +310,6 @@ namespace Godot.Bridge
_pathTypeBiMap.Add(scriptPathAttr.Path, type);
- // This method may be called before initialization.
- if (NativeFuncs.godotsharp_dotnet_module_is_initialized().ToBool() && Engine.IsEditorHint())
- {
- using godot_string scriptPath = Marshaling.ConvertStringToNative(scriptPathAttr.Path);
- NativeFuncs.godotsharp_internal_editor_file_system_update_file(scriptPath);
- }
-
if (AlcReloadCfg.IsAlcReloadingEnabled)
{
AddTypeForAlcReloading(type);
@@ -366,6 +359,16 @@ namespace Godot.Bridge
}
}
}
+
+ // This method may be called before initialization.
+ if (NativeFuncs.godotsharp_dotnet_module_is_initialized().ToBool() && Engine.IsEditorHint())
+ {
+ foreach (var scriptPath in _pathTypeBiMap.Paths)
+ {
+ using godot_string nativeScriptPath = Marshaling.ConvertStringToNative(scriptPath);
+ NativeFuncs.godotsharp_internal_editor_file_system_update_file(nativeScriptPath);
+ }
+ }
}
[UnmanagedCallersOnly]
diff --git a/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.types.cs b/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.types.cs
index a58f6849ad..7fa3498b92 100644
--- a/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.types.cs
+++ b/modules/mono/glue/GodotSharp/GodotSharp/Core/Bridge/ScriptManagerBridge.types.cs
@@ -61,6 +61,8 @@ public static partial class ScriptManagerBridge
private System.Collections.Generic.Dictionary<string, Type> _pathTypeMap = new();
private System.Collections.Generic.Dictionary<Type, string> _typePathMap = new();
+ public System.Collections.Generic.IEnumerable<string> Paths => _pathTypeMap.Keys;
+
public void Add(string scriptPath, Type scriptType)
{
_pathTypeMap.Add(scriptPath, scriptType);