diff --git a/src/Umbraco.Core/Persistence/Repositories/SimilarNodeName.cs b/src/Umbraco.Core/Persistence/Repositories/SimilarNodeName.cs index 371f73b27f..df31ae894a 100644 --- a/src/Umbraco.Core/Persistence/Repositories/SimilarNodeName.cs +++ b/src/Umbraco.Core/Persistence/Repositories/SimilarNodeName.cs @@ -20,6 +20,12 @@ namespace Umbraco.Core.Persistence.Repositories var name = Name; + // cater for instances where node has no name. + if(name.Length == 0) + { + return _numPos; + } + if (name[name.Length - 1] != ')') return _numPos = -1; diff --git a/src/Umbraco.Tests/Persistence/Repositories/SimilarNodeNameTests.cs b/src/Umbraco.Tests/Persistence/Repositories/SimilarNodeNameTests.cs index 72f3e39874..275398091b 100644 --- a/src/Umbraco.Tests/Persistence/Repositories/SimilarNodeNameTests.cs +++ b/src/Umbraco.Tests/Persistence/Repositories/SimilarNodeNameTests.cs @@ -24,7 +24,8 @@ namespace Umbraco.Tests.Persistence.Repositories [TestCase("Alpha (10)", "Alpha (2)", +1)] // this is the real stuff [TestCase("Kilo", "Golf (2)", +1)] [TestCase("Kilo (1)", "Golf (2)", +1)] - public void ComparerTest(string name1, string name2, int expected) + [TestCase("", "", 0)] + public void ComparerTest(string name1, string name2, int expected) { var comparer = new SimilarNodeName.Comparer();