SASGIS

Веб-картография и навигация


View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0002717SAS.Планета[All Projects] Багpublic08-05-2015 12:2129-07-2015 12:26
Reporterzed 
Assigned Tozed 
PrioritynormalSeverityminorReproducibilityhave not tried
StatusresolvedResolutionfixed 
PlatformOSOS Version
Product Version.Nightly 
Target Version150915Fixed in Version150915 
Summary0002717: AV при сохранении нового полигона
DescriptionСловил несколько раз разрушительную авешку при попытке сохранить новый полигон в БД. Полигон создавался в гуе и нажималась кнопочка "Сохранить", после чего вываливалась AV в функции TMarkDbSml.UpdateMark (один раз получилось словить ошибку под отладчиком), программа закрывалась и файл меток становился равен нулю. Очень плохая ошибка.
Steps To ReproduceСохранялся простой полигон из трёх точек, но в базе было много сложных полигонов, общим числом от 500 и более.
Additional InformationМожет и ошибаюсь, но кажется нашёл, в чём могла быть ошибка: при сохранении нового полигона вызывался метод TfrmMain.TBEditPathSaveClick а оттуда метод FMarkDBGUI.SaveMarkModal и указывалось, что это существующий полигон (AIsNewMark = False). Возможно это и приводило иногда к косякам.
TagsNo tags attached.
Attached Files

- Relationships

-  Notes
(0015870)
zed (manager)
08-05-2015 12:22

Собственно, поведение в TfrmMain.TBEditPathSaveClick изменил, теперь этот метод должен вызываться только для обновления существующих полигонов.

Посмотрим, будет ли падать теперь.
(0015873)
vdemidov (manager)
09-05-2015 07:50

Не изменил поведение при нажатии на Enter.
Но оно и так не должно было влиять. AIsNewMark влияет только, если исходная метка передающаяся в тот метод пустая. А для нового полигона она должна быть пустой.
(0015874)
zed (manager)
09-05-2015 07:55
edited on: 09-05-2015 08:08

О, оно ещё и по Enter что-то делало? Не знал.

P.S. Пофиксил.

(0015875)
vdemidov (manager)
09-05-2015 08:12

> после чего вываливалась AV в функции TMarkDbSml.UpdateMark
В каком месте?
(0015876)
zed (manager)
09-05-2015 08:18

Точно не скажу. Где-то в конце. Может и на Save, потому как файл меток обнулялся.

AV было про write adress и адрес какой-то странный типа 80500000 (в начале пара цифр, а в конце много нулей).
(0015877)
vdemidov (manager)
09-05-2015 08:27

Просто то что ты исправил никак не должно было повлиять. Разве что в поле FEditMarkPoly попал мусор уже после смены режима, то есть tbitmSaveMark.DropdownCombo установилась правильно, а потом значение FEditMarkPoly испортилось. А ты получается не убрал это повреждение, а просто замаскировал.
(0015878)
zed (manager)
09-05-2015 08:31

Да, тоже была мысль про мусор.

Но я вообще исправлял не ради багофикса, а чтобы сделать быстрый Save без вызова диалога. Переделывал я это уже напоровшись пару раз на AV и чисто случайно увидел что в этом месте как-то неправильно вызываются методы - сохранение нового полигона под видом существующего. Отсюда и предположение.
(0015879)
vdemidov (manager)
09-05-2015 08:43

Плохо.
(0016237)
vdemidov (manager)
29-07-2015 12:25

Будем считать исправленным.

- Users who viewed this issue
User List Anonymous (3061x), vdemidov (6x), zed (1x)
Total Views 3068
Last View 21-11-2024 13:11

- Issue History
Date Modified Username Field Change
08-05-2015 12:21 zed New Issue
08-05-2015 12:22 zed Note Added: 0015870
09-05-2015 07:50 vdemidov Note Added: 0015873
09-05-2015 07:55 zed Note Added: 0015874
09-05-2015 08:08 zed Note Edited: 0015874 View Revisions
09-05-2015 08:12 vdemidov Note Added: 0015875
09-05-2015 08:18 zed Note Added: 0015876
09-05-2015 08:27 vdemidov Note Added: 0015877
09-05-2015 08:31 zed Note Added: 0015878
09-05-2015 08:43 vdemidov Note Added: 0015879
29-07-2015 12:25 vdemidov Note Added: 0016237
29-07-2015 12:25 vdemidov Status new => resolved
29-07-2015 12:25 vdemidov Fixed in Version => 150915
29-07-2015 12:25 vdemidov Resolution open => fixed
29-07-2015 12:25 vdemidov Assigned To => zed
29-07-2015 12:26 vdemidov Target Version => 150915



Copyright © 2007 - 2024 SAS.Planet Team