|
@@ -69,7 +69,7 @@ class String {
|
|
startIndex += 1;
|
|
startIndex += 1;
|
|
if (str == "") {
|
|
if (str == "") {
|
|
// TODO: this makes lua CI hang forever
|
|
// TODO: this makes lua CI hang forever
|
|
- // return indexOfEmpty(this, startIndex - 1);
|
|
|
|
|
|
+ return indexOfEmpty(this, startIndex - 1);
|
|
}
|
|
}
|
|
var r = BaseString.find(this, str, startIndex, true).begin;
|
|
var r = BaseString.find(this, str, startIndex, true).begin;
|
|
if (r != null && r > 0)
|
|
if (r != null && r > 0)
|
|
@@ -88,13 +88,12 @@ class String {
|
|
}
|
|
}
|
|
|
|
|
|
public inline function lastIndexOf(str:String, ?startIndex:Int):Int {
|
|
public inline function lastIndexOf(str:String, ?startIndex:Int):Int {
|
|
- var i = 0;
|
|
|
|
var ret = -1;
|
|
var ret = -1;
|
|
if (startIndex == null)
|
|
if (startIndex == null)
|
|
startIndex = length;
|
|
startIndex = length;
|
|
while (true) {
|
|
while (true) {
|
|
var p = indexOf(str, ret + 1);
|
|
var p = indexOf(str, ret + 1);
|
|
- if (p == -1 || p > startIndex)
|
|
|
|
|
|
+ if (p == -1 || p > startIndex || p == ret)
|
|
break;
|
|
break;
|
|
ret = p;
|
|
ret = p;
|
|
}
|
|
}
|