BUG: дерево сообщений не раскрывается при "показать положение в теме"
От: dimgel Россия https://github.com/dimgel
Дата: 08.07.12 05:13
Оценка:
При клике по ссылке "показать положение в теме" в сообщении, либо из письма, дерево сообщений не раскрывается (зависает на "Загрузка... Кликните для отмены"), Error Console показывает ошибку:

Error: html[i].parentNode is null
Source file: chrome://ghostery/content/ghostery.js
Line: 427


Оно эту ошибку во многих местах показывает. Например, при клике на мой логин (вход в профиль).

Firefox 13.0.1 / Gentoo amd64.
Re: BUG: дерево сообщений не раскрывается при "показать положение в теме"
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 08.07.12 07:59
Оценка:
Здравствуйте, dimgel, Вы писали:

D>
D>Error: html[i].parentNode is null
D>Source file: chrome://ghostery/content/ghostery.js
D>Line: 427
D>


D>Оно эту ошибку во многих местах показывает. Например, при клике на мой логин (вход в профиль).


А ты не пробовал внимательнее читать, что скопипастил? Это твое расширение козлит.
... << RSDN@Home 1.2.0 alpha 5 rev. 52 on Windows 7 6.1.7601.65536>>
AVK Blog
Re[2]: BUG: дерево сообщений не раскрывается при "показать положение в теме"
От: dimgel Россия https://github.com/dimgel
Дата: 08.07.12 08:08
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>А ты не пробовал внимательнее читать, что скопипастил? Это твое расширение козлит.


Может да, а может и нет. Если исключение вылетает изнутри jquery, виноват как правило вызывающий код. Ghostery у меня уже с год стоит, а глюк недавно заметил. И кроме того, другие сайты почему-то работают. Ghostery на кывте блокирует AddThis, Yandex.Metrix и Google.Analytics. Короче, отмаза не засчитана.
Re[3]: BUG: дерево сообщений не раскрывается при "показать положение в теме"
От: AndrewVK Россия http://blogs.rsdn.org/avk
Дата: 08.07.12 18:56
Оценка:
Здравствуйте, dimgel, Вы писали:

D>Может да, а может и нет. Если исключение вылетает изнутри jquery, виноват как правило вызывающий код. Ghostery у меня уже с год стоит, а глюк недавно заметил.


Если недавно, то rsdn точно не причем. Потому что никто недавно ничего не менял.

D>Ghostery на кывте блокирует AddThis, Yandex.Metrix и Google.Analytics. Короче, отмаза не засчитана.


Снеси Ghostery и проверь.
... << RSDN@Home 1.2.0 alpha 5 rev. 52 on Windows 7 6.1.7601.65536>>
AVK Blog
Re[4]: BUG: дерево сообщений не раскрывается при "показать положение в теме"
От: dimgel Россия https://github.com/dimgel
Дата: 08.07.12 19:29
Оценка:
Здравствуйте, AndrewVK, Вы писали:

AVK>Снеси Ghostery и проверь.


Проверил. Работает. И что?

AVK>Если недавно, то rsdn точно не причем. Потому что никто недавно ничего не менял.


Слишком смелое утверждение. Возможна, например, ситуация, когда в кывтовских скриптах был застарелый глюк, который проявился только когда обновлённый плагин повлиял на что-нибудь эдакое. С другими сайтами, повторюсь, никаких проблем пока не замечал. Пока что твои ответы напоминают претензии коллег McSeem2 к его аллокатору за их утечки памяти.
Re[5]: BUG: дерево сообщений не раскрывается при "показать положение в теме"
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 08.07.12 19:48
Оценка: +1
Здравствуйте, dimgel, Вы писали:

Ghostery инжектит свои скрипты в страницы сайта и орудует с их DOM как у себя дома, прости за каламбур. Чтобы понять, что оно творит со страницей, нужно прогнать это расширение под отладчиком, разобраться как оно работает и что именно вызывает проблемы с кодом на сайте, который уже много лет работает без каких-либо проблем и нареканий.

Скажи, ты правда считаешь, что разработчики сайта должны обеспечивать его совместимость со всеми подобными расширениями?

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[6]: BUG: дерево сообщений не раскрывается при "показать положение в теме"
От: dimgel Россия https://github.com/dimgel
Дата: 08.07.12 20:03
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>Ghostery инжектит свои скрипты в страницы сайта и орудует с их DOM как у себя дома, прости за каламбур.


Этого я не знал.

KV>Скажи, ты правда считаешь, что разработчики сайта должны обеспечивать его совместимость со всеми подобными расширениями?


Нет, но забросить удочку не мешало. За спрос не бьют, не? (Хотя это смотря что спросить и у кого.)
Re: BUG: дерево сообщений не раскрывается при "показать положение в теме"
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 08.07.12 20:06
Оценка: 6 (1)
D>Оно эту ошибку во многих местах показывает. Например, при клике на мой логин (вход в профиль).

D>
D>Error: html[i].parentNode is null
D>


Посмотрел на код ghostery.js... html там получается из doc.querySelectorAll(scannedElements), а ошибка возникает при попытке удаления подозрительного узла из DOM. Но с чего они решили, что каждый элемент этого html[] обязан иметь родительскую ноду? Лично я в этом вижу отличный способ добавить на страницу трекер, который ghostery тупо не сможет удалить

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re: BUG: дерево сообщений не раскрывается при "показать поло
От: kochetkov.vladimir Россия https://kochetkov.github.io
Дата: 08.07.12 20:18
Оценка: 6 (1)
Здравствуйте, dimgel, Вы писали:

В общем, проблема в ghostery. В версии https://addons.mozilla.org/en-US/firefox/addon/ghostery/versions/?page=1#version-2.7.2 и удаление узлов реализовано иначе, и при этом каждая нода таки-проверяется на наличие родительской. В последующих версиях, этот кусок кода переписали полностью и проверок на наличие родителя там нет.

В общем, нужно в zip:ghostery-2.8.0.1-sm+fx.xpi \chrome\content\ghostery.js обернуть 427 строку в проверку:

    if (typeof html[i].parentNode != "undefined" && html[i].parentNode !== null)
    {
        html[i].parentNode.removeChild(html[i]);
    }


и сайт будет работать, по крайней мере в части этой ошибки (хз, сколько их еще там).

[Интервью] .NET Security — это просто
Автор: kochetkov.vladimir
Дата: 07.11.17
Re[2]: BUG: дерево сообщений не раскрывается при "показать поло
От: dimgel Россия https://github.com/dimgel
Дата: 08.07.12 20:34
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>и сайт будет работать, по крайней мере в части этой ошибки (хз, сколько их еще там).


Спасибо за потраченное время, но их там ещё видимо много. Ошибка из консоли исчезла, но внешне поведение не изменилось. Тупо пометил кывт как whitelisted.
Re[2]: BUG: дерево сообщений не раскрывается при "показать положение в теме"
От: fddima  
Дата: 09.07.12 08:32
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

KV>Но с чего они решили, что каждый элемент этого html[] обязан иметь родительскую ноду?

Эм, а как document.querySelectorAll вернёт элементы не содержащие родительские элементы? (ну html элемент не в счёт).
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.