mirror of
https://github.com/NixOS/nix
synced 2025-06-26 15:51:15 +02:00
* Make `derivation' lazy again for performance. It also turns out
that there are some places in Nixpkgs (php_configurable / composableDerivation, it seems) that call `derivation' with incorrect arguments (namely, the `name' attribute missing) but get away with it because of laziness.
This commit is contained in:
parent
dc31305b38
commit
71f026292b
3 changed files with 17 additions and 37 deletions
|
@ -159,14 +159,6 @@ LocalNoInline(void addErrorPrefix(Error & e, const char * s, const string & s2,
|
|||
}
|
||||
|
||||
|
||||
static void mkThunk(Value & v, Env & env, Expr expr)
|
||||
{
|
||||
v.type = tThunk;
|
||||
v.thunk.env = &env;
|
||||
v.thunk.expr = expr;
|
||||
}
|
||||
|
||||
|
||||
void mkString(Value & v, const char * s)
|
||||
{
|
||||
v.type = tString;
|
||||
|
@ -179,7 +171,7 @@ void mkString(Value & v, const string & s, const PathSet & context)
|
|||
{
|
||||
mkString(v, s.c_str());
|
||||
if (!context.empty()) {
|
||||
unsigned int len = 0, n = 0;
|
||||
unsigned int n = 0;
|
||||
v.string.context = new const char *[context.size() + 1];
|
||||
foreach (PathSet::const_iterator, i, context)
|
||||
v.string.context[n++] = strdup(i->c_str());
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue