1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-08 19:48:20 +02:00

Made '_' refer to value of memory breakpoint instead of addr

This commit is contained in:
Brian Fiete 2019-12-05 06:49:23 -08:00
parent fe92cc27aa
commit d13d3ed3f8
3 changed files with 30 additions and 3 deletions

View file

@ -3628,8 +3628,17 @@ DbgTypedValue DbgExprEvaluator::LookupIdentifier(BfAstNode* identifierNode, bool
return GetThis();
if (findName == "_")
{
if (mSubjectValue)
if (mSubjectValue)
{
if (mSubjectValue.mSrcAddress != 0)
{
auto refreshVal = ReadTypedValue(mSubjectValue.mType, mSubjectValue.mSrcAddress, DbgAddrType_Target);
if (refreshVal)
mSubjectValue = refreshVal;
}
return mSubjectValue;
}
if (!mSubjectExpr.IsEmpty())
{
DwFormatInfo formatInfo;
@ -5795,7 +5804,10 @@ void DbgExprEvaluator::PerformBinaryOperation(ASTREF(BfExpression*)& leftExpress
{
if ((binaryOp != BfBinaryOp_Equality) && (binaryOp != BfBinaryOp_InEquality))
{
Fail("Invalid operation for objects", opToken);
if (resultType->IsPointer())
Fail("Invalid operation for pointers", opToken);
else
Fail("Invalid operation for objects", opToken);
return;
}