Skip to content

Commit 0b78a3b

Browse files
fix: Try headless-gl, if throws, do nothing.
1 parent 8bb5e6b commit 0b78a3b

File tree

4 files changed

+40
-32
lines changed

4 files changed

+40
-32
lines changed

bin/gpu-browser-core.js

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
*
55
* GPU Accelerated JavaScript
66
*
7-
* @version 2.0.0-rc.9
8-
* @date Wed Apr 24 2019 07:46:43 GMT-0400 (Eastern Daylight Time)
7+
* @version 2.0.0-rc.10
8+
* @date Wed Apr 24 2019 08:10:18 GMT-0400 (Eastern Daylight Time)
99
*
1010
* @license MIT
1111
* The MIT License
@@ -3652,15 +3652,17 @@ class HeadlessGLKernel extends WebGLKernel {
36523652
preserveDrawingBuffer: true
36533653
});
36543654
if (!testContext || !testContext.getExtension) return;
3655-
testExtensions = {
3656-
STACKGL_resize_drawingbuffer: testContext.getExtension('STACKGL_resize_drawingbuffer'),
3657-
STACKGL_destroy_context: testContext.getExtension('STACKGL_destroy_context'),
3658-
OES_texture_float: testContext.getExtension('OES_texture_float'),
3659-
OES_texture_float_linear: testContext.getExtension('OES_texture_float_linear'),
3660-
OES_element_index_uint: testContext.getExtension('OES_element_index_uint'),
3661-
WEBGL_draw_buffers: testContext.getExtension('WEBGL_draw_buffers'),
3662-
};
3663-
features = this.getFeatures();
3655+
try {
3656+
testExtensions = {
3657+
STACKGL_resize_drawingbuffer: testContext.getExtension('STACKGL_resize_drawingbuffer'),
3658+
STACKGL_destroy_context: testContext.getExtension('STACKGL_destroy_context'),
3659+
OES_texture_float: testContext.getExtension('OES_texture_float'),
3660+
OES_texture_float_linear: testContext.getExtension('OES_texture_float_linear'),
3661+
OES_element_index_uint: testContext.getExtension('OES_element_index_uint'),
3662+
WEBGL_draw_buffers: testContext.getExtension('WEBGL_draw_buffers'),
3663+
};
3664+
features = this.getFeatures();
3665+
} catch (e) {}
36643666
}
36653667

36663668
static isContextMatch(context) {
@@ -3744,6 +3746,7 @@ class HeadlessGLKernel extends WebGLKernel {
37443746
module.exports = {
37453747
HeadlessGLKernel
37463748
};
3749+
37473750
},{"../web-gl/kernel":15,"gl":1}],11:[function(require,module,exports){
37483751
const {
37493752
utils

bin/gpu-browser.js

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@
44
*
55
* GPU Accelerated JavaScript
66
*
7-
* @version 2.0.0-rc.9
8-
* @date Wed Apr 24 2019 07:46:43 GMT-0400 (Eastern Daylight Time)
7+
* @version 2.0.0-rc.10
8+
* @date Wed Apr 24 2019 08:10:18 GMT-0400 (Eastern Daylight Time)
99
*
1010
* @license MIT
1111
* The MIT License
@@ -8416,15 +8416,17 @@ class HeadlessGLKernel extends WebGLKernel {
84168416
preserveDrawingBuffer: true
84178417
});
84188418
if (!testContext || !testContext.getExtension) return;
8419-
testExtensions = {
8420-
STACKGL_resize_drawingbuffer: testContext.getExtension('STACKGL_resize_drawingbuffer'),
8421-
STACKGL_destroy_context: testContext.getExtension('STACKGL_destroy_context'),
8422-
OES_texture_float: testContext.getExtension('OES_texture_float'),
8423-
OES_texture_float_linear: testContext.getExtension('OES_texture_float_linear'),
8424-
OES_element_index_uint: testContext.getExtension('OES_element_index_uint'),
8425-
WEBGL_draw_buffers: testContext.getExtension('WEBGL_draw_buffers'),
8426-
};
8427-
features = this.getFeatures();
8419+
try {
8420+
testExtensions = {
8421+
STACKGL_resize_drawingbuffer: testContext.getExtension('STACKGL_resize_drawingbuffer'),
8422+
STACKGL_destroy_context: testContext.getExtension('STACKGL_destroy_context'),
8423+
OES_texture_float: testContext.getExtension('OES_texture_float'),
8424+
OES_texture_float_linear: testContext.getExtension('OES_texture_float_linear'),
8425+
OES_element_index_uint: testContext.getExtension('OES_element_index_uint'),
8426+
WEBGL_draw_buffers: testContext.getExtension('WEBGL_draw_buffers'),
8427+
};
8428+
features = this.getFeatures();
8429+
} catch (e) {}
84288430
}
84298431

84308432
static isContextMatch(context) {
@@ -8508,6 +8510,7 @@ class HeadlessGLKernel extends WebGLKernel {
85088510
module.exports = {
85098511
HeadlessGLKernel
85108512
};
8513+
85118514
},{"../web-gl/kernel":16,"gl":2}],12:[function(require,module,exports){
85128515
const {
85138516
utils

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "gpu.js",
3-
"version": "2.0.0-rc.9",
3+
"version": "2.0.0-rc.10",
44
"description": "GPU Accelerated JavaScript",
55
"engines": {
66
"node": ">=10.0.0"

src/backend/headless-gl/kernel.js

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,17 @@ class HeadlessGLKernel extends WebGLKernel {
2525
preserveDrawingBuffer: true
2626
});
2727
if (!testContext || !testContext.getExtension) return;
28-
testExtensions = {
29-
STACKGL_resize_drawingbuffer: testContext.getExtension('STACKGL_resize_drawingbuffer'),
30-
STACKGL_destroy_context: testContext.getExtension('STACKGL_destroy_context'),
31-
OES_texture_float: testContext.getExtension('OES_texture_float'),
32-
OES_texture_float_linear: testContext.getExtension('OES_texture_float_linear'),
33-
OES_element_index_uint: testContext.getExtension('OES_element_index_uint'),
34-
WEBGL_draw_buffers: testContext.getExtension('WEBGL_draw_buffers'),
35-
};
36-
features = this.getFeatures();
28+
try { // just in case, edge cases
29+
testExtensions = {
30+
STACKGL_resize_drawingbuffer: testContext.getExtension('STACKGL_resize_drawingbuffer'),
31+
STACKGL_destroy_context: testContext.getExtension('STACKGL_destroy_context'),
32+
OES_texture_float: testContext.getExtension('OES_texture_float'),
33+
OES_texture_float_linear: testContext.getExtension('OES_texture_float_linear'),
34+
OES_element_index_uint: testContext.getExtension('OES_element_index_uint'),
35+
WEBGL_draw_buffers: testContext.getExtension('WEBGL_draw_buffers'),
36+
};
37+
features = this.getFeatures();
38+
} catch (e) {}
3739
}
3840

3941
static isContextMatch(context) {

0 commit comments

Comments
 (0)