diff options
Diffstat (limited to 'src/utils/SkDeferredCanvas.cpp')
-rw-r--r-- | src/utils/SkDeferredCanvas.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/utils/SkDeferredCanvas.cpp b/src/utils/SkDeferredCanvas.cpp index 2c5e5301c0..4836cd7be4 100644 --- a/src/utils/SkDeferredCanvas.cpp +++ b/src/utils/SkDeferredCanvas.cpp @@ -324,9 +324,6 @@ void SkDeferredDevice::skipPendingCommands() { if (fPipeController.hasPendingCommands()) { fFreshFrame = true; flushPendingCommands(kSilent_PlaybackMode); - if (fNotificationClient) { - fNotificationClient->skippedPendingDrawCommands(); - } } } } @@ -363,9 +360,14 @@ void SkDeferredDevice::flushPendingCommands(PlaybackMode playbackMode) { } fPipeWriter.flushRecording(true); fPipeController.playback(kSilent_PlaybackMode == playbackMode); - if (playbackMode == kNormal_PlaybackMode && fNotificationClient) { - fNotificationClient->flushedDrawCommands(); + if (fNotificationClient) { + if (playbackMode == kSilent_PlaybackMode) { + fNotificationClient->skippedPendingDrawCommands(); + } else { + fNotificationClient->flushedDrawCommands(); + } } + fPreviousStorageAllocated = storageAllocatedForRecording(); } |