aboutsummaryrefslogtreecommitdiff
path: root/tools/mhmake/src/mhmakefileparser.cpp
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2010-03-16 13:03:59 +0000
committermarha <marha@users.sourceforge.net>2010-03-16 13:03:59 +0000
commited47063ec4933a51ef0f2f7d667b8178a86b6b12 (patch)
tree85cbcd3951bab7edd48700ed4c3fba1d40d73f11 /tools/mhmake/src/mhmakefileparser.cpp
parent06615d6166af0efaf2893c6b7328b96c5a86b786 (diff)
downloadvcxsrv-ed47063ec4933a51ef0f2f7d667b8178a86b6b12.tar.gz
vcxsrv-ed47063ec4933a51ef0f2f7d667b8178a86b6b12.tar.bz2
vcxsrv-ed47063ec4933a51ef0f2f7d667b8178a86b6b12.zip
Solved problem with $(@:%blabla=%) when there are spaces in the filename
Diffstat (limited to 'tools/mhmake/src/mhmakefileparser.cpp')
-rw-r--r--tools/mhmake/src/mhmakefileparser.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/tools/mhmake/src/mhmakefileparser.cpp b/tools/mhmake/src/mhmakefileparser.cpp
index e9d50a704..30916878e 100644
--- a/tools/mhmake/src/mhmakefileparser.cpp
+++ b/tools/mhmake/src/mhmakefileparser.cpp
@@ -252,7 +252,15 @@ string mhmakefileparser::ExpandMacro(const string &Expr) const
string ToStr(pTo);
#ifdef WIN32
if (IsFileName)
- return QuoteFileName(Substitute(UnquoteFileName(ToSubst),SrcStr,ToStr));
+ {
+ matchres Res;
+ string FileName(UnquoteFileName(ToSubst));
+ if (PercentMatch(FileName,UnquoteFileName(SrcStr),&Res))
+ {
+ FileName=ReplaceWithStem(UnquoteFileName(ToStr),Res.m_Stem);
+ }
+ return QuoteFileName(FileName);
+ }
#endif
return Substitute(ToSubst,SrcStr,ToStr);
}