Fix ObjectsEqual
@@ -1362,14 +1362,26 @@ bool CLR_RT_HeapBlock::ObjectsEqual(
// boxed primitive or enum type
obj = &rightObj[1];
}
+ else
+ {
+ // boxed value type
+ obj = rightObj;
+ }
return ObjectsEqual(*leftObj, *obj, false);
}
else
+ {
+ if (rightObj == NULL)
+ {
+ return false;
+ }
+ else
{
return ObjectsEqual(*leftObj, *rightObj, false);
}
}
+ }
else
{
_ASSERTE(false);
