mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-09 11:25:00 +00:00
Bug 1023491 - Deserialize FrameMetrics::mContentDescription correctly over IPC. r=kats
This commit is contained in:
parent
a56add1a31
commit
282eef67d2
@ -771,7 +771,8 @@ struct ParamTraits<mozilla::layers::FrameMetrics>
|
||||
|
||||
static bool Read(const Message* aMsg, void** aIter, paramType* aResult)
|
||||
{
|
||||
return (ReadParam(aMsg, aIter, &aResult->mScrollableRect) &&
|
||||
const char* contentDescription;
|
||||
if (!(ReadParam(aMsg, aIter, &aResult->mScrollableRect) &&
|
||||
ReadParam(aMsg, aIter, &aResult->mViewport) &&
|
||||
ReadParam(aMsg, aIter, &aResult->mScrollOffset) &&
|
||||
ReadParam(aMsg, aIter, &aResult->mDisplayPort) &&
|
||||
@ -792,10 +793,16 @@ struct ParamTraits<mozilla::layers::FrameMetrics>
|
||||
ReadParam(aMsg, aIter, &aResult->mHasScrollgrab) &&
|
||||
ReadParam(aMsg, aIter, &aResult->mUpdateScrollOffset) &&
|
||||
ReadParam(aMsg, aIter, &aResult->mScrollGeneration) &&
|
||||
aMsg->ReadBytes(aIter,
|
||||
reinterpret_cast<const char**>(&aResult->mContentDescription),
|
||||
aMsg->ReadBytes(aIter, &contentDescription,
|
||||
sizeof(aResult->mContentDescription)) &&
|
||||
ReadParam(aMsg, aIter, &aResult->mTransformScale));
|
||||
ReadParam(aMsg, aIter, &aResult->mTransformScale))) {
|
||||
return false;
|
||||
}
|
||||
// ReadBytes() doesn't actually copy the string, it only points
|
||||
// a pointer to the string in its internal buffer.
|
||||
strncpy(aResult->mContentDescription, contentDescription,
|
||||
sizeof(aResult->mContentDescription));
|
||||
return true;
|
||||
}
|
||||
};
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user