2009-03-23 Zoltan Varga <vargaz@gmail.com>
authorZoltan Varga <vargaz@gmail.com>
Mon, 23 Mar 2009 11:20:08 +0000 (11:20 -0000)
committerZoltan Varga <vargaz@gmail.com>
Mon, 23 Mar 2009 11:20:08 +0000 (11:20 -0000)
* String.cs (LastIndexOf): Handle empty strings correctly. Fixes #486234.

svn path=/trunk/mcs/; revision=130037

mcs/class/corlib/System/ChangeLog
mcs/class/corlib/System/String.cs

index b92c201baa85359aa860a7cc5cb3fbd59d1a9540..d3f692da5a60f2f225a48d7fd1d7b94e0734450b 100644 (file)
@@ -1,3 +1,7 @@
+2009-03-23  Zoltan Varga  <vargaz@gmail.com>
+
+       * String.cs (LastIndexOf): Handle empty strings correctly. Fixes #486234.
+
 2009-03-18  Zoltan Varga  <vargaz@gmail.com>
 
        * Type.cs (GetGenericTypeDefinition): Make this throw an exception to be
index ec10e9e5c54abdb649b5e90cf9ec7d531b5cf798..7533f40da254d2e70bd6fbde1847b28fbe89d84f 100644 (file)
@@ -980,7 +980,10 @@ namespace System
 
                public int LastIndexOf (string value, StringComparison comparisonType)
                {
-                       return LastIndexOf (value, this.Length - 1, this.Length, comparisonType);
+                       if (this.Length == 0)
+                               return value == String.Empty ? 0 : -1;
+                       else
+                               return LastIndexOf (value, this.Length - 1, this.Length, comparisonType);
                }
 
                public int LastIndexOf (string value, int startIndex, StringComparison comparisonType)