Details Ticket 4924


Comment | Reply | Resolve


Serial Number 4924
Subject missing quoted path vars in init.sh
Area grass6
Queue grass
Requestors kyngchaos@kyngchaos.com,tutey@o2.pl
Owner mneteler
Status open
Last User Contact Thu May 10 17:51:42 2007 (1 yr ago)
Current Priority 30
Final Priority 70
Due No date assigned
Last Action Sat May 12 17:32:09 2007 (1 yr ago)
Created Sat Jul 29 19:46:15 2006 (2 yr ago)

Transaction History Ticket 4924


Sat, Jul 29 2006 19:46:15    Request created by guest  
Subject: missing quoted path vars in init.sh

Platform: Mac OSX
grass obtained from: Trento Italy site
grass binary for platform: Compiled from Sources
GRASS Version: 6.1 CVS

A few path variables are not quoted in Init.sh (mainly GISBASE).  If GRASS is
installed in a location 
with spaces in the path (very possible with OS X), the path to GRASS gets messed
up and GRASS won't 
run.

This diff I think takes care of everything (I hope the posting doesn't mess it
up):

--- init.sh.orig	2006-07-28 23:20:06.000000000 -0500
+++ init.sh	2006-07-29 12:42:10.000000000 -0500
@@ -146,7 +146,7 @@
 export GRASS_GUI
 
 # Set PATH to GRASS bin, ETC to GRASS etc
-ETC=$GISBASE/etc
+ETC="$GISBASE/etc"
 
 if [ "$LC_ALL" ] ; then
 	LCL=`echo "$LC_ALL" | sed 's/\(..\)\(.*\)/\1/'`
@@ -165,13 +165,13 @@
 
 # Set LD_LIBRARY_PATH to find GRASS shared libraries
 if [ ! "$LD_LIBRARY_PATH_VAR" ] ; then
-  LD_LIBRARY_PATH_VAR=$GISBASE/lib
+  LD_LIBRARY_PATH_VAR="$GISBASE/lib"
 else
-  LD_LIBRARY_PATH_VAR=$GISBASE/lib:$LD_LIBRARY_PATH_VAR
+  LD_LIBRARY_PATH_VAR="$GISBASE/lib:$LD_LIBRARY_PATH_VAR"
 fi
 export LD_LIBRARY_PATH_VAR
 # Additional copy of variable to use with grass-run.sh
-GRASS_LD_LIBRARY_PATH=$LD_LIBRARY_PATH_VAR
+GRASS_LD_LIBRARY_PATH="$LD_LIBRARY_PATH_VAR"
 export GRASS_LD_LIBRARY_PATH
 
 # Once the new environment system is committed we can delete these lines
@@ -576,7 +576,7 @@
 LOCATION_NAME=`g.gisenv LOCATION_NAME`
 MAPSET=`g.gisenv MAPSET`
 
-LOCATION=${GISDBASE?}/${LOCATION_NAME?}/${MAPSET?}
+LOCATION="${GISDBASE?}/${LOCATION_NAME?}/${MAPSET?}"
 
 # Check for concurrent use
 lockfile="$LOCATION/.gislock"

Sun, Jul 30 2006 19:21:04    Mail sent by msieczka  
Hi,

Glynn has committed a fix few hours ago. Can you check it and report back?

Thanks
Maciek
Sun, Jul 30 2006 19:21:20    User changed to kyngchaos@kyngchaos.com,tutey@o2.pl by msieczka  
Sun, Jul 30 2006 19:53:33    Mail sent by kyngchaos@kyngchaos.com  
Return-Path <kyngchaos@kyngchaos.com>
Delivered-To grass-bugs@lists.intevation.de
In-Reply-To <20060730172104.548FC1005BE@lists.intevation.de>
References <20060730172104.548FC1005BE@lists.intevation.de>
Mime-Version 1.0 (Apple Message framework v752.2)
Content-Type text/plain; charset=US-ASCII; delsp=yes; format=flowed
Message-Id <3753A5DE-93C8-422D-B70A-D937CC459DA6@kyngchaos.com>
Cc Maciek Sieczka <werchowyna@epf.pl>, Glynn Clements <glynn@gclements.plus.com>
Content-Transfer-Encoding 7bit
From William Kyngesburye <kyngchaos@kyngchaos.com>
Subject Re: [bug #4924] (grass) missing quoted path vars in init.sh
Date Sun, 30 Jul 2006 12:53:23 -0500
To grass-bugs@intevation.de
X-Mailer Apple Mail (2.752.2)
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
That's got the ones I found.  I did another scan and that looks like  
all of them.

Still having problems - it looks like there are some of those in  
gis.m also, but that's a bigger one to tackle.  I'll ask Michael  
about that.

Besides that, I have one case when exiting GRASS now (the '0Untitled'  
is supposed to be 0Untitled Folder', the full GISBASE is '/Users/ 
kyngchaos/Applications/0Untitled Folder/GRASS.app/Contents/MacOS'):

Closing monitors.....
sh: line 1: /Users/kyngchaos/Applications/0Untitled: No such file or  
directory
Cleaning up temporary files.....
done

I don't see anything at this point in exiting GRASS that might do  
that.  It happens whether I use the GUI or text startup, so it's not  
a part of gis.m's problem.


Sun, Jul 30 2006 22:38:17    Mail sent by mneteler  
The problem when closing monitors is related to d.mon. 
Apparently something isn't quoted properly to allow for
spaces in the lock file name of the monitor (or similar).

Markus
Sun, Jul 30 2006 23:08:17    Mail sent by kyngchaos@kyngchaos.com  
Return-Path <kyngchaos@kyngchaos.com>
Delivered-To grass-bugs@lists.intevation.de
In-Reply-To <20060730203817.E65E41005CA@lists.intevation.de>
References <20060730203817.E65E41005CA@lists.intevation.de>
Mime-Version 1.0 (Apple Message framework v752.2)
Content-Type text/plain; charset=US-ASCII; delsp=yes; format=flowed
Message-Id <F92E5581-D4DD-4133-9046-AF5E25FA5A56@kyngchaos.com>
Cc Markus Neteler <neteler@itc.it>
Content-Transfer-Encoding 7bit
From William Kyngesburye <kyngchaos@kyngchaos.com>
Subject Re: [bug #4924] (grass) missing quoted path vars in init.sh
Date Sun, 30 Jul 2006 16:08:08 -0500
To grass-bugs@intevation.de
X-Mailer Apple Mail (2.752.2)
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
Would that happen even when no monitors are open?  Where is the  
monitor lockfile stored?  not the application folder, maybe the grass  
DB?  That wouldn't have an affect on this case, since the DB has no  
spaces in its pathname.

d.mon is using the path to something in the GRASS application.  Even  
before quitting GRASS, I can't do anything with d.mon - 'd.mon -L' as  
in the exit code, 'd.mon x0', 'd.mon', all give that error:

sh: line 1: /Users/kyngchaos/Applications/0Untitled: No such file or  
directory

Should this bug be expanded/renamed to a more general path var  
quoting issue?  - search out issues like d.mon in commands, and  
include the same problem in gis.m/tcl?

> The problem when closing monitors is related to d.mon.
> Apparently something isn't quoted properly to allow for
> spaces in the lock file name of the monitor (or similar).


Sun, Jul 30 2006 23:10:00    Mail sent by neteler@itc.it  
Return-Path <neteler@itc.it>
Delivered-To grass-bugs@lists.intevation.de
Date Sun, 30 Jul 2006 23:09:56 +0200
From Markus Neteler <neteler@itc.it>
To GRASS developers list <grass-dev@grass.itc.it>
Cc grass-bugs@intevation.de
Subject Re: [bug #4924] (grass) missing quoted path vars in init.sh
Message-ID <20060730210956.GD29240@bartok.itc.it>
Mail-Followup-To GRASS developers list <grass-dev@grass.itc.it>, grass-bugs@intevation.de
References <20060730203817.E65E41005CA@lists.intevation.de> <F92E5581-D4DD-4133-9046-AF5E25FA5A56@kyngchaos.com>
Mime-Version 1.0
Content-Type text/plain; charset=us-ascii
Content-Disposition inline
In-Reply-To <F92E5581-D4DD-4133-9046-AF5E25FA5A56@kyngchaos.com>
X-PGP-Key http://www.gdf-hannover.de/neteler/markus_gpgkey.asc
X-PGP-Fingerprint D4D5 2F80 120E AD60 E2F6 2297 21B3 D02B E1E7 E789
User-Agent Mutt/1.5.11
X-Virus-Scanned by amavisd-new at intevation.de
X-Spam-Status No, hits=-3.797 tagged_above=-999 required=3 tests=[AWL=0.937, BAYES_00=-5, FORGED_RCVD_HELO=0.266]
X-Spam-Level
Maybe the list has an idea. Can't be too hard.
http://intevation.de/rt/webrt?serial_num=4924&display=History

Markus

On Sun, Jul 30, 2006 at 04:08:08PM -0500, William Kyngesburye wrote:
> Would that happen even when no monitors are open?  Where is the  
> monitor lockfile stored?  not the application folder, maybe the grass  
> DB?  That wouldn't have an affect on this case, since the DB has no  
> spaces in its pathname.
> 
> d.mon is using the path to something in the GRASS application.  Even  
> before quitting GRASS, I can't do anything with d.mon - 'd.mon -L' as  
> in the exit code, 'd.mon x0', 'd.mon', all give that error:
> 
> sh: line 1: /Users/kyngchaos/Applications/0Untitled: No such file or  
> directory
> 
> Should this bug be expanded/renamed to a more general path var  
> quoting issue?  - search out issues like d.mon in commands, and  
> include the same problem in gis.m/tcl?
> 
> >The problem when closing monitors is related to d.mon.
> >Apparently something isn't quoted properly to allow for
> >spaces in the lock file name of the monitor (or similar).
> 
> 


Wed, May 9 2007 19:29:21    Mail sent by mneteler  
Is this still an issue?

Markus
Wed, May 9 2007 20:01:10    Mail sent by kyngchaos@kyngchaos.com  
Return-Path <kyngchaos@kyngchaos.com>
Delivered-To grass-bugs@lists.intevation.de
In-Reply-To <20070509172921.A302F1006D0@lists.intevation.de>
References <20070509172921.A302F1006D0@lists.intevation.de>
Mime-Version 1.0 (Apple Message framework v752.3)
Content-Type text/plain; charset=US-ASCII; delsp=yes; format=flowed
Message-Id <22A57555-E8C1-4F79-BF01-4BEF6360E1E0@kyngchaos.com>
Cc Markus Neteler <neteler@itc.it>
Content-Transfer-Encoding 7bit
From William Kyngesburye <kyngchaos@kyngchaos.com>
Subject Re: [bug #4924] (grass) missing quoted path vars in init.sh
Date Wed, 9 May 2007 13:00:44 -0500
To Markus Neteler via RT <grass-bugs@intevation.de>
X-Mailer Apple Mail (2.752.3)
X-Virus-Scanned by amavisd-new at intevation.de
X-Spam-Status No, score=-5 tagged_above=-999 required=3.5 tests=[BAYES_00=-5]
X-Spam-Score -5
X-Spam-Level
One more I found - line 843.  I quoted the echoed PROMPT_COMMAND for  
the bash shell to get it to work:

     echo "PROMPT_COMMAND='$GISBASE/etc/prompt.sh'" >> "$bashrc"

I had to use single-quotes to get it to work.  I tried escaped double- 
quotes but I still got path splitting errors.  I decided not to  
commit this myself, in case the single quotes cause other problems  
(that fine detail is beyond my shell knowledge).


Wed, May 9 2007 21:12:05    Mail sent by kyngchaos@kyngchaos.com  
Return-Path <kyngchaos@kyngchaos.com>
Delivered-To grass-bugs@lists.intevation.de
In-Reply-To <20070509172921.A302F1006D0@lists.intevation.de>
References <20070509172921.A302F1006D0@lists.intevation.de>
Mime-Version 1.0 (Apple Message framework v752.3)
Content-Type text/plain; charset=US-ASCII; delsp=yes; format=flowed
Message-Id <44B089B2-43F8-4501-BDAC-087C9DEF9B16@kyngchaos.com>
Cc Markus Neteler <neteler@itc.it>
Content-Transfer-Encoding 7bit
From William Kyngesburye <kyngchaos@kyngchaos.com>
Subject Re: [bug #4924] (grass) missing quoted path vars in init.sh
Date Wed, 9 May 2007 14:11:38 -0500
To Markus Neteler via RT <grass-bugs@intevation.de>
X-Mailer Apple Mail (2.752.3)
X-Virus-Scanned by amavisd-new at intevation.de
X-Spam-Status No, score=-5 tagged_above=-999 required=3.5 tests=[BAYES_00=-5]
X-Spam-Score -5
X-Spam-Level
Argh, the single quoting isn't working either - I still get a no such  
file or dir error every time right before the prompt appears.

Actually, the escaped double-quotes does get the PROMPT_COMMAND  
quoted in the generated .bashrc, I mistook the error for another  
quoting problem in gis.m.  Still getting the no such file or dir  
error, though, after fixing gis.m.

With this in .bashrc:

PROMPT_COMMAND="/Users/kyngchaos/Applications/Untitled Folder/ 
GRASS-6.3.app/Contents/Resources/etc/prompt.sh"

I get:

bash: /Users/kyngchaos/Applications/Untitled: No such file or directory
GRASS 6.3.cvs (spearfish60):~ >


Wed, May 9 2007 21:34:51    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 <17986.8788.589179.895100@cerise.gclements.plus.com>
Date Wed, 9 May 2007 20:34:44 +0100
To Markus Neteler <neteler@itc.it>
Cc GRASS developers list <grass-dev@grass.itc.it>, Markus Neteler via RT <grass-bugs@intevation.de>
Subject Re: [GRASS-dev] Re: [bug #4924] (grass) missing quoted path vars in init.sh
In-Reply-To <20070509185825.GA3931@bartok.itc.it>
References <20070509172921.A302F1006D0@lists.intevation.de> <22A57555-E8C1-4F79-BF01-4BEF6360E1E0@kyngchaos.com> <20070509185825.GA3931@bartok.itc.it>
X-Mailer VM 7.07 under 21.4 (patch 20) "Double Solitaire" XEmacs Lucid
X-Virus-Scanned by amavisd-new at intevation.de
X-Spam-Status No, score=-4.865 tagged_above=-999 required=3.5 tests=[BAYES_00=-5, FORGED_RCVD_HELO=0.135]
X-Spam-Score -4.865
X-Spam-Level
Markus Neteler wrote:

> cc grass-dev
> 
> http://intevation.de/rt/webrt?serial_num=4924
> 
> On Wed, May 09, 2007 at 01:00:44PM -0500, William Kyngesburye wrote:
> > One more I found - line 843.  I quoted the echoed PROMPT_COMMAND for  
> > the bash shell to get it to work:
> > 
> >     echo "PROMPT_COMMAND='$GISBASE/etc/prompt.sh'" >> "$bashrc"
> > 
> > I had to use single-quotes to get it to work.  I tried escaped double- 
> > quotes but I still got path splitting errors.  I decided not to  
> > commit this myself, in case the single quotes cause other problems  
> > (that fine detail is beyond my shell knowledge).
> 
> Any opinions on this?

bash parses $PROMPT_COMMAND, so you need yet another level of quoting.

I suspect that you want:

	echo PROMPT_COMMAND="\''$GISBASE/etc/prompt.sh'\'"

-- 
Glynn Clements <glynn@gclements.plus.com>


Thu, May 10 2007 17:51:42    Mail sent by neteler@itc.it  
Return-Path <neteler@itc.it>
Delivered-To grass-bugs@lists.intevation.de
X-AuditID d94d5003-ad63bbb000002d28-12-46433efcf02f
Date Wed, 9 May 2007 20:58:26 +0200
From Markus Neteler <neteler@itc.it>
To GRASS developers list <grass-dev@grass.itc.it>
Cc Markus Neteler via RT <grass-bugs@intevation.de>
Subject Re: [bug #4924] (grass) missing quoted path vars in init.sh
Message-ID <20070509185825.GA3931@bartok.itc.it>
Mail-Followup-To GRASS developers list <grass-dev@grass.itc.it>, Markus Neteler via RT <grass-bugs@intevation.de>
References <20070509172921.A302F1006D0@lists.intevation.de> <22A57555-E8C1-4F79-BF01-4BEF6360E1E0@kyngchaos.com>
Mime-Version 1.0
Content-Type text/plain; charset=us-ascii
Content-Disposition inline
In-Reply-To <22A57555-E8C1-4F79-BF01-4BEF6360E1E0@kyngchaos.com>
User-Agent Mutt/1.4.2.2i
X-PGP-Key http://www.gdf-hannover.de/neteler/markus_gpgkey.asc
X-PGP-Fingerprint D4D5 2F80 120E AD60 E2F6 2297 21B3 D02B E1E7 E789
Sender Markus Neteler <neteler@itc.it>
X-FBK Yes
X-Brightmail-Tracker AAAAAA==
X-Virus-Scanned by amavisd-new at intevation.de
X-Spam-Status No, score=-3.618 tagged_above=-999 required=3.5 tests=[BAYES_00=-5, DATE_IN_PAST_12_24=1.247, FORGED_RCVD_HELO=0.135]
X-Spam-Score -3.618
X-Spam-Level
cc grass-dev

http://intevation.de/rt/webrt?serial_num=4924

On Wed, May 09, 2007 at 01:00:44PM -0500, William Kyngesburye wrote:
> One more I found - line 843.  I quoted the echoed PROMPT_COMMAND for  
> the bash shell to get it to work:
> 
>     echo "PROMPT_COMMAND='$GISBASE/etc/prompt.sh'" >> "$bashrc"
> 
> I had to use single-quotes to get it to work.  I tried escaped double- 
> quotes but I still got path splitting errors.  I decided not to  
> commit this myself, in case the single quotes cause other problems  
> (that fine detail is beyond my shell knowledge).

Any opinions on this?

Markus

------------------
ITC -> dall'1 marzo 2007 Fondazione Bruno Kessler
ITC -> since 1 March 2007 Fondazione Bruno Kessler
------------------


Sat, May 12 2007 17:32:09    Taken by mneteler  
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