Details Ticket 4377


Comment | Reply | Resolve


Serial Number 4377
Subject NVIZ: save state with points map
Area grass6
Queue grass
Requestors bcovill@tekmap.ns.ca,hamish_nospam@yahoo.com
Owner mcuomo
Status open
Last User Contact Sun Jun 11 14:26:44 2006 (2 yr ago)
Current Priority 30
Final Priority 70
Due No date assigned
Last Action Mon Jun 12 08:47:18 2006 (2 yr ago)
Created Wed May 3 15:56:22 2006 (2 yr ago)

Transaction History Ticket 4377


Wed, May 3 2006 15:56:22    Request created by hamish_nospam@yahoo.com  
Return-Path <hamish_nospam@yahoo.com>
Delivered-To grass-bugs@lists.intevation.de
Date Thu, 4 May 2006 01:56:05 +1200
From Hamish <hamish_nospam@yahoo.com>
To Bob Covill <bcovill@tekmap.ns.ca>
Cc grass5@grass.itc.it, grass-bugs@intevation.de
Subject Re: [GRASS5] NVIZ image dump broken?
Message-Id <20060504015605.02b07422.hamish_nospam@yahoo.com>
In-Reply-To <1146657653.6304.11.camel@linuxmain.localhost>
References <20060502163821.GA25158@bartok.itc.it> <20060503183453.608a50ae.hamish_nospam@yahoo.com> <20060503071052.GA15014@bartok.itc.it> <20060503221409.3d7cd830.hamish_nospam@yahoo.com> <20060503101832.GG15014@bartok.itc.it> <1146657653.6304.11.camel@linuxmain.localhost>
X-Mailer Sylpheed version 1.0.4 (GTK+ 1.2.10; i386-pc-linux-gnu)
X-Face M<EoB)"*Z~u!,vFhXmw}R_KbdBta*P_=T|rbBL'e1/CQ9;/1g\BU3&!=y8ria$2Uk!HT&BB 8i?|X_+7~1jsy}F~g$2va%3fV`*=L(*cem[@3\yg,G,@rg6/QMJ
Mime-Version 1.0
Content-Type text/plain; charset=US-ASCII
Content-Transfer-Encoding 7bit
X-Spam-Status No, hits=-4.0 tagged_above=-999.0 required=3.0 tests=BAYES_00, FORGED_YAHOO_RCVD
X-Spam-Level
> On a separate issue, I have found that with the recent NVIZ I get a
> segfault if I try to load a saved state or save a state if I have a
> vector/site file loaded. I assume this is due to the recent changes to
> the Sites panel, but I have not had time to investigate. If you can
> confirm, it should be added to the bugtracker.

Same here,

spearfish60:

nviz -q
Panel -> Vector points
New
bugsites
File -> Save State
filename
<ok>
segfault.


It happens in panel_site.c, proc Nviz_site_save (line 176), 
on this call:
	# useatt
	puts $file_hook "[Nsite$i get_att useatt]"

which takes us to get_att() in src/map_obj.c line 1516.

then in
    case SITE:{
        case SV_ATT_USEATT:

it tries  atoi(argv[3]) but there is no 4th arguement to convert:

 argc=3
  argv[0]=[Nsite21720]
  argv[1]=[get_att]
  argv[2]=[useatt]
  argv[3]=[(null)]


The atoi() is trying to fetch the attribute number for this:
int site_attr_get(Tcl_Interp *interp, geosite * gp, int nattr)
{
        char buf[1024];

        sprintf(buf, "%d", gp->use_attr[nattr]);

        Tcl_AppendElement(interp, buf);
        return(TCL_OK);
}


If I change argv[3] to argv[2] it gets rid of the segfault, but I don't
know if that is the intended logic.




Hamish


Wed, May 3 2006 16:00:16    Area changed to grass6 by hbowman  
Wed, May 3 2006 16:00:44    Subject changed to NVIZ: segfault on save state with points map by hbowman  
Wed, May 3 2006 16:01:24    User changed to bcovill@tekmap.ns.ca,hamish_nospam@yahoo.com by hbowman  
Wed, May 3 2006 16:06:37    Comments added by hbowman  
> If I change argv[3] to argv[2] it gets rid of the segfault, but I don't
> know if that is the intended logic.

quite obviously not.. there are no numbers to convert in the argv[2] string.
Hamish
Wed, May 3 2006 16:31:57    Owner changed to mcuomo by mneteler  
Wed, May 3 2006 16:32:31    Mail sent by mneteler  
Hi,

maybe Massimo has an idea?

thanks
Markus
Thu, May 4 2006 15:09:24    Mail sent by m.cuomo@acsys.it  
Return-Path <m.cuomo@acsys.it>
Delivered-To grass-bugs@lists.intevation.de
Message-ID <4459FDE7.7060200@acsys.it>
Date Thu, 04 May 2006 15:13:11 +0200
From Massimo Cuomo <m.cuomo@acsys.it>
User-Agent Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.4.1) Gecko/20031030
X-Accept-Language en-us, en
MIME-Version 1.0
To Markus Neteler via RT <grass-bugs@intevation.de>
Cc Markus Neteler <neteler@itc.it>
Subject Re: [bug #4377] (grass) Transaction (mneteler)
References <20060503143232.066D91005CC@lists.intevation.de>
In-Reply-To <20060503143232.066D91005CC@lists.intevation.de>
Content-Type text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding 7bit
X-Spam-Status No, hits=-4.9 tagged_above=-999.0 required=3.0 tests=BAYES_00
X-Spam-Level
Yes I think so.
I'll try to correct it ASAP.
Massimo

Markus Neteler via RT wrote:
> this bug's URL: http://intevation.de/rt/webrt?serial_num=4377
> 
> Wed, May 3 2006 16:32:31: Request 4377 was acted upon.
> 
>  Transaction: Mail sent by mneteler
>  
>        Queue: grass
>         Area: grass6               
>      Subject: NVIZ: segfault on save state with points map
>        Owner: mcuomo
>   Requestors: bcovill@tekmap.ns.ca,hamish_nospam@yahoo.com    
>       Status: open
> 
> -------------------------------------------------------------------------
> Hi,
> 
> maybe Massimo has an idea?
> 
> thanks
> Markus
> 
> -------------------------------------------- Managed by Request Tracker
> 


Thu, May 4 2006 17:35:35    Mail sent by guest  
Please Hamish, don't change argv[3] in agrv[2] in map_obj.c: it will cause
severe malfunctions.

An immediate workaround is instead to comment in panel site.tcl

line 234 in function Nviz_site_save
#	puts $file_hook "[Nsite$i get_att useatt]"

and lines 291 and 292 in function Nviz_site_load
#	gets $file_hook att_data
#	$new_site set_att useatt $att_data

This way the "useatt" status won't be saved and loaded: I tested and it worked
fine.

As it is the first time I participate to a process like this, I don't know if
I have to change the lines by myself or replying to this is enough.
Please help me on this.

Now I face the more difficult situation of trying to save a very complex state
like the one for multiple attributes and DB indexes. I'll see what I can do.
Ciao,
        Massimo
Thu, May 4 2006 17:52:42    Mail sent by guest  
Please Hamish, don't change argv[3] in agrv[2] in map_obj.c: it will cause
severe malfunctions.

An immediate workaround is instead to comment in panel site.tcl

line 234 in function Nviz_site_save
#	puts $file_hook "[Nsite$i get_att useatt]"

and lines 291 and 292 in function Nviz_site_load
#	gets $file_hook att_data
#	$new_site set_att useatt $att_data

This way the "useatt" status won't be saved and loaded: I tested and it worked
fine.

As it is the first time I participate to a process like this, I don't know if
I have to change the lines by myself or replying to this is enough.
Please help me on this.

Now I face the more difficult situation of trying to save a very complex state
like the one for multiple attributes and DB indexes. I'll see what I can do.
Ciao,
        Massimo
Fri, Jun 9 2006 09:56:48    Mail sent by hbowman  
> An immediate workaround is instead to comment in panel site.tcl
..
> line 234 in function Nviz_site_save
..
> and lines 291 and 292 in function Nviz_site_load

done.

> As it is the first time I participate to a process like this, I don't know
> if I have to change the lines by myself

If you are confident in the change, please do. I see you have CVS commit
access. If it is a tricky change or one that affects other parts of the
system it is good to post to the grass-dev mailing list for other eyes to
see. (use the cc field in the bug reply window)


> or replying to this is enough. Please help me on this.

It is a quirk of our bug tracker that you have to hit "reply" in order for
the other/reporting party to be notified there is something new. I have 
just now found your reply after a month! This is not your fault, it needs to
be better documented somewhere.

"Comment" is useful for leaving notes that are interesting only to
someone reading the bug history so I don't like the idea of removing it.



For easy patches what you posted was fine. For complicated ones please send
a "unidiff" (diff -u) patch against the most recent CVS version of the file,
*as an attachment*. (if inline the email often the lines get wrapped at 80col)
e.g., in ~/.cvsrc

-z3
diff -u
update -dP


There is no need to leave in comments like this in the actual code:

# modified by Hamish  9 June 2006

as it clutters the code and the CVS log catches that information very well:
http://freegis.org/cgi-bin/viewcvs.cgi/grass6/visualization/nviz/scripts/panel_site.tcl
thanks for the quick reply, sorry for the long delay in implementing it!

Hamish
Sun, Jun 11 2006 14:26:44    Mail sent by msieczka  
What is the bug status? Was the fix applied? Close it?

Maciek
Mon, Jun 12 2006 08:10:56    Subject changed to NVIZ: save state with points map by hbowman  
Mon, Jun 12 2006 08:47:18    Mail sent by hamish_nospam@yahoo.com  
Return-Path <hamish_nospam@yahoo.com>
Delivered-To grass-bugs@lists.intevation.de
Date Mon, 12 Jun 2006 18:11:29 +1200
From Hamish <hamish_nospam@yahoo.com>
To Maciek Sieczka via RT <grass-bugs@intevation.de>
Subject Re: [bug #4377] (grass) NVIZ: segfault on save state with points map
Message-Id <20060612181129.377ec5ce.hamish_nospam@yahoo.com>
In-Reply-To <20060611122644.566E21006A9@lists.intevation.de>
References <20060611122644.566E21006A9@lists.intevation.de>
X-Mailer Sylpheed version 1.0.4 (GTK+ 1.2.10; i386-pc-linux-gnu)
X-Face M<EoB)"*Z~u!,vFhXmw}R_KbdBta*P_=T|rbBL'e1/CQ9;/1g\BU3&!=y8ria$2Uk!HT&BB 8i?|X_+7~1jsy}F~g$2va%3fV`*=L(*cem[@3\yg,G,@rg6/QMJ
Mime-Version 1.0
Content-Type text/plain; charset=US-ASCII
Content-Transfer-Encoding 7bit
X-Spam-Status No, hits=0.5 tagged_above=-999.0 required=3.0 tests=FORGED_YAHOO_RCVD
X-Spam-Level
Maciek Sieczka wrote:
> What is the bug status? Was the fix applied? Close it?

An immediate workaround is now in CVS so the severity is lessened, but
the underlying problem remains. I've renamed it now.


Hamish


Comment | Reply | Resolve

You are currently authenticated as guest.
[Show Configuration] [Login as another user]

Users Guide - Mail Commands - Homepage of RequestTracker 1.0.7 - list any request