SASGIS - SAS.Планета
View Issue Details
0001808SAS.Планета[All Projects] Багpublic03-02-2013 20:0103-02-2013 20:01
vasketsov 
vdemidov 
normalminoralways
resolvedfixed 
WindowsVistaUltimate
110418 
131111131111 
0001808: При ошибке доступа к прокси, ошибка в обработке ошибки для случая URL с символами процента (kosmosnimki)
Описание (чего я написал vdemidov-у):

В строке 350 в даунлоадере (при невозможности подключения к локальному прокси) BuildLoadErrorByUnknownReason зовётся без параметров []. Текст исключения типа: 'Не удается установить связь с сервером - URL:http://127.0.0.1:6666/TileSender.ashx?ModeKey=tile&MapName=1D30C72D02914C5FB90D1D448159CAB6&LayerName=C9458F2DCB754CEEACC54216C7D1EB0A&key=Ziu6TPYb5bPGbzlMGJvEZW9aC%2BYgOPqEXyTtc%2FFzrigkewPGSWWdyNRVV3hxbKprIr1J7K8jXKpeEuTkmomVn1AUbkLajGQDqsAnKntbkhDtmVuIYVdBKwH%2Br%2BDot55QmYj4wsQcst33J4zRjQlbGg%3D%3D&x=29&y=49&z=8'

Как видишь - в УРЛе есть проценты. Так вот лишние проценты и стреляют. При любом количестве аргументов всегда может быть УРЛ, где будет больше процентов. Варианта принципиально тут два, либо сам УРЛ в итоге пропихивать как аргумент через %s (и тянуть с самого места возникновения текст и аргументы), либо конкретно для этого вызова проверить наличие параметров: if Length(FErrorTextArgs)>0 then Я в итоге добавил второй вариант, но лишь бы не вставало лишний раз при отладке. Гарантии, как сейчас сделано (2 разнесённых вызова Format), что всегда будет работать - никакой (как только до второго формата УРЛ попадает в строку). Поэтому и сделал, что при except просто покажется оригинальный текст.

Ещё раз обращаю внимание, что если кинуть исключение оттуда - на тайле вообще ничего не покажется (если скачивать по одному тайлу кликом). Что самый наихудший вариант. Поэтому основная предпосылка - оттуда нельзя кидать исключения. Поэтому except там должен быть в любой версии, а не только в дебажной.
Для URL с символами % указать например недоступный локальный адрес и порт. В моём случае я просто забыл поднять локальный перловый прокси-сервер. Ну и ткнуться мышой скачать один тайл. Под отладчиком всё отлично видно ))
No tags attached.
Issue History
03-02-2013 20:01vasketsovNew Issue
03-02-2013 20:01vasketsovStatusnew => assigned
03-02-2013 20:01vasketsovAssigned To => vdemidov
03-02-2013 20:01vasketsovStatusassigned => resolved
03-02-2013 20:01vasketsovFixed in Version => 131111
03-02-2013 20:01vasketsovResolutionopen => fixed

There are no notes attached to this issue.