FireFox nsFormAutoComplete.js Где хранятся «настройки» для getBoolPref ()? - PullRequest
0 голосов
/ 27 мая 2010

Когда я набираю текст в различные текстовые поля на страницах с помощью FireFox (3.6.3), я получаю следующую ошибку:

Ошибка: [Exception ... "Компонент возвратил код ошибки: 0x8000ffff (NS_ERROR_UNEXPECTED) [nsIPrefBranch.getBoolPref]" nsresult: "0x8000ffff (NS_ERROR_UNEXPECTED)" расположение: "JS frame :: file: /// C: / Program % 20Files / Mozilla% 20Firefox / components / nsFormAutoComplete.js :: anonymous :: line 97 "данные: нет] Исходный файл: file: /// C: /Program%20Files/Mozilla%20Firefox/components/nsFormAutoComplete.js Линия: 97

Кажется, что это произошло для страницы, которую я разработал, и даже для ввода текста в строку поиска Google.

Когда я смотрю на nsFormAutoComplete.js, я вижу это:

init : function() {
    // Preferences. Add observer so we get notified of changes.
    this._prefBranch = Cc["@mozilla.org/preferences-service;1"].
                       getService(Ci.nsIPrefService).getBranch("browser.formfill.");
    this._prefBranch.QueryInterface(Ci.nsIPrefBranch2);
    this._prefBranch.addObserver("", this.observer, false);
    this.observer._self = this;

    this._debug   = this._prefBranch.getBoolPref("debug");
    this._enabled = this._prefBranch.getBoolPref("enable");
    this._agedWeight = this._prefBranch.getIntPref("agedWeight");
    this._bucketSize = this._prefBranch.getIntPref("bucketSize");
    this._maxTimeGroupings = this._prefBranch.getIntPref("maxTimeGroupings");
    this._timeGroupingSize = this._prefBranch.getIntPref("timeGroupingSize") * 1000 * 1000;
    this._expireDays = this._getFormExpiryDays();

    this._dbStmts = [];

    this._observerService.addObserver(this.observer, "xpcom-shutdown", false);
},

Похоже, проблема возникает в этой строке:

    this._debug   = this._prefBranch.getBoolPref("debug");

Прямо сейчас, я думаю, что предпочтение «отладка» не существует там, где FireFox читает свои предпочтения.

Я мало что знаю о FireFox, и поиск в Интернете не дал много информации.

Вопрос: Где FireFox хранит / получает эти настройки?

Я полагаю, что если я помещу предпочтение "отладки" в это место, я должен устранить ошибку. Тем не менее, я открыт для других предложений / дополнительной информации.

Спасибо! --- Dan ---

1 Ответ

0 голосов
/ 27 мая 2010

Хорошо. Я понял. Может быть, это поможет кому-то еще. В файле nsFormAutoComplete.js есть список предпочтений.

Файл prefs.js является ключевым и находится в C: \ Documents and Settings \\ data приложения \ firefox \ profile \\ prefs.js.

Вы не хотите редактировать этот файл напрямую. Вместо этого введите about: config в адресной строке FireFox и добавьте настройки следующим образом. Предпочтения будут следующими:

browser.formfill. и введите.

так что для отладки это browswer.formfill.debug как bool. Я установил это в ложь. После этого он потерпел неудачу при следующем предпочтении, которое было .agedWeight.

После добавления всех настроек, найденных в nsFormAutoComplete.js, я обнаружил, что ошибки исчезли.

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