Страница 1 из 1

SIGSEGV при изменении типа линии в новой символике

Добавлено: 15 фев 2011, 14:03
sanyasi
Qgis 15169M Ubuntu 10.04

При изменении линии на пунктирную и обратно, сегфолт, слой devicelink.
Причем слой может быть не отображаемым, либо линии слоя не в рабочей области карты.

Код: Выделить всё

write(2, "------", 6------)                   = 6
write(2, "\n", 1
)                       = 1
write(2, "------", 6------)                   = 6
write(2, "\n", 1
)                       = 1
gettimeofday({1297766173, 563044}, NULL) = 0
stat64("/etc/localtime", {st_mode=S_IFREG|0644, st_size=2194, ...}) = 0
mmap2(NULL, 4714496, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xaaf6d000
poll([{fd=8, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=8, revents=POLLOUT}])
writev(8, [{"5\30\4\00004@\6]\1\0\0\315\5\31\0037\0\4\00014@\00604@\6\0\0\0\0"..., 56}, {"\334\346\354\377\334\346\354\377\336\350\355\377\350\360\363\377\363\370\370\377\365\372\372\377\365\372\372\377\365\372\372\377"..., 261360}, {"", 0}], 3) = 113344
poll([{fd=8, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=8, revents=POLLOUT}])
writev(8, [{"\350\356\360\377\350\356\360\377\350\356\360\377\350\356\360\377\350\356\360\377\350\356\360\377\350\356\360\377\350\356\360\377"..., 148072}, {"", 0}], 2) = 148072
poll([{fd=8, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=8, revents=POLLOUT}])

==skip==

writev(8, [{"H\2B\37704@\00614@\6\315\5,\0\0\0\354\2\0\30@\6", 24}, {"\326\322\265\377\326\322\265\377\326\322\265\377\326\322\265\377\326\322\265\377\326\322\265\377\326\322\265\377\326\322\265\377"..., 261360}, {"", 0}], 3) = 113344
poll([{fd=8, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=8, revents=POLLOUT}])
writev(8, [{"\334\346\354\377\334\346\354\377\334\346\354\377\334\346\354\377\334\346\354\377\334\346\354\377\334\346\354\377\334\346\354\377"..., 148040}, {"", 0}], 2) = 148040
munmap(0xaaf6d000, 4714496)             = 0
poll([{fd=8, events=POLLIN|POLLOUT}], 1, -1) = 1 ([{fd=8, revents=POLLOUT}])
writev(8, [{"H\2\323\00504@\00614@\6\315\5\1\0\0\0\30\3\0\30@\6\326\322\265\377\326\322\265\377"..., 6236}, {NULL, 0}, {"", 0}], 3) = 6236
read(8, 0x8a69e80, 4096)                = -1 EAGAIN (Resource temporarily unavailable)
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++

Re: SIGSEGV при изменении типа линии в новой символике

Добавлено: 15 фев 2011, 16:14
Максим Дубинин
если вы хотите, чтобы баг был доставлен кому нужно, то нужен четкий лаконичный тесткейс на тестовых данных.

Re: SIGSEGV при изменении типа линии в новой символике

Добавлено: 15 фев 2011, 22:10
sanyasi
Проверил разные варианты, компилировал своём окружении, отключал модули... Ошибка проявляется не всегда.

Открываем свойства стиля, меняем тип линии на пунктир, применяем. Вылетаем,не получилось - снова меняем, например обратно - на линию.

Re: SIGSEGV при изменении типа линии в новой символике

Добавлено: 15 фев 2011, 23:15
Voltron
Сумел воспроизвести два раза, больше не получилось как ни старался
Linux, r15156

Re: SIGSEGV при изменении типа линии в новой символике

Добавлено: 20 фев 2011, 11:50
Denis Rykov
Раз двадцать проделал описанный тесткейс - ни одного вылета.
Win, r15203