Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 26 Oct 2005 19:00:55 GMT
From:      Antonin Bonte <antonin.bonte@gmail.com>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   java/88048: Can't set $PORTDIRS then read it via System.getenv() 
Message-ID:  <200510261900.j9QJ0tAv055920@www.freebsd.org>
Resent-Message-ID: <200510261910.j9QJAEAf063932@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         88048
>Category:       java
>Synopsis:       Can't set $PORTDIRS then read it via System.getenv()
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-java
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Oct 26 19:10:13 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     Antonin Bonte
>Release:        6.0-RC1
>Organization:
ejake.org
>Environment:
FreeBSD speedball.___.net 6.0-RC1 FreeBSD 6.0-RC1 #0: Wed Oct 19 17:01:46 CEST 2005     root@speedball.___.net:/usr/obj/usr/src/sys/SPEEDBALL  i386
          
>Description:
Unable to get an env variable if its name 
is set to "PORTDIRS" 
>How-To-Repeat:
package codeTest;

public class Test {

	public static void main(String[] args) {
		System.out.println("PORTSDIR="+System.getenv("PORTSDIR"));
		System.out.println("PORTDIR="+System.getenv("PORTDIR"));
		System.out.println("PACKAGES="+System.getenv("PACKAGES"));
	}
}

[rabbit speedball] env | egrep "PORTS?DIR|PACKAGES"
[rabbit speedball] PORTSDIR=result1 PORTDIR=result2 PACKAGES=result3 java -cp bin codeTest.Test
PORTSDIR=
PORTDIR=result2
PACKAGES=result3
[rabbit speedball] export PORTSDIR=result1
[rabbit speedball] export PORTDIR=result2
[rabbit speedball] export PACKAGES=result3
[rabbit speedball] env | egrep "PORTS?DIR|PACKAGES"
PORTSDIR=result1
PORTDIR=result2
PACKAGES=result3
[rabbit speedball] java -cp bin codeTest.Test
PORTSDIR=
PORTDIR=result2
PACKAGES=result3

same results using /bin/sh as shell ( was zsh ) 
>Fix:
Change 2 lines in /usr/local/bin/java (javavmwrapper-2.0_5)

429,430c429
< PORTSDIR=
< if [ -r /usr/share/mk/bsd.port.mk ]; then
---
> if [ -z "${PORTSDIR}" -a -r /usr/share/mk/bsd.port.mk ]; then

Now,

[rabbit speedball] PORTSDIR=/usr/ports java -cp bin codeTest.Test
PORTSDIR=/usr/ports
PORTDIR=result2
PACKAGES=result3

[rabbit speedball] PORTSDIR=/usr/dummy java -cp bin codeTest.Test
PORTSDIR=/usr/dummy
PORTDIR=result2
PACKAGES=result3



>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200510261900.j9QJ0tAv055920>