The default bug view has changed. See this FAQ.

OMTC: Fix calls to ImageContainer::SetCurrentImage in layer transactions

RESOLVED FIXED in mozilla17

Status

()

Core
Graphics: Layers
RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: nical, Assigned: nical)

Tracking

unspecified
mozilla17
Points:
---
Bug Flags:
in-testsuite -

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Assignee)

Description

5 years ago
With bug 598868, ImageContainer got a new and shiny method SetCurrentImageInTransaction better suited to cases where the current image is set on the main thread within a layer transaction.

We need to replace the concerned calls to SetCurrentImage by calls to SetCurrentImageInTransaction.
(Assignee)

Comment 1

5 years ago
Here is a list of the potentail caller of SetCurrentImage that might be in layer transactions:

layout/base/FrameLayerBuilder.cpp
2952:    container->SetCurrentImage(image);

image/src/RasterImage.cpp
931:  mImageContainer->SetCurrentImage(image);

dom/plugins/base/nsPluginInstanceOwner.cpp
3703:      container->SetCurrentImage(nsnull);

dom/plugins/ipc/PluginInstanceParent.cpp
758:        container->SetCurrentImage(ioImage);
773:    container->SetCurrentImage(pluginImage);

I am confident the first two happen at least some times during transactions.

roc, you know these parts of the code way better than me, do you know if some of these should be changed for SetCurrentImageInTransaction?
(In reply to Nicolas Silva [:nical] from comment #1)
> layout/base/FrameLayerBuilder.cpp
> 2952:    container->SetCurrentImage(image);
> 
> image/src/RasterImage.cpp
> 931:  mImageContainer->SetCurrentImage(image);
> 
> dom/plugins/base/nsPluginInstanceOwner.cpp
> 3703:      container->SetCurrentImage(nsnull);

There are actually several SetCurrentImage calls in this file.

> roc, you know these parts of the code way better than me, do you know if
> some of these should be changed for SetCurrentImageInTransaction?

I think they all need to be SetCurrentImageInTransaction.
(Assignee)

Comment 3

5 years ago
Created attachment 646220 [details] [diff] [review]
Replaces calls to ImageContainer's SetCurrentImage with calls to SetCurrentImageInTransaction used within a layers transaction.
Attachment #646220 - Flags: review?(roc)
Attachment #646220 - Flags: review?(roc) → review+
(Assignee)

Updated

5 years ago
Keywords: checkin-needed
https://hg.mozilla.org/integration/mozilla-inbound/rev/2fd48f64273e
Assignee: nobody → nsilva
Flags: in-testsuite-
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/2fd48f64273e
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla17
You need to log in before you can comment on or make changes to this bug.