[GRASS-dev] gis.m crashes on zoom-out

Hamish hamish_nospam at yahoo.com
Thu Apr 5 02:30:30 EDT 2007


Hi,

found a bug in gis.m zoom out tool.

start gis.m, select zoom out, draw a box, and poof! gis.m crashes.

happens always in a lat long location when you zoom out past 90NS 180EW
view or a bit harder to trigger in spearfish, but crashes on the 4th or
5th zoom out when the rows*cols gets to be something silly like 500e6*500e6.


presumably g.region exits with an error which isn't handled well.


testing with a few revisions of mapcanvas.tcl:
(the oldest error handling gives the most useful debug info here)


mapcanvas.tcl rev <= 1.57:

popup window:
ERROR: <n=541> ** invalid input **
ERROR: <n=541> ** invalid input **
    while executing
"close $input"
    (procedure "MapCanvas::runprograms" line 40)
    invoked from within
"MapCanvas::runprograms $mon [expr {$mymodified != 0}]"
    (procedure "MapCanvas::drawmap" line 38)
[...]

mapcanvas.tcl rev 1.58, .59:

popup window:
child process exited abnormally
child process exited abnormally
    while executing
"close $input"
    (procedure "MapCanvas::runprograms" line 40)
    invoked from within
"MapCanvas::runprograms $mon [expr {$mymodified != 0}]"
    (procedure "MapCanvas::drawmap" line 38)
[...]

mapcanvas.tcl rev 1.60 and newer:

gis.m crashes completely with "child process exited abnormally" printed
at the terminal prompt.



6.2.1 spearfish + huge region gives this error:
ERROR: Invalid region: North must be larger than South
ERROR: Invalid region: North must be larger than South
    while executing
"close $input"
    (procedure "MapCanvas::runprograms" line 39)
    invoked from within
"MapCanvas::runprograms $mon [expr {$mymodified != 0}]"
    (procedure "MapCanvas::drawmap" line 38)


6.2.1 lat/lon + beyond 90NS gives this error:
ERROR: <n=491.58331367> ** invalid input **
ERROR: <n=491.58331367> ** invalid input **
    while executing
"close $input"
    (procedure "MapCanvas::runprograms" line 39)
    invoked from within
"MapCanvas::runprograms $mon [expr {$mymodified != 0}]"
    (procedure "MapCanvas::drawmap" line 38)


Hamish
(away for the next week+)




More information about the grass-dev mailing list