Last = 0\r
Escaped = False\r
InString = False\r
+ InParenthesis = 0\r
for Index in range(0, len(String)):\r
Char = String[Index]\r
\r
if not Escaped:\r
# Found a splitter not in a string, split it\r
- if not InString and Char == SplitTag:\r
+ if not InString and InParenthesis == 0 and Char == SplitTag:\r
ValueList.append(String[Last:Index].strip())\r
Last = Index + 1\r
if MaxSplit > 0 and len(ValueList) >= MaxSplit:\r
InString = True\r
else:\r
InString = False\r
+ elif Char == '(':\r
+ InParenthesis = InParenthesis + 1\r
+ elif Char == ')':\r
+ InParenthesis = InParenthesis - 1\r
else:\r
Escaped = False\r
\r
# To local path format\r
#\r
Path = os.path.normpath(Path)\r
- if Path.startswith(GlobalData.gWorkspace) and not os.path.exists(Path):\r
+ if Path.startswith(GlobalData.gWorkspace) and not Path.startswith(GlobalData.gBuildDirectory) and not os.path.exists(Path):\r
Path = Path[len (GlobalData.gWorkspace):]\r
if Path[0] == os.path.sep:\r
Path = Path[1:]\r