Interesting differences between how Firefox/Chromium handle split surrogates, non-characters, and null in textarea.pic.twitter.com/xLOZ0mMiH3
This is the legacy version of twitter.com. We will be shutting it down on June 1, 2020. Please switch to a supported browser, or disable the extension which masks your browser. You can see a list of supported browsers in our Help Center.
I work on @ChromeDevTools & @v8js at Google and on ECMAScript through TC39.
JavaScript, HTML, CSS, HTTP, performance, security, Bash, Unicode, i18n, macOS.
You can add location information to your Tweets, such as your city or precise location, from the web and via third-party applications. You always have the option to delete your Tweet location history. Learn more
Add this Tweet to your website by copying the code below. Learn more
Add this video to your website by copying the code below. Learn more
By embedding Twitter content in your website or app, you are agreeing to the Twitter Developer Agreement and Developer Policy.
| Country | Code | For customers of |
|---|---|---|
| United States | 40404 | (any) |
| Canada | 21212 | (any) |
| United Kingdom | 86444 | Vodafone, Orange, 3, O2 |
| Brazil | 40404 | Nextel, TIM |
| Haiti | 40404 | Digicel, Voila |
| Ireland | 51210 | Vodafone, O2 |
| India | 53000 | Bharti Airtel, Videocon, Reliance |
| Indonesia | 89887 | AXIS, 3, Telkomsel, Indosat, XL Axiata |
| Italy | 4880804 | Wind |
| 3424486444 | Vodafone | |
| » See SMS short codes for other countries | ||
This timeline is where you’ll spend most of your time, getting instant updates about what matters to you.
Hover over the profile pic and click the Following button to unfollow any account.
When you see a Tweet you love, tap the heart — it lets the person who wrote it know you shared the love.
The fastest way to share someone else’s Tweet with your followers is with a Retweet. Tap the icon to send it instantly.
Add your thoughts about any Tweet with a Reply. Find a topic you’re passionate about, and jump right in.
Get instant insight into what people are talking about now.
Follow more accounts to get instant updates about topics you care about.
See the latest conversations about any topic instantly.
Catch up instantly on the best stories happening as they unfold.
Interesting differences between how Firefox/Chromium handle split surrogates, non-characters, and null in textarea.pic.twitter.com/xLOZ0mMiH3
Works in Firefox, not Chromium: https://mothereff.in/regexpu#input=%2F%EF%BF%BF%2Fu … Works in both: https://www.google.com.au/search?q=%EF%BF%BF&ie=utf-8 … needs ie=utf-8 though, or both get "ï¿¿"
You mean for the browsers? I don't think either behavior is buggy really. Just different for such weird edge cases.
Running this in the DevTools (Chrome/Opera) console breaks it: decodeURIComponent(str) …where `str` is a raw U+FFFF symbol
Hmm. Weird. Works in FF/Chrome/Node fine: decodeURIComponent('%EF%BF%BF') Also works with document.location.hash and #%EF%BF%BF
Ahh, okay. It can't be escaped at all. Not even \u. Looks like a legitimate deviation. So who is right?pic.twitter.com/p7DDn5diKC
It works in V8, so I guess this is some kind of DevTools UI bug.
Hmm. I can't discern why https://mothereff.in/regexpu#input=%EF%BF%BF … behaves differently on FF vs Chrome. It seems to pass URLSearchParams just fine.
Do you think any of the other behavior differences go against specs? Like FF truncating clipboard at \0 vs Chrome stripping them?
Not sure what the specs say about those cases specifically, but definitely worth filing bugs for. Please do!
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.