User Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:54.0) Gecko/20100101 Firefox/54.0 Build ID: 20170628075643 Firefox for Android Steps to reproduce: Open console and run below statements : '\ufb05'.toUpperCase()=="ST" '\ufb06'.toUpperCase()=="ST" Actual results: It should return "true" for both statements but instead it returned "false" because the unicode characters '\ufb05' and '\ufb06' are not turned to character "ST" by toUpperCase() function. Expected results: It should have returned "true" because uppercase mapping of '\ufb05' and '\ufb05' is "ST". Testing the same on Chrome and Safari returned correct value "ST". Ref : http://www.fileformat.info/info/unicode/char/fb06/index.htm Ref : http://www.fileformat.info/info/unicode/char/fb05/index.htm
Doesn't look like a security bug to me. Also, works for me on 55 beta. André, is this an ICU thing? Or is this just a JS engine thing?
Seems like landing of ICU59 (bug 1353650) likely fixed it? Reporter - please test against today's nightly. WFM. Reopen if needed.
(In reply to Zibi Braniecki [:gandalf][:zibi] from comment #2) > Seems like landing of ICU59 (bug 1353650) likely fixed it? > > Reporter - please test against today's nightly. > > WFM. Reopen if needed. I suspect this is specific to Android release-channel builds (where AFAIK we're not yet using ICU; at least, bug 1344625 is still open). I don't think the ICU 59 update will have affected this (it works in my pre-ICU-59 desktop Nightly, FWIW); rather, my guess is that this works when using ICU-based casing support, and fails with whatever fallback the JS engine uses when ENABLE_INTL_API is not set.
Oh, that makes sense! Adding bug 1344625 as a dependency then. Hope to have it landed soon! :)
Special-casing support for toLowerCase/toUpperCase was added in bug 1318403 (mozilla 55).
Except for U+03A3 (GREEK CAPITAL LETTER SIGMA), Firefox Android without ICU will support all other (locale-independent) special-casing case conversions.