Firefox вылетел с сообщением: «использовались все доступные идентификаторы» - PullRequest
0 голосов
/ 16 ноября 2018

После нескольких дней работы веб-приложения в Mozilla Firefox ESR 52.5.0 произошел сбой браузера.В отчете о сбое обнаружена следующая строка:

MozCrashReason = MOZ_CRASH (использовались все доступные идентификаторы)

Интересно, есть ли у кого-нибудь идеи, что именно этоозначает, и если есть что-то, что мы можем сделать с точки зрения развития, чтобы предотвратить это.

В этом сообщении очень мало информации, которую я смог найти в Google, кроме фактической строки исходного кода: https://github.com/mozilla/positron/blob/master/accessible/windows/msaa/IDSet.h#L76

Заранее спасибо!

1 Ответ

0 голосов
/ 17 ноября 2018

Позитрон - это форк Firefox, поэтому вы нашли эту ошибку в его кодовой базе.

Я незнаком с кодом Firefox, который вызвал сбой, но на первый взгляд он выглядит так, как будто он генерирует идентификаторы для объектов Accessible, которые позволяют программам чтения с экрана и другим вспомогательным технологиям получать доступ к содержимому веб-страниц.

Если ваше веб-приложение заставляет Firefox исчерпать эти идентификаторы, то мое первое подозрение состоит в том, что приложение пропускает элементы DOM (т.е. удаляет их из DOM, но сохраняет некоторую ссылку на них, поэтому они никогда не получают сборщик мусора и освободить их доступные идентификаторы для повторного использования) или быстро создать множество элементов (например, из-за бесконечного цикла).

Но это только догадка. Вы можете попробовать сообщить о проблеме как об ошибке в Firefox:

https://bugzilla.mozilla.org/enter_bug.cgi?product=Core&component=Disability%20Access%20APIs

Однако проблема может заключаться в вашем коде, а не в браузере, поэтому я сначала исследую ваш код, а затем обращаюсь за помощью к сообществу специальных возможностей (https://developer.mozilla.org/en-US/docs/Web/Accessibility#Join_the_Accessibility_community),, прежде чем сообщать об ошибке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...