The reason seems to be that you cannot reference a variable that has been set to nil in a scheduled environment. For example the following will throw an error:
[] spawn {_a = nil;_a};
Error in expression <[] spawn {_a = nil;_a};>
Error position: <_a};>
Error Undefined variable in expression: _a
Doing the same thing using "call", works:
[] call {_a = nil;_a}
Changing line 63 from BIS_fnc_getFromPairs from
if (isNil "_value") exitWith {_default};
to
if (isNil "_value") exitWith {if (isNil "_default") then {nil} else {_default}};
works around the issue.