forked from lix-project/lix
* In printValueAsXML, handle the case where a "type" attribute is not
a string. This happens in the NixOS option system. * Remove a bogus comparison of a unsigned integer with -1.
This commit is contained in:
parent
00b41e46ed
commit
a12095d3be
|
@ -170,8 +170,8 @@ EvalState::EvalState()
|
|||
size_t size = 32 * 1024 * 1024;
|
||||
#if HAVE_SYSCONF && defined(_SC_PAGESIZE) && defined(_SC_PHYS_PAGES)
|
||||
long pageSize = sysconf(_SC_PAGESIZE);
|
||||
long pages = sysconf (_SC_PHYS_PAGES);
|
||||
if (pageSize != -1 && size != -1)
|
||||
long pages = sysconf(_SC_PHYS_PAGES);
|
||||
if (pageSize != -1)
|
||||
size = (pageSize * pages) / 4; // 25% of RAM
|
||||
if (size > maxSize) size = maxSize;
|
||||
#endif
|
||||
|
@ -1108,7 +1108,10 @@ bool EvalState::isDerivation(Value & v)
|
|||
{
|
||||
if (v.type != tAttrs) return false;
|
||||
Bindings::iterator i = v.attrs->find(sType);
|
||||
return i != v.attrs->end() && forceStringNoCtx(*i->value) == "derivation";
|
||||
if (i == v.attrs->end()) return false;
|
||||
forceValue(*i->value);
|
||||
if (i->value->type != tString) return false;
|
||||
return forceStringNoCtx(*i->value) == "derivation";
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue