Date: Sat, 11 Sep 2004 15:30:33 GMT From: Simon Barner <barner@in.tum.de> To: freebsd-ports-bugs@FreeBSD.org Subject: Re: ports/71591: audio/funktrackergold segfaults Message-ID: <200409111530.i8BFUXdd003516@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR ports/71591; it has been noted by GNATS. From: Simon Barner <barner@in.tum.de> To: "Shawn K. Quinn" <skquinn@xevious.kicks-ass.net> Cc: FreeBSD-gnats-submit@FreeBSD.org, markp@FreeBSD.org Subject: Re: ports/71591: audio/funktrackergold segfaults Date: Sat, 11 Sep 2004 17:29:05 +0200 [ Maintainer Cc:ed ] The reason for this is that getenv ("OSTYPE") returns NULL. The following patch works around the problem (IMHO, OS detection at build time is fine when a program build from the FreeBSD ports collection) ----- snip ----- --- funkgold_misc.c.orig Sun Jun 21 08:26:46 1998 +++ funkgold_misc.c Sat Sep 11 17:17:44 2004 @@ -30,22 +29,7 @@ void get_environment(void) { - char *os_type = getenv("OSTYPE"); - register int x; - char *os_tt[] = { - "Linux", - "FreeBSD" - }; - - for(x = 0;x < SO_TT_SIZE;x++) - if(strcmp(os_tt[x],os_type) == 0) - break; - switch(x) - { - case 0: funk_info.funk_cpu_type = FKCPU_LINUX; break; - case 1: funk_info.funk_cpu_type = FKCPU_FREEBSD; break; - default: funk_info.funk_cpu_type = FKCPU_UNKNOWN; break; - } + funk_info.funk_cpu_type = FKCPU_FREEBSD; } /*************************************************************************** ----- snip ----- The more interesting point is why the following little C program fails (please forgive me if I am overlooking something really stupid ;-) (please note that this works fine for other environment variables like HOME, PAGER, ...) int main (int argc, char* argv[]) { char *os = (char*)getenv ("OSTYPE"); printf ("%s\n", os); return 0; }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200409111530.i8BFUXdd003516>