Csound Csound-dev Csound-tekno Search About

[Cs-dev] [ csound-Bugs-1765699 ] Environment variable handling problems

Date2010-05-12 12:01
From"SourceForge.net"
Subject[Cs-dev] [ csound-Bugs-1765699 ] Environment variable handling problems
Bugs item #1765699, was opened at 2007-08-01 21:09
Message generated for change (Settings changed) made by jpff
You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=564599&aid=1765699&group_id=81968

Please note that this message will contain a full copy of the comment thread,
including the initial issue submission, for this request,
not just the latest update.
Category: None
Group: csound5
>Status: Closed
Resolution: Accepted
Priority: 5
Private: No
Submitted By: tims45 (tims45)
Assigned to: John ffitch (jpff)
Summary: Environment variable handling problems

Initial Comment:
The environment is Win XP SP2, Csound 5.06(d)

I am attempting to set SFDIR and/or SSDIR in the  clause of a CSD.

First of all, attempting to use an argument such as:

--env:SSDIR=C:\Documents and Settings\zorg\My Documents\Personal\Studio stuff\Csound files 2.0GB\CD 3 Csound Catalog\instruments and compositions

(with or without " or ' quotes around the pathname) fails as the parser sees something like \D as an escaped D. 

So I changed all \ to / and then Csound appears to think that the first space indicates the end of the first argument. Attempting to "escape" spaces with something like \{space} didn't work either.

So then I attempted to replace the spaces with %20

--env:SSDIR="C:/Documents%20and%20Settings/zorg/My%20Documents/Personal/Studio%20stuff/Csound%20files%202.0GB/CD%203%20Csound%20Catalog/catalog_samples/"

which also does not work. I don't see an error message, but any files required by the CSD that live in that directory are not found.

However, if I use a short path, even relative, such as 

--env:SSDIR=../catalog_samples

that works (assuming the file you're running is in the proper relation to that directory.)

So my guess is that the parser may stop reading the string after some number of characters, sets SSDIR to some unknown quantity, and thus fails to find the desired file.

If I could figure out a way for Csound to print what it understands SSDIR to be from within a CSD file, I could probably confirm this...


----------------------------------------------------------------------

Comment By: Andres Cabrera (mantaraya36)
Date: 2010-02-24 09:01

Message:
I can confirm this behavior. When there are spaces, the directory is not
picked up when it is in the CsOptions section, but will work if is set
somewhere. Quotes don't help. Using the \ character to escape spaces
doesn't work either.
The problem is not reading the environment variables, it's the parsing of
the CsOptions section.

----------------------------------------------------------------------

Comment By: John ffitch (jpff)
Date: 2010-02-24 07:58

Message:
Csound uses Unix-type file names a \ is an escape
Spaces in file names are a problem as well


----------------------------------------------------------------------

You can respond by visiting: 
https://sourceforge.net/tracker/?func=detail&atid=564599&aid=1765699&group_id=81968

------------------------------------------------------------------------------

_______________________________________________
Csound-devel mailing list
Csound-devel@lists.sourceforge.net