Build final include file path with the same path passed to dir_reader when enumerating include_dirs list.
git-svn-id: https://svn.code.sf.net/p/nsis/code/NSIS/trunk@6539 212acab6-be3b-0410-9dea-997c60f758d6
This commit is contained in:
parent
7ae2e8f84f
commit
ec5f767d74
1 changed files with 5 additions and 5 deletions
|
@ -3219,9 +3219,9 @@ int CEXEBuild::doCommand(int which_token, LineParser &line)
|
||||||
|
|
||||||
TCHAR *fc = my_convert(f);
|
TCHAR *fc = my_convert(f);
|
||||||
tstring dir = get_dir_name(fc), spec = get_file_name(fc), basedir = dir;
|
tstring dir = get_dir_name(fc), spec = get_file_name(fc), basedir = dir;
|
||||||
|
my_convert_free(fc);
|
||||||
path_append_separator(basedir);
|
path_append_separator(basedir);
|
||||||
if (dir == spec) basedir = _T(""), dir = _T("."); // no path, just file name
|
if (dir == spec) basedir = _T(""), dir = _T("."); // no path, just file name
|
||||||
my_convert_free(fc);
|
|
||||||
|
|
||||||
// search working directory
|
// search working directory
|
||||||
boost::scoped_ptr<dir_reader> dr( new_dir_reader() );
|
boost::scoped_ptr<dir_reader> dr( new_dir_reader() );
|
||||||
|
@ -3231,6 +3231,7 @@ int CEXEBuild::doCommand(int which_token, LineParser &line)
|
||||||
files_itr++)
|
files_itr++)
|
||||||
{
|
{
|
||||||
if (!dir_reader::matches(*files_itr, spec)) continue;
|
if (!dir_reader::matches(*files_itr, spec)) continue;
|
||||||
|
|
||||||
tstring incfile = basedir + *files_itr;
|
tstring incfile = basedir + *files_itr;
|
||||||
if (includeScript(incfile.c_str(), enc) != PS_OK)
|
if (includeScript(incfile.c_str(), enc) != PS_OK)
|
||||||
return PS_ERROR;
|
return PS_ERROR;
|
||||||
|
@ -3243,8 +3244,8 @@ int CEXEBuild::doCommand(int which_token, LineParser &line)
|
||||||
TCHAR *incdir = include_dirs.get();
|
TCHAR *incdir = include_dirs.get();
|
||||||
int incdirs = include_dirs.getnum();
|
int incdirs = include_dirs.getnum();
|
||||||
for (int i = 0; i < incdirs; i++, incdir += _tcslen(incdir) + 1) {
|
for (int i = 0; i < incdirs; i++, incdir += _tcslen(incdir) + 1) {
|
||||||
tstring curincdir(incdir);
|
tstring curincdir(incdir), incfile;
|
||||||
path_append(curincdir, dir);
|
if (_T(".") != dir) path_append(curincdir, dir);
|
||||||
|
|
||||||
boost::scoped_ptr<dir_reader> dr( new_dir_reader() );
|
boost::scoped_ptr<dir_reader> dr( new_dir_reader() );
|
||||||
dr->read(curincdir);
|
dr->read(curincdir);
|
||||||
|
@ -3254,8 +3255,7 @@ int CEXEBuild::doCommand(int which_token, LineParser &line)
|
||||||
{
|
{
|
||||||
if (!dir_reader::matches(*incdir_itr, spec)) continue;
|
if (!dir_reader::matches(*incdir_itr, spec)) continue;
|
||||||
|
|
||||||
tstring incfile(incdir);
|
path_append(incfile = curincdir, *incdir_itr);
|
||||||
incfile = path_append(incfile, basedir) + *incdir_itr;
|
|
||||||
if (includeScript(incfile.c_str(), enc) != PS_OK)
|
if (includeScript(incfile.c_str(), enc) != PS_OK)
|
||||||
return PS_ERROR;
|
return PS_ERROR;
|
||||||
else
|
else
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue