Баг в Mac OS X Mountain Lion складывает почти все аппликации

от автора

Привет Хабр! Последние два дня новость о баге будоражит жителей яблочной страны коим я тоже являюсь. Речь пойдет о баге который при вводе «File:///» (большая F должна присутсвовать) складывает значительное большенство аппликаций на операционной системе Mac OS X Mountain Lion (только Mountain Lion).

Первое упоминание о нем было на Open Radar первого Февраля этого года неким @shess при попытке ввода File:/// в Text Edit (я смог воспроизвести баг разными подходами в Text Edit). Предположения были выдвинуты что это происходит изза проверки на орфографии встроенной в OS (Data detectors) для автоматического распознования даты, места и контактных данных, но не подтверженна пока что оффициально. Кому интересно, прошу под кат.

Строим предположения

Немного о том что говорят другие об этом на Hacker News.

Nelson Minar на HackerNews сообщил что даже сам error reporter встроенный в Mac падает изза этого бага. Этот пользователь смог поймать следущию ошибку при сложении программы.

*** Terminating app due to uncaught exception ‘NSInternalInconsistencyException’, reason: ‘condition “wrong extraction: File:///”‘
terminate called throwing an exception
abort() called

Nik Cubrilovic прокомментировал что checkDataDetectors пытается извлечь ‘File://a/’ – или любой другой URL к файлу (file://) по пути ‘/’ – как корректный дата URL и передает его DDResultCopyExtractURL, который делает еще одну проверку на состояние. Там делается предположение что файл начинается с file://, хотя это не так что приводит к непойманному
NSInternalInconsistencyException который и складывает аппликацию. Заддержку мы видим перед тем как программа упадет происходит изза того что NSSpellCheckerCheckString делает проверку текста только после того как прошло какое то время с последнего нажатия кнопки (по английски можно прочесть вот тут).

@zbowling сообщил что скорее всего это изза NSTextFields и только аппликации которые его имеют могут слечь (как пример он привел Sublime Text который выжил (мне удалось Sublime сложить)).

Помощь другу

Можно отключить автоматическую проверку пройдя по следующему пути:
System Preferences -> Language & Text -> Text и убрать галочку рядом с Автоматической проверкой орфографии (Correct spelling automatically) и Use symbol and text substitution (это свободный перевод, у меня английская версия стоит, так что не обещаю правильность названий).

Поиграем сами

Мне стало интересно а что же можно сложить из того что у меня имеется. И так при запуске функции Search (Поиска) в следующих аппликациях, они складываются:

Закрылись

  • Finder
  • Safari
  • Chrome
  • Preview
  • Stickies
  • Spotlight
  • Skype
  • Microsoft Word
  • Microsoft Excel
  • TextEdit (rtf, txt & document tested only)
  • Calendar
  • iTunes
  • Contacts
  • Messages
  • Eclipse
  • Keynote
  • Pages
  • Xcode (ну ты да не слег бы)
  • Photoshop
  • VLC
  • Vuze
  • Cyberduck
  • Mail
  • GameCenter
  • Alfred
  • Line
  • AppStore
  • Sublime Text 2

Предпологаю что Movies, Garagе Band и весь iLife отправится в этот же список.

Не закрылись

  • Firefox
  • TextWrangler
  • PhpStorm
  • Steam Client
  • Github Client
  • Calibre
  • Wireshark

Не многие выстояли этот бой. При попытки создания директории в терминале mkdir File:/// была создана просто папка с названием File/. Использую vi и nano в терминале вписал внутри «File:///» и сохранял (назвал «blank») под любым названием без extension-а. При попытке открыть файл через TextEdit аппликация вылетала. Если расширение было .txt (создал тоже через терминал echo «File:///» > blank.txt или blank — так же улетала).

При вводе File:/// в Sublime Text 2 внутри ничего не произошло, и так же при попытке внутренней функции «Find». Но когда попробовал сделать File -> Open -> и в Spotlight Search забил «File:///» конфетка смерти покрутилась секунды три (все остальные сразу ложились) и Sublime упал.

При вводе в Firefox, аппликация переводила текст в lowercase и давала мое главное дерево "/" (картинка ниже).

Порадовал Wireshark, выдал следующую ошибку (картинка ниже).

Этог

Все остальные выше приведенные программы никак не отреагировали (если у кого получиться сложить что еще или эти, дайте знать). Так что теперь будем ждать новостей от Apple.

ссылка на оригинал статьи http://habrahabr.ru/post/168301/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *