Index: src/utils/SkDeferredCanvas.cpp |
diff --git a/src/utils/SkDeferredCanvas.cpp b/src/utils/SkDeferredCanvas.cpp |
index 2c5e5301c01741e0c57815f3ebecda4b4f6cd6a3..4836cd7be4dd8ab483eb34974b091a34391f2e8f 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(); |
} |