Укажите отработанное время

Отработанное время:
Продуктивное время:
Bug 8128 - Падение 1c82   Make a simular bug
Summary: Падение 1c82
Status: CLOSED FIXED
Alias: None
Product: WINE@Etersoft
Classification: Продукты (Products)
Component: Запуск ; Отладка ; Исключения (show other bugs)
Version: 2.0
Hardware: PC All
: P1 critical
Target Milestone: ---
Deadline: 2012-03-22
Assignee: Татьяна Фокина
QA Contact: Svetlana Zhukova
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 8123 8107 8132
  Show dependency treegraph
 
In work:
Reported: 2012-02-03 12:02 MSK by Svetlana Zhukova
Modified: 2013-06-05 10:35 MSK (History)
8 users (show)

See Also:
Заявки RT: 22852, 22782,22884,23073
Связано с:
Дата напоминания:


Attachments
1 (216.76 KB, image/jpeg)
2012-02-03 12:02 MSK, Svetlana Zhukova
Details
2 (50.36 KB, image/jpeg)
2012-02-03 12:02 MSK, Svetlana Zhukova
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Svetlana Zhukova 2012-02-03 12:02:07 MSK
Created attachment 2420 [details]
1

При первом запуске конфигурации под конкретным пользователем 1с82 окно заставки остается и после открытия программы (зависает). Если под этим же пользователем войти еще раз,такого не наблюдается. Если войти под другим пользователем в эту же базу,бага проявляется снова.
Comment 1 Svetlana Zhukova 2012-02-03 12:02:41 MSK
Created attachment 2421 [details]
2
Comment 2 Svetlana Zhukova 2012-02-03 12:03:43 MSK
В консоли:
fixme:msvcr90:__clean_type_info_names_internal (0x4a9d60a8) stub
fixme:msvcr90:__clean_type_info_names_internal (0x4a8e2018) stub
fixme:msvcr90:__clean_type_info_names_internal (0x1000f1b8) stub
ctrl+C не помогает.
Comment 3 Svetlana Zhukova 2012-02-03 12:19:16 MSK
Если запустить повторно конфигурацию под этим же  пользователем, програма падает,появляется запись дампа. 
1с 8.2.13.219 бухгалтерия предприятия.
wine@eterhack bottle 1c82/8123>$ wine --version
WINE@Etersoft SQL 2.0.0-eter2.13/8
в 2.11 тоже самое было.
Comment 4 Svetlana Zhukova 2012-02-03 18:14:37 MSK
*** Bug 8132 has been marked as a duplicate of this bug. ***
Comment 5 Svetlana Zhukova 2012-02-07 09:03:42 MSK
Хм..кроме как в 22852 и в данной бутылке,эта бага не проявилась.
Comment 6 other.bigmouse 2012-02-10 19:57:52 MSK
На WINE@Etersoft Public 1.3.35-eter1 1C версии v8.2 1292 запускается, но через произвольное время крашится: fixme:msvcr90:__clean_type_info_names_internal
При попытка что-либо внести в конфигурацию (добавить/удалить) молча падает. Конфигуратор работает нормально.
Comment 7 other.bigmouse 2012-02-10 20:31:46 MSK
(В ответ на comment #6)
> Конфигуратор работает нормально.
Нет, теперь тоже молча падает
Comment 8 Александр Морозов 2012-02-14 21:21:53 MSK
В eterhack (1.4.rc3-alt1.1) при запуске подвисает. Если сделать, чтобы DispatchEx_GetMemberProperties возвращала S_OK, то начинает работать. Но после переключения на другое окно возникает проблема с отрисовкой содержимого окна 1С.
Comment 9 Александр Морозов 2012-02-16 20:35:35 MSK
> В eterhack (1.4.rc3-alt1.1) при запуске подвисает.

1С осуществляет перебор DISPID с помощью DispatchEx_GetNextDispID. И этот процесс никогда не заканчивается, т.к. в последовательности элементов, по которой осуществляется перебор, присутствуют два элемента с одинаковыми id. В результате для первого из этих элементов возвращается следующий id, равный его собственному. При следующем вызове DispatchEx_GetNextDispID находит по id первый из двух этих элементов и возвращает тот же самый "следующий" id. И так до бесконечности.
Comment 10 Александр Морозов 2012-02-16 20:36:58 MSK
Поиск по id осуществляется с помощью get_builtin_func.
Comment 11 Александр Морозов 2012-02-17 21:39:33 MSK
У интерфейсов IHTMLAnchorElement и IHTMLElement2 действительно есть методы с одинаковыми DISPID (например, tabIndex и onblur). Ошибка не в объявлении интерфейсов.
Comment 12 Александр Морозов 2012-02-20 20:44:05 MSK
Сделал, чтобы элементы с одинаковым DISPID не добавлялись. 1С перестала зависать сразу же после запуска.
Comment 13 Александр Морозов 2012-02-22 18:33:14 MSK
> Но после переключения на другое окно возникает проблема с отрисовкой содержимого окна 1С.

Проявляется также после сворачивания и восстановления. При этом выводится куча сообщений вида
trace:msg:peek_message got type 6 msg f (WM_PAINT) hwnd 0x3007e wp 0 lp 0
В структуре окна с хэндлом 0x3007e (хэндл не всегда именно такой) в wineserver оказывается выставленным update_region. В результате при каждом вызове GetMessage или PeekMessage получается WM_PAINT.
Comment 14 Александр Морозов 2012-02-24 20:07:09 MSK
> trace:msg:peek_message got type 6 msg f (WM_PAINT) hwnd 0x3007e wp 0 lp 0
DispatchMessageW, которую 1С вызывает для обработки этих сообщений, устанавливает ошибку ERROR_INVALID_WINDOW_HANDLE. Ошибка вызвана тем, что WIN_GetPtr возвращает NULL для hwnd из этих сообщений.
Comment 15 Александр Морозов 2012-02-27 16:21:32 MSK
Оказалось, что проблема вызвана порчей памяти из-за бага в реализации msvcr90._recalloc.
Comment 16 Svetlana Zhukova 2012-02-28 12:27:26 MSK
Отлично.
Comment 17 Татьяна Фокина 2013-03-25 12:24:24 MSK
Задача 6736. При попытке загрузить Новости Онлайн вылезает падение на assert() из-за исправления в add_func_info (mshtml: Prevent duplicating members (eterbug #8128))

> В библиотеке mshtml есть функция add_func_info, в которой стоит 
> 
> assert(info->prop_vt == VT_EMPTY || vt == info->prop_vt);
> 
> vt получается из входных параметров, info выбирается в начале функции. Вот всё
> дело как раз в том, как выбирается info. 
> В ветках 2.1/eterhack и winehq это условие неодинаково, что и оъясняет наличие
> данной ошибки при выполнении программ только в 2.1/eterhack. Если поменять
> условие в 2.1/eterhack на такое как в winehq(а изменено оно было для баги 8128
> - Падение 1c82), то ошибка исчезает: gecko перестает закрывать документ, и, как
> я понимаю, поэтому iexplore и Гарант начинают отображать нужные страницы.
> 
> Если отслеживать сравниваемые значения и memid, то можно заметить, что они не
> всегда корректны... например достаточно частый случай, когда memid ("Определяет
> идентификатор члена функции") - большое отрицательное число. 
> В момент падения, в частности, "vt == info->prop_vt" соответствовало "9 == 8",
> memid = -235....8, info->id = 1080.

попыталась воспроизвести проблему: С данным изменением из без него разницы в работе 1с не заметила... Возможно, что-то делаю неправильно?
Comment 18 Татьяна Фокина 2013-04-02 17:43:42 MSK
Изучила функцию ещё раз... еще раз попыталась воспроизвести. Отправила Revert...
Comment 19 Vitaly Lipatov 2013-04-04 01:53:44 MSK
(В ответ на comment #18)
> Изучила функцию ещё раз... еще раз попыталась воспроизвести. Отправила
> Revert...
Просьба задачи по тестированию по возможности поручать тестировщикам. У Светы такие вещи проверять очень даже хорошо получается. Тем более, что багу она заводила.