Hi all,

when playing with some WMS services I noticed that QLGT's behaviour sometimes 
is not optimal.  For example, if the GDAL XML file points to a server which is 
down, GDAL will time-out for *every* raster band in *every* tile.  During this 
period, QLGT is simply unresponsive, and the period can be *very* long.  The 
only resort is to kill it...

The best approach would probably to put the GDAL operation into a thread, but 
if I understand the QThread docs correctly, it's not possible to send a signal 
to the thread (like pthread_kill()) as to cleanly terminate it early.  
Furthermore, apparently the thread may not access widgets.

Maybe the second best approach is to install a GDAL error handler which throws an 
exception.  Attached is a *very* rough attempt for that.  It terminates  
CMapGeoTiff::draw early if the wms access fails, but unfortunately src/CMapDB.cpp seems 
to be the wrong place (i.e. to deep in the chain) - still gets called many times.  Maybe 
it is possible to "disable" the map once /one/ exception occurred, but I have 
no clue where...

How should this case be handled properly?  What do you think about the 
"exception" approach?

Best, Albrecht.

Attachment: gdal_error.tar.gz
Description: application/compressed-tar

Attachment: pgpJaqn4aF8oo.pgp
Description: PGP signature

------------------------------------------------------------------------------
All of the data generated in your IT infrastructure is seriously valuable.
Why? It contains a definitive record of application performance, security 
threats, fraudulent activity, and more. Splunk takes this data and makes 
sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-d2d-c2
_______________________________________________
Qlandkartegt-users mailing list
Qlandkartegt-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/qlandkartegt-users

Reply via email to