Fix regression introduced in r42324 which prevented pointers to BMessages from being
properly. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@42327 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -394,8 +394,17 @@ BMessageValueNode::ResolvedLocationAndValue(ValueLoader* valueLoader,
|
||||
fType->ResolveRawType(false));
|
||||
AddressType* addressType = dynamic_cast<AddressType*>(fType);
|
||||
if (addressType != NULL) {
|
||||
BVariant address;
|
||||
baseType = dynamic_cast<CompoundType*>(addressType->BaseType()
|
||||
->ResolveRawType(false));
|
||||
error = valueLoader->LoadValue(location, valueType, false,
|
||||
address);
|
||||
if (error != B_OK)
|
||||
return error;
|
||||
|
||||
ValuePieceLocation pieceLocation;
|
||||
pieceLocation.SetToMemory(address.ToUInt64());
|
||||
location->SetPieceAt(0, pieceLocation);
|
||||
}
|
||||
|
||||
_location = location;
|
||||
@@ -529,6 +538,7 @@ BMessageValueNode::ResolvedLocationAndValue(ValueLoader* valueLoader,
|
||||
|
||||
error = fMessage.Unflatten((const char *)messageBuffer);
|
||||
TRACE_LOCALS("BMessage: Unflatten result: %s\n", strerror(error));
|
||||
|
||||
if (error != B_OK)
|
||||
return error;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user