Check if CopyData succeeded

master
Fedor 2019-03-30 05:05:01 +03:00
parent 91e6039cca
commit 83e0e61727
1 changed files with 7 additions and 5 deletions

View File

@ -61,7 +61,7 @@ void VideoFrameContainer::UpdatePrincipalHandleForFrameIDLocked(const PrincipalH
mFrameIDForPendingPrincipalHandle = aFrameID; mFrameIDForPendingPrincipalHandle = aFrameID;
} }
static void static bool
SetImageToBlackPixel(PlanarYCbCrImage* aImage) SetImageToBlackPixel(PlanarYCbCrImage* aImage)
{ {
uint8_t blackPixel[] = { 0x10, 0x80, 0x80 }; uint8_t blackPixel[] = { 0x10, 0x80, 0x80 };
@ -72,7 +72,7 @@ SetImageToBlackPixel(PlanarYCbCrImage* aImage)
data.mCrChannel = blackPixel + 2; data.mCrChannel = blackPixel + 2;
data.mYStride = data.mCbCrStride = 1; data.mYStride = data.mCbCrStride = 1;
data.mPicSize = data.mYSize = data.mCbCrSize = gfx::IntSize(1, 1); data.mPicSize = data.mYSize = data.mCbCrSize = gfx::IntSize(1, 1);
aImage->CopyData(data); return aImage->CopyData(data);
} }
class VideoFrameContainerInvalidateRunnable : public Runnable { class VideoFrameContainerInvalidateRunnable : public Runnable {
@ -122,11 +122,13 @@ void VideoFrameContainer::SetCurrentFrames(const VideoSegment& aSegment)
if (frame->GetForceBlack()) { if (frame->GetForceBlack()) {
if (!mBlackImage) { if (!mBlackImage) {
mBlackImage = GetImageContainer()->CreatePlanarYCbCrImage(); RefPtr<Image> blackImage = GetImageContainer()->CreatePlanarYCbCrImage();
if (mBlackImage) { if (blackImage) {
// Sets the image to a single black pixel, which will be scaled to // Sets the image to a single black pixel, which will be scaled to
// fill the rendered size. // fill the rendered size.
SetImageToBlackPixel(mBlackImage->AsPlanarYCbCrImage()); if (SetImageToBlackPixel(blackImage->AsPlanarYCbCrImage())) {
mBlackImage = blackImage;
}
} }
} }
if (mBlackImage) { if (mBlackImage) {