Hi Radim,
I see a small cosmetic error.
Change in display/d.m/dm.tcl
line 71
{command "About &System" {} "About System" {} -command { exec $env(SHELL) $env(GISBASE)/etc/dm/tksys.tcl --tcltk} }
changed
{command "About &System" {} "About System" {} -command { exec $env(GISBASE)/etc/dm/tksys.tcl --tcltk} }
Hi
--
________________________________________________________________________
|| Lorenzo Moretti e-mail: lorenzo.moretti@bologna.enea.it ||/|/| ENEA prot/idr Web: http://wwwamb.bologna.enea.it/ || | via Don Fiammelli, 2 FTP: ftp://ftpamb.bologna.enea.it/ (res.)
~~~~~~ 40128 BOLOGNA - ITALY Ph: +39-0516098086 Fax: +39-0516098131
Download GRASS for MAC OS X: http://wwwamb.bologna.enea.it/forgrass/
________________________________________________________________________
I don't want to introduce more errors just now,
this may be done after 5.7.0.
Thanks
Radim
On Thursday 17 June 2004 12:54, Lorenzo Moretti wrote:
Hi Radim,
I see a small cosmetic error.
Change in display/d.m/dm.tcl
line 71
{command "About &System" {} "About System" {} -command { exec
$env(SHELL) $env(GISBASE)/etc/dm/tksys.tcl --tcltk} }
changed
{command "About &System" {} "About System" {} -command { exec
$env(GISBASE)/etc/dm/tksys.tcl --tcltk} }
Hi
Radim Blazek wrote:
> I see a small cosmetic error.
>
> Change in display/d.m/dm.tcl
>
> line 71
> {command "About &System" {} "About System" {} -command { exec
> $env(SHELL) $env(GISBASE)/etc/dm/tksys.tcl --tcltk} }
>
> changed
> {command "About &System" {} "About System" {} -command { exec
> $env(GISBASE)/etc/dm/tksys.tcl --tcltk} }
I don't want to introduce more errors just now,
this may be done after 5.7.0.
Actually, it isn't cosmetic, it's a bug fix. The existing version will
fail if $env(SHELL) refers to a C shell, as $@ isn't a valid variable
name in such shells.
tksys.tcl uses Bourne-shell syntax to re-execute itself using
$GRASS_WISH. If the script was executed directly, the #!/bin/sh line
will force it to be read by /bin/sh (which is guaranteed to be a
Bourne shell) regardless of the user's $SHELL setting.
OTOH, executing directly will fail if the script doesn't have the
executable bit set.
The command should just execute it via $GRASS_WISH directly, rather
than relying upon the "comment hack" to do so, i.e.:
exec $env(GRASS_WISH) $env(GISBASE)/etc/dm/tksys.tcl --tcltk
That doesn't depend upon either $SHELL being a Bourne shell or
tksys.tcl having the executable bit set.
--
Glynn Clements <glynn.clements@virgin.net>
On Thu, Jun 17, 2004 at 02:48:18PM +0100, Glynn Clements wrote:
Radim Blazek wrote:
> > I see a small cosmetic error.
> >
> > Change in display/d.m/dm.tcl
> >
> > line 71
> > {command "About &System" {} "About System" {} -command { exec
> > $env(SHELL) $env(GISBASE)/etc/dm/tksys.tcl --tcltk} }
> >
> > changed
> > {command "About &System" {} "About System" {} -command { exec
> > $env(GISBASE)/etc/dm/tksys.tcl --tcltk} }
>
> I don't want to introduce more errors just now,
> this may be done after 5.7.0.
Actually, it isn't cosmetic, it's a bug fix. The existing version will
fail if $env(SHELL) refers to a C shell, as $@ isn't a valid variable
name in such shells.
tksys.tcl uses Bourne-shell syntax to re-execute itself using
$GRASS_WISH. If the script was executed directly, the #!/bin/sh line
will force it to be read by /bin/sh (which is guaranteed to be a
Bourne shell) regardless of the user's $SHELL setting.
OTOH, executing directly will fail if the script doesn't have the
executable bit set.
The command should just execute it via $GRASS_WISH directly, rather
than relying upon the "comment hack" to do so, i.e.:
exec $env(GRASS_WISH) $env(GISBASE)/etc/dm/tksys.tcl --tcltk
That doesn't depend upon either $SHELL being a Bourne shell or
tksys.tcl having the executable bit set.
Thanks,
fixed in CVS.
Markus