Wed, Aug 30 2006
17:13:30
|
|
Request created by guest
|
|
Subject: gis.m: freeze when zooming on Map Display 2 while Map Display 1 is being
refreshed
Platform: GNU/Linux/x86
grass obtained from: CVS
grass binary for platform: Compiled from Sources
GRASS Version: 2006-08-29
In spearfish60.
1. $ grass63 -text
2. $ g.region rast=slope res=1 -a
(setting res to 1 to slow down the display to make the bug easy to reproduce)
3. $ gis.m
4. add some raster, display it
5. start Map Display 2, add another raster
6. refresh Map Display 2 and try to press 'zoom in' on Map Display 1 while Map
Display 2 is being refreshed - the outcome is:
error renaming "/home/grassdata/spearfish60/sieczka/.tmp/sorbus/15530.0.ppm":
no such file or directory
error renaming "/home/grassdata/spearfish60/sieczka/.tmp/sorbus/15530.0.ppm":
no such file or directory
while executing
"file rename -force $mapfile($mon) $lfile($id)"
(procedure "GmCommonLayer::display_commands" line 31)
invoked from within
"GmCommonLayer::display_commands $namespace $id [list $cmd]"
(procedure "GmCommonLayer::display_command" line 2)
invoked from within
"GmCommonLayer::display_command [namespace current] $id $cmd"
(procedure "GmRaster::display" line 71)
invoked from within
"GmRaster::display $node $mod"
("raster" arm line 2)
invoked from within
"switch $type {
group {
GmGroup::display $node $mod
}
raster {
GmRaster::display $node $mod
}
labels {
GmLabels::disp..."
(procedure "GmTree::display_node" line 7)
invoked from within
"GmTree::display_node $n $mod"
(procedure "GmGroup::display" line 25)
invoked from within
"GmGroup::display "root" $mod"
(procedure "MapCanvas::runprograms" line 69)
invoked from within
"MapCanvas::runprograms $mon [expr {$mymodified != 0}]"
(procedure "MapCanvas::drawmap" line 38)
invoked from within
"MapCanvas::drawmap $mon"
(procedure "MapCanvas::display_server" line 9)
invoked from within
"MapCanvas::display_server"
("after" script)
gis.m freezes, I have to kill -9 it's wish.
I'm not saying that zooming on one display while the other is being refreshed
must work (I don't think it is critical), but if the user tries to do such a
thing (it's likely - the refresh takes long on Map Display 1, so he decides to
use Map Display 2 in the meantime) it cannot result in a complete freeze of gis.m.
Maciek
|
|
Wed, Aug 30 2006
18:42:06
|
|
Mail sent by glynn@gclements.plus.com
|
|
Return-Path |
<glynn@gclements.plus.com>
|
Delivered-To |
grass-bugs@lists.intevation.de
|
From |
Glynn Clements <glynn@gclements.plus.com>
|
MIME-Version |
1.0
|
Content-Type |
text/plain; charset=us-ascii
|
Content-Transfer-Encoding |
7bit
|
Message-ID |
<17653.49114.536287.133874@cerise.gclements.plus.com>
|
Date |
Wed, 30 Aug 2006 17:42:02 +0100
|
To |
Request Tracker <grass-bugs@intevation.de>
|
Cc |
grass-dev@grass.itc.it
|
Subject |
Re: [GRASS-dev] [bug #5076] (grass) gis.m: freeze when zooming on Map Display 2 while Map Display 1 is being refreshed
|
In-Reply-To |
<20060830151330.402501006BC@lists.intevation.de>
|
References |
<20060830151330.402501006BC@lists.intevation.de>
|
X-Mailer |
VM 7.07 under 21.4 (patch 15) "Security Through Obscurity" XEmacs Lucid
|
X-Virus-Scanned |
by amavisd-new at intevation.de
|
X-Spam-Status |
No, hits=-5 tagged_above=-999 required=3 tests=[BAYES_00=-5]
|
X-Spam-Level |
|
Request Tracker wrote:
> this bug's URL: http://intevation.de/rt/webrt?serial_num=5076
> -------------------------------------------------------------------------
>
> Subject: gis.m: freeze when zooming on Map Display 2 while Map Display 1 is
being refreshed
>
> Platform: GNU/Linux/x86
> grass obtained from: CVS
> grass binary for platform: Compiled from Sources
> GRASS Version: 2006-08-29
>
> In spearfish60.
>
> 1. $ grass63 -text
> 2. $ g.region rast=slope res=1 -a
> (setting res to 1 to slow down the display to make the bug easy to reproduce)
>
> 3. $ gis.m
> 4. add some raster, display it
> 5. start Map Display 2, add another raster
> 6. refresh Map Display 2 and try to press 'zoom in' on Map Display 1 while
Map Display 2 is being refreshed - the outcome is:
>
> error renaming "/home/grassdata/spearfish60/sieczka/.tmp/sorbus/15530.0.ppm":
no such file or directory
> error renaming "/home/grassdata/spearfish60/sieczka/.tmp/sorbus/15530.0.ppm":
no such file or directory
> gis.m freezes, I have to kill -9 it's wish.
>
> I'm not saying that zooming on one display while the other is being
> refreshed must work (I don't think it is critical), but if the user
> tries to do such a thing (it's likely - the refresh takes long on Map
> Display 1, so he decides to use Map Display 2 in the meantime) it
> cannot result in a complete freeze of gis.m.
It's likely that something is calling update when it probably
shouldn't. The gronsole code is the first place I'd look.
Just in case I haven't already made this point often enough in
relation to NVIZ: calling Tcl's "update" function is REALLY dangerous.
Unless you are going to check every single event handler to ensure
that:
a) the event handler will operate correctly when called at that point, AND
b) executing the event handler will not interfere with the code which
called update,
then: DON'T call "update".
--
Glynn Clements <glynn@gclements.plus.com>
|
|
Wed, Aug 30 2006
18:50:06
|
|
Mail sent by michael.barton@asu.edu
|
|
Return-Path |
<michael.barton@asu.edu>
|
Delivered-To |
grass-bugs@lists.intevation.de
|
User-Agent |
Microsoft-Entourage/11.2.5.060620
|
Date |
Wed, 30 Aug 2006 09:49:56 -0700
|
Subject |
Re: [GRASS-dev] [bug #5076] (grass) gis.m: freeze when zooming on Map Display 2 while Map Display 1 is being refreshed
|
From |
Michael Barton <michael.barton@asu.edu>
|
To |
Paolo Cavallini via RT <grass-bugs@intevation.de>, <grass-dev@grass.itc.it>
|
Message-ID |
<C11B0FC4.23F74%michael.barton@asu.edu>
|
Thread-Topic |
[GRASS-dev] [bug #5076] (grass) gis.m: freeze when zooming on Map Display 2 while Map Display 1 is being refreshed
|
Thread-Index |
AcbMVFJ+kQKXljhHEduAzAAUUSYxwg==
|
In-Reply-To |
<20060830151330.402501006BC@lists.intevation.de>
|
Mime-version |
1.0
|
Content-type |
text/plain; charset="US-ASCII"
|
Content-transfer-encoding |
7bit
|
X-Virus-Scanned |
by amavisd-new
|
X-Virus-Scanned |
by amavisd-new at intevation.de
|
X-Spam-Status |
No, hits=-3.752 tagged_above=-999 required=3 tests=[BAYES_00=-5, RCVD_NUMERIC_HELO=1.248]
|
X-Spam-Level |
|
I just added error trapping for trying to re-render 2 maps simultaneously.
What happens now is that the slower-rendering map just doesn't get rendered
and you have to click the render button again.
Michael
__________________________________________
Michael Barton, Professor of Anthropology
School of Human Evolution & Social Change
Center for Social Dynamics and Complexity
Arizona State University
phone: 480-965-6213
fax: 480-965-7671
www: http://www.public.asu.edu/~cmbarton
> From: Request Tracker <grass-bugs@intevation.de>
> Reply-To: Request Tracker <grass-bugs@intevation.de>
> Date: Wed, 30 Aug 2006 17:13:30 +0200 (CEST)
> To: <grass-dev@grass.itc.it>
> Subject: [GRASS-dev] [bug #5076] (grass) gis.m: freeze when zooming on Map
> Display 2 while Map Display 1 is being refreshed
>
> this bug's URL: http://intevation.de/rt/webrt?serial_num=5076
> -------------------------------------------------------------------------
>
> Subject: gis.m: freeze when zooming on Map Display 2 while Map Display 1 is
> being refreshed
>
> Platform: GNU/Linux/x86
> grass obtained from: CVS
> grass binary for platform: Compiled from Sources
> GRASS Version: 2006-08-29
>
> In spearfish60.
>
> 1. $ grass63 -text
> 2. $ g.region rast=slope res=1 -a
> (setting res to 1 to slow down the display to make the bug easy to reproduce)
>
> 3. $ gis.m
> 4. add some raster, display it
> 5. start Map Display 2, add another raster
> 6. refresh Map Display 2 and try to press 'zoom in' on Map Display 1 while
Map
> Display 2 is being refreshed - the outcome is:
>
> error renaming "/home/grassdata/spearfish60/sieczka/.tmp/sorbus/15530.0.ppm":
> no such file or directory
> error renaming "/home/grassdata/spearfish60/sieczka/.tmp/sorbus/15530.0.ppm":
> no such file or directory
> while executing
> "file rename -force $mapfile($mon) $lfile($id)"
> (procedure "GmCommonLayer::display_commands" line 31)
> invoked from within
> "GmCommonLayer::display_commands $namespace $id [list $cmd]"
> (procedure "GmCommonLayer::display_command" line 2)
> invoked from within
> "GmCommonLayer::display_command [namespace current] $id $cmd"
> (procedure "GmRaster::display" line 71)
> invoked from within
> "GmRaster::display $node $mod"
> ("raster" arm line 2)
> invoked from within
> "switch $type {
> group {
> GmGroup::display $node $mod
> }
> raster {
> GmRaster::display $node $mod
> }
> labels {
> GmLabels::disp..."
> (procedure "GmTree::display_node" line 7)
> invoked from within
> "GmTree::display_node $n $mod"
> (procedure "GmGroup::display" line 25)
> invoked from within
> "GmGroup::display "root" $mod"
> (procedure "MapCanvas::runprograms" line 69)
> invoked from within
> "MapCanvas::runprograms $mon [expr {$mymodified != 0}]"
> (procedure "MapCanvas::drawmap" line 38)
> invoked from within
> "MapCanvas::drawmap $mon"
> (procedure "MapCanvas::display_server" line 9)
> invoked from within
> "MapCanvas::display_server"
> ("after" script)
>
> gis.m freezes, I have to kill -9 it's wish.
>
> I'm not saying that zooming on one display while the other is being refreshed
> must work (I don't think it is critical), but if the user tries to do such
a
> thing (it's likely - the refresh takes long on Map Display 1, so he decides
to
> use Map Display 2 in the meantime) it cannot result in a complete freeze of
> gis.m.
>
> Maciek
>
>
> -------------------------------------------- Managed by Request Tracker
>
>
|
|
Thu, Aug 31 2006
17:20:34
|
|
Mail sent by msieczka
|
|
michael.barton@asu.edu wrote (Wed, Aug 30 2006 18:50:06):
> I just added error trapping for trying to re-render 2 maps simultaneously.
> What happens now is that the slower-rendering map just doesn't get rendered
> and you have to click the render button again.
I'm affraid it's still not fully fixed. Another error is issued now for the
same case:
bad window path name ".help_shell"
bad window path name ".help_shell"
while executing
"winfo reqwidth $_top"
(procedure "DynamicHelp::_show_help" line 22)
invoked from within
"DynamicHelp::_show_help .mapcan(1).mf.topf.tb0.zoomin 177 67"
("after" script)
And when I try to refresh display on Map Display 2 after this error, I get
another error:
couldn't open "15123.4.ppm": no such file or directory
couldn't open "15123.4.ppm": no such file or directory
while executing
"image create photo mapimg.$mon -file "$outfile($mon)""
(procedure "MapCanvas::composite" line 20)
invoked from within
"MapCanvas::composite $mon"
(procedure "MapCanvas::drawmap" line 40)
invoked from within
"MapCanvas::drawmap $mon"
(procedure "MapCanvas::display_server" line 9)
invoked from within
"MapCanvas::display_server"
("after" script)
Refreshing the Map Display 2 the second time doesn't trigger any action...
But luckily gis.m doesn't freeze anymore now :).
Maciek
|
|
Fri, Sep 22 2006
21:43:32
|
|
Status changed to resolved by msieczka
|
|
Fri, Sep 22 2006
21:43:32
|
|
Mail sent by msieczka
|
|
The bug is fixed (some time ago). Thanks Michael!
Maciek
|
|