Dlaczego File: /// powoduje awarię mojej aplikacji?

10

Ilekroć piszę File:///w pasku adresu URL w przeglądarce Chrome, w edytorze tekstu itp., Powoduje to awarię aplikacji. Dowiedziałem się o tym po przeczytaniu tego postu na blogu .

Jak mogę uniknąć tej awarii i uniemożliwić aplikacjom, które otrzymują ten ciąg, niezależnie od tego, czy jest on wpisany, wklejony, czy dotrze do pliku, wiadomości lub pliku do pobrania?

houbysoft
źródło
Czy to powoduje awarię aplikacji, czy system?
kojiro
@kojiro: aplikacja. W przypadku programów takich jak Chrome lub edytory tekstu jest to BARDZO poważny błąd, ponieważ tracisz całą pracę.
houbysoft
Nie twierdzę, że to nie jest poważne, po prostu wskazuję, że tytuł i ostatnie zdanie mówią o systemie , ale tak naprawdę nie psuje systemu.
kojiro
3
Czy bardziej martwi Cię to, że ludzie wpisują 8 znaków na twoim komputerze, niż to, że wybierają Force Quit lub Shutdown z menu Apple?
Russell Borogove
1
@RussellBorogove Niebezpieczeństwo nie polega na tym, że ktoś pisze na twoim komputerze, ale wysyła Ci wiadomość, pocztę lub dokument z tekstem. Poczta ulegnie awarii, otworzy się ponownie, zawiesi do momentu ręcznego usunięcia pliku z niebezpieczną zawartością.
Matteo,

Odpowiedzi:

19

Jest to błąd tylko w wersji 10.8.1 i 10.8.2.

Obejściem tego nieznośnego błędu jest wyłączenie dwóch elementów w okienku preferencji języka i tekstu w Preferencjach systemowych w dotkniętych wersjach Mountain Lion:

  • Wybierz (kliknij) tekst na środku w kierunku górnej części okna
  • odznacz (odznacz) „Popraw poprawną pisownię automatycznie”
  • odznacz (odznacz) „Użyj zastępowania symboli i tekstu”

Podziękowania za to obejście przypadają szachy użytkownika na otwartej stronie internetowej radaru .

wprowadź opis zdjęcia tutaj

bmike
źródło
To nie działa, jeśli jest to wiadomość otrzymana w Messages.app
Gert
@Gert Nice - nie zadziała również w niektórych przypadkach, gdy otrzymujesz plik z tym ciągiem (lub podobnym ciągiem) osadzonym w systemie plików, a kod awarii zaczyna się podobać do czegoś, co wygląda jak URL / URI. Byłbym zaskoczony, gdyby następna aktualizacja zabezpieczeń lub kropek nie zniszczyła tego głośnego błędu.
bmike
2
Miejmy nadzieję. Dla przypomnienia. Aby to naprawić Messages.app, trzeba usunąć chat.dbin~/Library/Messages/
Gert
14

bmike ma obejście, przedstawię „dlaczego”: zgodnie z tym artykułem z TheNextWeb, funkcja o nazwie Detektory danych, która skanuje tekst w poszukiwaniu znaczących formatów (daty, lokalizacje ...) również szuka adresów URL plików. Robi to, szukając „file: //”, bez rozróżniania wielkości liter. Jednak w dalszej części procedury stwierdza, że ​​ciąg powinien zaczynać się małą literą „file: //” - a gdy tak nie jest, na przykład gdy występuje duże F, generuje wyjątek, który najwyraźniej (i bardzo niechlujnie) sprowadza całą aplikację.

kable
źródło