Bug 143911 - REGRESSION (r181656): Animated tiled layers are missing content
Summary: REGRESSION (r181656): Animated tiled layers are missing content
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Simon Fraser (smfr)
URL:
Keywords: InRadar
Depends on:
Blocks:
 
Reported: 2015-04-17 18:35 PDT by Simon Fraser (smfr)
Modified: 2015-04-19 09:12 PDT (History)
5 users (show)

See Also:


Attachments
Patch (40.04 KB, patch)
2015-04-18 11:45 PDT, Simon Fraser (smfr)
darin: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Simon Fraser (smfr) 2015-04-17 18:35:44 PDT
REGRESSION (r181656): Animated tiled layers are missing content
Comment 1 Simon Fraser (smfr) 2015-04-18 11:45:45 PDT
Created attachment 251094 [details]
Patch
Comment 2 Simon Fraser (smfr) 2015-04-18 11:46:16 PDT
rdar://problem/20596328
Comment 3 Darin Adler 2015-04-18 12:12:40 PDT
Comment on attachment 251094 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=251094&action=review

Should fix incorrect use of PassRefPtr; deprecated now.

> Source/WebCore/dom/ScriptedAnimationController.h:94
> +    virtual PassRefPtr<DisplayRefreshMonitor> createDisplayRefreshMonitor(PlatformDisplayID) const override;

This should be RefPtr, not PassRefPtr.

> Source/WebCore/page/ChromeClient.h:289
> +    virtual PassRefPtr<DisplayRefreshMonitor> createDisplayRefreshMonitor(PlatformDisplayID) const { return nullptr; }

This should be RefPtr, not PassRefPtr.

> Source/WebCore/platform/graphics/DisplayRefreshMonitorClient.h:47
> +    virtual PassRefPtr<DisplayRefreshMonitor> createDisplayRefreshMonitor(PlatformDisplayID) const = 0;

This should be RefPtr, not PassRefPtr.

> Source/WebCore/platform/graphics/GraphicsLayerUpdater.cpp:82
> +PassRefPtr<DisplayRefreshMonitor> GraphicsLayerUpdater::createDisplayRefreshMonitor(PlatformDisplayID displayID) const

This should be RefPtr, not PassRefPtr.

> Source/WebCore/platform/graphics/GraphicsLayerUpdater.h:41
> +    virtual PassRefPtr<DisplayRefreshMonitor> createDisplayRefreshMonitor(PlatformDisplayID) const = 0;

This should be RefPtr, not PassRefPtr.

> Source/WebCore/platform/graphics/GraphicsLayerUpdater.h:58
> +    virtual PassRefPtr<DisplayRefreshMonitor> createDisplayRefreshMonitor(PlatformDisplayID) const override;

This should be RefPtr, not PassRefPtr.

> Source/WebCore/rendering/RenderLayerCompositor.cpp:4166
> +PassRefPtr<DisplayRefreshMonitor> RenderLayerCompositor::createDisplayRefreshMonitor(PlatformDisplayID displayID) const

This should be RefPtr, not PassRefPtr.

> Source/WebCore/rendering/RenderLayerCompositor.h:406
> +    PassRefPtr<DisplayRefreshMonitor> createDisplayRefreshMonitor(PlatformDisplayID) const override;

This should be RefPtr, not PassRefPtr.

> Source/WebCore/testing/Internals.cpp:2074
> +        ec = INVALID_ACCESS_ERR;

I don’t understand why having a null FrameView means INVALID_ACCESS_ERR but having a null RenderView means “silently do nothing”. But it’s just testing code, so no big deal I guess.
Comment 4 Simon Fraser (smfr) 2015-04-18 12:18:00 PDT
It's sad that nothing in the PassRefPtr header mentions it being deprecated.
Comment 5 Simon Fraser (smfr) 2015-04-18 12:40:49 PDT
https://trac.webkit.org/r182985
Comment 6 Darin Adler 2015-04-19 09:12:56 PDT
(In reply to comment #4)
> It's sad that nothing in the PassRefPtr header mentions it being deprecated.

I think I’m going to rename it to DeprecatedPassRefPtr soon.