SASGIS

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


View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0001157SAS.Планета[All Projects] Багpublic05-02-2012 05:0510-10-2012 11:48
Reporterrudepravo 
Assigned Tovasketsov 
PrioritynormalSeveritycrashReproducibilityalways
StatusclosedResolutionfixed 
PlatformWindowsOSXPOS VersionSP3
Product Version.Nightly 
Target Version120808Fixed in Version120808 
Summary0001157: Падение на загрузке GPX-трека
DescriptionПри загрузке GPX-трека созданный SASPlanet программа падает. Лог ошибки и gpx-трек в приложении.
Tagsgpx, локаль, региональные настройки
Attached Fileszip file icon track_with_fault.zip [^] (972,964 bytes) 05-02-2012 05:05

- Relationships

-  Notes
(0005334)
Tolik (manager)
05-02-2012 06:06
edited on: 05-02-2012 06:09

У меня на той же самой версии (вчерашней ночнушке) загрузился без проблем.

Старый ноутбук XP SP2, xerseslib.dll

(0005335)
rudepravo (reporter)
05-02-2012 08:58

А с прикреплённого к инциденту gpx-трека не падает?
(0005336)
zed (manager)
05-02-2012 09:17

C xerces не падает, a с msxml, да - падает.
(0005337)
vasketsov (manager)
05-02-2012 12:00

Погляжу как смогу, сегодня не обещаю.
А вообще крайне рекомендуется пользоваться xerses. И сильно быстрее, и косяков меньше из-за опенсорсности.
(0005343)
vasketsov (manager)
05-02-2012 17:07

Мелкомягкий парсер умирает при виде строки типа "<speed>.15</speed>".
Добавление ведущего нуля не решает проблему. Всё равно ошибка:

Element content is invalid according to the DTD/Schema.'#$D#$A'Expecting: {http://www.topografix.com/GPX/1/1}ageofdgpsdata, {http://www.topografix.com/GPX/1/1}dgpsid, {http://www.topografix.com/GPX/....
Line: 31
<speed>0.15</speed>

Похоже, это глюк не собственно мелкомягкого парсера, а его провайдера xmldom. Так как GPSMapEdit этот трек загружает (а он умеет использовать только msxml, зато использует его напрямую). Если я всё правильно понимаю, то баг исчезнет не раньше, чем перейти на более новую версию Delphi, так как провайдер поставляется со средой.

Так что workaround один, пользоваться xerces. Это даже не workaround в привычном смысле, это просто рекомендуется изо всех сил.

Правда есть одна непонятка. В файле gpx везде отсутствуют ведущие нули в числовых значениях. Что конечно может и допустимо, но только странно, ибо у меня писалось до последнего запуска всё с ведущими нулями.

Впрочем, изменения в репо всё же внёсу, сделаю получение текста ошибки и выдачу его в виде исключения. А то запускать верификатор gpx на этом треке бессмысленно, ибо он основан на xerces и (если поправить ссылку на SasGpxExtensionsv1.xsd) сообщает только о незаконном теге speed.
(0005344)
Tolik (manager)
05-02-2012 17:07

Так давайте включим эти херсы в дистрибутив и закроем вопрос.
Ну и что, что лишние 2 мб. При нынешних ценах на интернет и на диски это не имеет значения.
(0005345)
Tolik (manager)
05-02-2012 17:08
edited on: 05-02-2012 17:09

Я думаю, этот парсер падает от того, что в региональных настройках у вас десятичная запятая, а не точка. У меня вот не падает (у меня точка).

(0005346)
vasketsov (manager)
05-02-2012 17:11

Пусть пункт повисит, не закрывайте. Глаза мне помозолит. Погляжу может чего в провайдере подкрутить можно. А xerces можно будет включить в новый релиз, реально не вижу смысла совать его в ночнушки.
(0005347)
vasketsov (manager)
05-02-2012 18:08

Отключил (только для msxml) дополнительные проверки (валидатор) при загрузке файла xml. На приаттаченном файле msxml стал работать.
(0005348)
Tolik (manager)
05-02-2012 18:31

А гипотезу про региональные настройки проверили?
(0005351)
vasketsov (manager)
05-02-2012 19:55

Региональные настройки влияли только на обрезание ведущих нулей в числах в логе gpx. Там был мой глупый косяк, что я сравнивал разделитель с текущим системным, а не с тем, который использовался строчкой выше для конвертации. Заодно ещё в паре мест поправил.
(0005352)
Tolik (manager)
06-02-2012 04:29

Ну, ведущие нули не очень-то и нужны, наверно.
А дурацкая идея мелкомягких сделать для России десятичную запятую очень часто приводит к проблемам. Когда я был маленький, :) все отлично знали: на компьютере надо писать через точку. И все были довольны, никаких проблем это не вызывало. А вот молодое поколение часто даже не догадывается, что бывают нерусские форточки и другие (правильные!) региональные настройки.

Так что, проблема решена?
Да ладно, закрывайте сами, когда считаете нужным.

- Users who viewed this issue
User List Anonymous (2217x)
Total Views 2217
Last View 20-04-2024 12:09

- Issue History
Date Modified Username Field Change
05-02-2012 05:05 rudepravo New Issue
05-02-2012 05:05 rudepravo File Added: track_with_fault.zip
05-02-2012 06:06 Tolik Note Added: 0005334
05-02-2012 06:09 Tolik Note Edited: 0005334 View Revisions
05-02-2012 08:58 rudepravo Note Added: 0005335
05-02-2012 09:17 zed Note Added: 0005336
05-02-2012 12:00 vasketsov Note Added: 0005337
05-02-2012 12:05 vasketsov Assigned To => vasketsov
05-02-2012 12:05 vasketsov Status new => assigned
05-02-2012 17:07 vasketsov Note Added: 0005343
05-02-2012 17:07 Tolik Note Added: 0005344
05-02-2012 17:08 Tolik Note Added: 0005345
05-02-2012 17:09 Tolik Note Edited: 0005345 View Revisions
05-02-2012 17:11 vasketsov Note Added: 0005346
05-02-2012 18:08 vasketsov Note Added: 0005347
05-02-2012 18:31 Tolik Note Added: 0005348
05-02-2012 19:55 vasketsov Note Added: 0005351
06-02-2012 04:29 Tolik Note Added: 0005352
06-02-2012 08:39 vasketsov Status assigned => resolved
06-02-2012 08:39 vasketsov Fixed in Version => .Nightly
06-02-2012 08:39 vasketsov Resolution open => fixed
06-02-2012 08:44 Tolik Fixed in Version .Nightly => 120808
06-02-2012 08:44 Tolik Target Version => 120808
29-02-2012 11:41 gpsMax Tag Attached: gpx
29-02-2012 11:41 gpsMax Tag Attached: локаль
29-02-2012 11:41 gpsMax Tag Attached: региональные настройки
10-10-2012 11:48 Tolik Status resolved => closed



Copyright © 2007 - 2024 SAS.Planet Team