Modernize EGL extension detection, similar to GLContext's IsExtensionSupported

RESOLVED FIXED in Firefox 15

Status

()

Core
Canvas: WebGL
RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: jgilbert, Assigned: jgilbert)

Tracking

unspecified
mozilla16
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox15 fixed, firefox16 fixed)

Details

Attachments

(1 attachment, 2 obsolete attachments)

(Assignee)

Description

5 years ago
We're going to be in EGL land on an increasing number of platforms, and working more with extensions for EGL for EGLImage, EGLSync, and hopefully eventually EGLStream.
(Assignee)

Comment 1

5 years ago
Created attachment 630734 [details] [diff] [review]
patch
Attachment #630734 - Flags: review?(bjacob)
(Assignee)

Updated

5 years ago
OS: Windows 7 → All
Hardware: x86_64 → All
(Assignee)

Comment 2

5 years ago
Created attachment 630739 [details] [diff] [review]
patch

Adds NS_ERRORs when the extensions are 'supported', but their functions are not exposed.
Attachment #630734 - Attachment is obsolete: true
Attachment #630734 - Flags: review?(bjacob)
Attachment #630739 - Flags: review?(bjacob)
(Assignee)

Updated

5 years ago
Blocks: 762263
Depends on: 762259
Comment on attachment 630739 [details] [diff] [review]
patch

Review of attachment 630739 [details] [diff] [review]:
-----------------------------------------------------------------

::: gfx/gl/GLContext.cpp
@@ +539,5 @@
>  #else
>      const bool once = true;
>  #endif
>  
> +    mAvailableExtensions.Load(extensions, sExtensionNames, !once);

To remove the negation here and generally be more explicit, maybe you could use a |firstTime| variable here.

::: gfx/gl/GLContext.h
@@ +1568,2 @@
>          bool& operator[](size_t index) {
> +            NS_ASSERTION(index < Size, "out of range");

This should be a MOZ_ASSERT similar to bug 732607.
Attachment #630739 - Flags: review?(bjacob) → review+
(Assignee)

Comment 4

5 years ago
Created attachment 632051 [details] [diff] [review]
patch with nits fixed

Carrying forward r+ with nit fixes.
Attachment #630739 - Attachment is obsolete: true
Attachment #632051 - Flags: review+
(Assignee)

Comment 5

5 years ago
https://hg.mozilla.org/integration/mozilla-inbound/rev/27d0a3ecfe95
Target Milestone: --- → mozilla16

Comment 6

5 years ago
https://hg.mozilla.org/mozilla-central/rev/27d0a3ecfe95
Status: ASSIGNED → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
(Assignee)

Updated

5 years ago
Blocks: 758844
(Assignee)

Updated

5 years ago
Blocks: 728524
Comment on attachment 632051 [details] [diff] [review]
patch with nits fixed

[Approval Request Comment]
Required by bug 728524
Attachment #632051 - Flags: approval-mozilla-beta?
Comment on attachment 632051 [details] [diff] [review]
patch with nits fixed

Approving supporting patches for bug 687267
Attachment #632051 - Flags: approval-mozilla-beta? → approval-mozilla-beta+
status-firefox15: --- → affected
status-firefox16: --- → fixed
https://hg.mozilla.org/releases/mozilla-beta/rev/69b1dee11b5e

Updated

5 years ago
status-firefox15: affected → fixed
You need to log in before you can comment on or make changes to this bug.