SASGIS - SAS.Планета
View Issue Details
0002525SAS.Планета[All Projects] Багpublic30-10-2014 14:2831-10-2014 13:59
zed 
zed 
normalminoralways
resolvedfixed 
140303 
141111141111 
0002525: Намертво зависает при отсутствии парного закрывающего html тега в описании метки
Если в описание метки добавить текст <a href=http://some.link>Link< /a> (здесь важен пробел перед /a>, что является ошибкой), то после перезапуска программы и попытке подвести мыша к метке, чтобы всплыл хинт, получаем зависание программы.
Висит вот тут в бесконечном цикле, т.к. закрывающая кавычка (>) после /a куда-то загадочным образом исчезает, хотя в базе меток она таки есть: descr="<a href=http://some.link>Link< /a>"
No tags attached.
Issue History
30-10-2014 14:28zedNew Issue
30-10-2014 14:32zedNote Added: 0014822
30-10-2014 14:55vdemidovNote Added: 0014823
30-10-2014 14:56vdemidovNote Edited: 0014823bug_revision_view_page.php?bugnote_id=14823#r6299
30-10-2014 15:03vdemidovNote Added: 0014824
30-10-2014 16:18zedNote Added: 0014826
31-10-2014 12:01vdemidovStatusnew => confirmed
31-10-2014 12:01vdemidovProduct Version.Nightly => 140303
31-10-2014 12:01vdemidovTarget Version => 141111
31-10-2014 12:01vdemidovAdditional Information Updatedbug_revision_view_page.php?rev_id=6301#r6301
31-10-2014 13:56zedNote Added: 0014832
31-10-2014 13:56zedStatusconfirmed => resolved
31-10-2014 13:56zedFixed in Version => 141111
31-10-2014 13:56zedResolutionopen => fixed
31-10-2014 13:56zedAssigned To => zed
31-10-2014 13:59zedSummaryНамертво зависает в THtmlToHintTextConverter => Намертво зависает при отсутствии парного закрывающего html тега в описании метки

Notes
(0014822)
zed   
30-10-2014 14:32   
Конкретно в этом месте, перед тем как входить в while нужно убедиться, что есть закрывающая кавычка. Ну и нужно найти, где она пропадает. Но это по-моему где-то в другом месте есть ещё косяк, который помогает повесить программу.
(0014823)
vdemidov   
30-10-2014 14:55   
(edited on: 30-10-2014 14:56)
Странно. А у меня не зависает.
Хотя нет. Зависает, но только если самому убрать закрывающую угловую скобку

(0014824)
vdemidov   
30-10-2014 15:03   
Проблема кстати не в пробеле, а именно в незакрытом теге. Можно изменить MidStr так, что бы если не найдено закрывающей подстроки, то выдавалось все до конца строки. И соответственно все вырезалось.
(0014826)
zed   
30-10-2014 16:18   
Зависает после перезапуска.

И именно из-за пробела, где-то удаляется закрывающая скобка, что, в свою очередь, приводит к бесконечному циклу.
(0014832)
zed   
31-10-2014 13:56   
Нет, пробел оказался ни при чём. Оказывается датасет неправильно считывал данные из sml. После удаления файла меток, ошибка с пропажей тега ушла. Возможно в sml были какие-то грабли с кодировкой, т.к. он остался со времён эксперементов с XE2 и юникодом.

Зависание пофиксил простым прерыванием цикла.