Closed Bug 1043389 Opened 8 years ago Closed 8 years ago

Remove TextureFlags::ALLOC_FALLBACK

Categories

(Core :: Graphics: Layers, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla34

People

(Reporter: nical, Assigned: nical)

References

Details

Attachments

(1 file)

Now that we create and allocate the TextureClients in one place, we don't need to have a fallback branch in ContentClient if the TextureClient was successfully created but we failed to allocate it. Instead, we can handle this directly in TextureClient::CreateForDrawing: the method can fallback to BufferTextureClient by itself is allocation failed. This lets us remove a texture flag that didn't really have the same kind of use than the other flags which is nice.

The only notable change in behaviour is that other layer types will now also automatically have a fallback to BufferTextureClient, which is, I think, much better than cancelling rendering. It is still possible to fail to allocate the BufferTextureClient, but that should protect us against cases where we are out of "special" video memory while we still have normal memory left (like the gralloc allocation issues on keon/peak).
Blocks: 990924
Attachment #8461554 - Flags: review?(sotaro.ikeda.g) → review+
fixed build failures and pushed to try for the platforms that failed in the last push: https://tbpl.mozilla.org/?tree=Try&rev=1ccbd9a3fdf5
hopefully the last build fix  https://tbpl.mozilla.org/?tree=Try&rev=7d86dbb42717
https://hg.mozilla.org/mozilla-central/rev/591fdfc7734b
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla34
You need to log in before you can comment on or make changes to this bug.