Merge pull request #113 from bluesuncorp/v5-development

update string comparisons to use utf8.RuneCountInString
pull/130/head v5.10.2
Dean Karn 10 years ago
commit ac33a23e6e
  1. 10
      baked_in.go

@ -592,7 +592,7 @@ func isGte(top interface{}, current interface{}, field interface{}, param string
case reflect.String: case reflect.String:
p := asInt(param) p := asInt(param)
return int64(len(st.String())) >= p return int64(utf8.RuneCountInString(st.String())) >= p
case reflect.Slice, reflect.Map, reflect.Array: case reflect.Slice, reflect.Map, reflect.Array:
p := asInt(param) p := asInt(param)
@ -637,7 +637,7 @@ func isGt(top interface{}, current interface{}, field interface{}, param string)
case reflect.String: case reflect.String:
p := asInt(param) p := asInt(param)
return int64(len(st.String())) > p return int64(utf8.RuneCountInString(st.String())) > p
case reflect.Slice, reflect.Map, reflect.Array: case reflect.Slice, reflect.Map, reflect.Array:
p := asInt(param) p := asInt(param)
@ -681,7 +681,7 @@ func hasLengthOf(top interface{}, current interface{}, field interface{}, param
case reflect.String: case reflect.String:
p := asInt(param) p := asInt(param)
return int64(len(st.String())) == p return int64(utf8.RuneCountInString(st.String())) == p
case reflect.Slice, reflect.Map, reflect.Array: case reflect.Slice, reflect.Map, reflect.Array:
p := asInt(param) p := asInt(param)
@ -875,7 +875,7 @@ func isLte(top interface{}, current interface{}, field interface{}, param string
case reflect.String: case reflect.String:
p := asInt(param) p := asInt(param)
return int64(len(st.String())) <= p return int64(utf8.RuneCountInString(st.String())) <= p
case reflect.Slice, reflect.Map, reflect.Array: case reflect.Slice, reflect.Map, reflect.Array:
p := asInt(param) p := asInt(param)
@ -920,7 +920,7 @@ func isLt(top interface{}, current interface{}, field interface{}, param string)
case reflect.String: case reflect.String:
p := asInt(param) p := asInt(param)
return int64(len(st.String())) < p return int64(utf8.RuneCountInString(st.String())) < p
case reflect.Slice, reflect.Map, reflect.Array: case reflect.Slice, reflect.Map, reflect.Array:
p := asInt(param) p := asInt(param)

Loading…
Cancel
Save