It previously returned the string itself when it should return an empty string according to the docs/examples and the C++ counterpart String::get_extension().
@@ -430,8 +430,8 @@ namespace Godot
{
int pos = instance.RFind(".");
- if (pos < 0)
- return instance;
+ if (pos < 0 || pos < Math.Max(instance.RFind("/"), instance.RFind("\\")))
+ return string.Empty;
return instance.Substring(pos + 1);
}