Unicode è lo standard di rendering del testo su quasi tutti i dispositivi elettronici in questi giorni. E’ quello che permette a tutto, dal PC Windows all’iPad al telefono Android alla TV webOS alla PS4, di concordare su come i caratteri dovrebbero essere mostrati sullo schermo, compreso se alcuni o tutti dovrebbero essere da sinistra a destra, come l’inglese, o da destra a sinistra, come l’arabo. E, per tutti i suoi benefici, rimane orribilmente rotto. Più precisamente, l’enorme quantità di possibilità che permette significa che nessuna implementazione tiene conto adeguatamente di tutte e, così, ogni tanto viene scoperta una combinazione che manda in crash l’app o il sistema operativo che cerca di renderla.
E, in questo momento, la combinazione di crash de jour è “Black Dot”.
Benjamin Mayo, scrivendo per 9to5Mac:
Il segreto è che le stringhe contengono migliaia di caratteri Unicode invisibili nascosti, che sforna cicli di CPU mentre il sistema cerca di elaborarli. Se questo testo appositamente creato viene inviato attraverso Messaggi, si tradurrà in crash ripetuti quando il destinatario cerca di leggerlo.
Sembra che il bug abbia causato crash in WhatsApp per Android ed è stato poi trovato per bloccare anche iMessage su iPhone e iPad – sia nella versione di rilascio corrente, iOS 11.3, che nell’attuale beta, iOS 11.4. (Mac, a causa delle sue risorse, può essere più resistente, ma è probabile che anche Watch sia interessato e, teoricamente, la TV.)
Come riparare il tuo iPhone o iPad se ti viene inviato il crash “Punto nero”
Mentre nuove stringhe Unicode che causano crash vengono scoperte regolarmente, la soluzione rimane tipicamente la stessa: è necessario eliminare la conversazione con la stringa “Punto nero” in essa.