Чому Файл: /// завершує роботу програми?


10

Щоразу, коли я набираю File:///URL-рядок у Chrome, у редагуванні тексту тощо, програма перестає працювати. Про це я дізнався, прочитавши цю публікацію в блозі .

Як я можу уникнути цього збою та унеможливити додатки, які отримують цей рядок, будь то введений, вставлений чи надходить у файл, повідомлення чи завантаження?


Це виходить з ладу додаток, або це збій вашої системи?
kojiro

@kojiro: додаток. У випадку таких програм, як Chrome або текстові редактори, це ДУЖЕ сильна помилка, оскільки ви втрачаєте всю роботу.
houbysoft

Я не стверджую, що це не суворо, я просто вказую, що заголовок і останнє речення говорить про систему , але насправді це не руйнує вашу систему.
kojiro

3
Ви більше стурбовані тим, що люди набирають на комп’ютері 8 символів, ніж ви, що ви вибираєте Force Quit або Shutdown з меню Apple?
Рассел Борогов

1
@RussellBorogove Небезпека полягає не в тому, що хтось друкує на комп’ютері, а люди, які надсилають вам повідомлення, пошту чи документ із текстом у ньому. Пошта вийде з ладу, знову відкриється, вийде з ладу, поки ви вручну не видалите файл із небезпечним вмістом.
Маттео

Відповіді:


19

Помилка лише в 10.8.1 та 10.8.2.

Вирішення цього невдалого помилки полягає в тому, щоб вимкнути два пункти в області налаштувань мови та тексту в системних налаштуваннях для постраждалих версій Mountain Lion:

  • Виберіть (натисніть) на Текст посередині у верхній частині вікна
  • зніміть позначку (зніміть прапорець) "Автоматично виправити написання"
  • зніміть позначку (зніміть прапорець) "Використовувати заміну символів та тексту"

Аккаунт за це рішення належить користувачеві shess на відкритому веб-сайті РЛС .

введіть тут опис зображення


Це не працює, якщо це повідомлення, отримане в Messages.app
Герт

@Gert Nice - він також не працюватиме в деяких випадках, коли ви отримуєте файл із цією строкою (або подібною рядком), вбудованою у файлову систему, і код збоїв починає цікавитись тим, що схоже на URL / URI. Я був би здивований, якщо наступне оновлення безпеки або крапок не призведе до розбиття цієї помилки.
bmike

2
будемо сподіватися. Просто для запису. Для того, щоб виправити Messages.app, вам потрібно видалити chat.dbін~/Library/Messages/
Герт

14

bmike має вирішення, я надам "чому": Відповідно до цієї статті від TheNextWeb, функція під назвою "Детектори даних", яка сканує текст на значущі формати (дати, місця розташування ...), також шукає URL-адреси файлів. Це роблять, шукаючи "файл: //", нечутливий до регістру. Однак пізніше в процедурі він стверджує, що рядок повинен починатися з "файла: //" з малого регістру - і коли це не так, наприклад, коли є велика величина F, вона видає виняток, який, мабуть, (і надзвичайно неохайно) збиває всю програму.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.