1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2025-06-26 11:41:15 +02:00

* builtins.toXML: propagate the string context. This is a regression

from the old ATerm-based evaluator.
This commit is contained in:
Eelco Dolstra 2010-06-10 10:29:50 +00:00
parent 07ca66cf24
commit f16fe2af8d
3 changed files with 12 additions and 5 deletions

View file

@ -902,12 +902,18 @@ string EvalState::forceString(Value & v)
}
string EvalState::forceString(Value & v, PathSet & context)
void copyContext(const Value & v, PathSet & context)
{
string s = forceString(v);
if (v.string.context)
for (const char * * p = v.string.context; *p; ++p)
context.insert(*p);
}
string EvalState::forceString(Value & v, PathSet & context)
{
string s = forceString(v);
copyContext(v, context);
return s;
}
@ -938,9 +944,7 @@ string EvalState::coerceToString(Value & v, PathSet & context,
string s;
if (v.type == tString) {
if (v.string.context)
for (const char * * p = v.string.context; *p; ++p)
context.insert(*p);
copyContext(v, context);
return v.string.s;
}