RESOLVED FIXED Bug 40175
Bring framebuffer functions to GLES2 conformance
https://bugs.webkit.org/show_bug.cgi?id=40175
Summary Bring framebuffer functions to GLES2 conformance
Zhenyao Mo
Reported 2010-06-04 11:30:22 PDT
1) target has to be FRAMEBUFFER 2) attachment has to be COLOR0, DEPTH, STENCIL, or DEPTH_STENCIL 3) level in framebufferTexImage2D has to be 0 4) has to check whether a user-created framebuffer is bound (otherwise the internal framebuffer will be wrongly used). 4.1) For checkFramebufferStatus(), return FRAMEBUFFER_COMPLETE if no user-created framebuffer is bound. 4.2) For getFramebufferAttachmentParameter, return default values if no user-created framebuffer is bound.
Attachments
patch (19.46 KB, patch)
2010-06-04 16:13 PDT, Zhenyao Mo
dglazkov: review+
commit-queue: commit-queue-
revised patch (19.56 KB, patch)
2010-06-11 12:40 PDT, Zhenyao Mo
no flags
Zhenyao Mo
Comment 1 2010-06-04 12:44:44 PDT
A mistake. For 4.2, should generate INVALID_OPERATION and return 0.
Zhenyao Mo
Comment 2 2010-06-04 16:13:23 PDT
Kenneth Russell
Comment 3 2010-06-08 14:00:32 PDT
Comment on attachment 57926 [details] patch Looks good to me. Upon first glance it looked like some of the checks might be redundant, but it turns out that OpenGL 3.3 accepts more enums for calls like glCheckFramebufferStatus than OpenGL ES 2.0 does, so all of the checks you've added are needed. The test case looks good.
Dimitri Glazkov (Google)
Comment 4 2010-06-08 14:13:51 PDT
Comment on attachment 57926 [details] patch rs=me.
WebKit Commit Bot
Comment 5 2010-06-09 11:55:01 PDT
Comment on attachment 57926 [details] patch Rejecting patch 57926 from commit-queue. Failed to run "['WebKitTools/Scripts/run-webkit-tests', '--no-launch-safari', '--exit-after-n-failures=1', '--ignore-tests', 'compositing', '--quiet']" exit_code: 1 Last 500 characters of output: ing Java tests make: Nothing to be done for `default'. Running tests from /Users/eseidel/Projects/CommitQueue/LayoutTests Skipped list contained 'compositing/iframes/composited-iframe.html', but no file of that name could be found Testing 19071 test cases. fast/dom/Window/window-property-descriptors.html -> failed Exiting early after 1 failures. 6789 tests run. 130.08s total testing time 6788 test cases (99%) succeeded 1 test case (<1%) had incorrect layout 1 test case (<1%) had stderr output Full output: http://webkit-commit-queue.appspot.com/results/3175098
WebKit Commit Bot
Comment 6 2010-06-09 13:54:18 PDT
Comment on attachment 57926 [details] patch Rejecting patch 57926 from commit-queue. zmo@google.com does not have committer permissions according to http://trac.webkit.org/browser/trunk/WebKitTools/Scripts/webkitpy/common/config/committers.py. - If you do not have committer rights please read http://webkit.org/coding/contributing.html for instructions on how to use bugzilla flags. - If you have committer rights please correct the error in WebKitTools/Scripts/webkitpy/common/config/committers.py by adding yourself to the file (no review needed). Due to bug 30084 the commit-queue will require a restart after your change. Please contact eseidel@chromium.org to request a commit-queue restart. After restart the commit-queue will correctly respect your committer rights.
WebKit Commit Bot
Comment 7 2010-06-09 14:36:44 PDT
Comment on attachment 57926 [details] patch Rejecting patch 57926 from commit-queue. Failed to run "['WebKitTools/Scripts/run-webkit-tests', '--no-launch-safari', '--exit-after-n-failures=1', '--ignore-tests', 'compositing', '--quiet']" exit_code: 1 Last 500 characters of output: ing Java tests make: Nothing to be done for `default'. Running tests from /Users/eseidel/Projects/CommitQueue/LayoutTests Skipped list contained 'compositing/iframes/composited-iframe.html', but no file of that name could be found Testing 19072 test cases. fast/dom/Window/window-property-descriptors.html -> failed Exiting early after 1 failures. 6790 tests run. 129.73s total testing time 6789 test cases (99%) succeeded 1 test case (<1%) had incorrect layout 1 test case (<1%) had stderr output Full output: http://webkit-commit-queue.appspot.com/results/3195102
WebKit Commit Bot
Comment 8 2010-06-11 00:59:05 PDT
Comment on attachment 57926 [details] patch Rejecting patch 57926 from commit-queue. Failed to run "['WebKitTools/Scripts/run-webkit-tests', '--no-launch-safari', '--exit-after-n-failures=1', '--ignore-tests', 'compositing', '--quiet']" exit_code: 1 Last 500 characters of output: ing Java tests make: Nothing to be done for `default'. Running tests from /Users/eseidel/Projects/CommitQueue/LayoutTests Skipped list contained 'compositing/iframes/composited-iframe.html', but no file of that name could be found Testing 19079 test cases. fast/dom/Window/window-property-descriptors.html -> failed Exiting early after 1 failures. 6791 tests run. 127.44s total testing time 6790 test cases (99%) succeeded 1 test case (<1%) had incorrect layout 1 test case (<1%) had stderr output Full output: http://webkit-commit-queue.appspot.com/results/3226234
Zhenyao Mo
Comment 9 2010-06-11 09:24:38 PDT
One more try failed. I looked at the patch again. The only possibility is I added a assertMsg() function to LayoutTests/fast/js/resources/js-test-pre.js. Since I have no way to confirm it, I'll just refactor the test to remove the assertMsg() and give it another try. The only problem I see is that we have a few other WebGL conformance tests that we might want to add to LayoutTests, and they also use assertMsg, so they also need to be rewritten.
Kenneth Russell
Comment 10 2010-06-11 09:52:26 PDT
(In reply to comment #9) > One more try failed. I looked at the patch again. The only possibility is I added a assertMsg() function to LayoutTests/fast/js/resources/js-test-pre.js. > > Since I have no way to confirm it, I'll just refactor the test to remove the assertMsg() and give it another try. Did you run this test on your machine? If it is a real failure then it will reproduce there. run-webkit-tests [--debug] LayoutTests/fast/dom/Window/window-property-descriptors.html
Kenneth Russell
Comment 11 2010-06-11 10:08:04 PDT
(In reply to comment #10) > (In reply to comment #9) > > One more try failed. I looked at the patch again. The only possibility is I added a assertMsg() function to LayoutTests/fast/js/resources/js-test-pre.js. > > > > Since I have no way to confirm it, I'll just refactor the test to remove the assertMsg() and give it another try. > > Did you run this test on your machine? If it is a real failure then it will reproduce there. > > run-webkit-tests [--debug] LayoutTests/fast/dom/Window/window-property-descriptors.html I just applied your patch and found that this test does in fact fail with your patch applied. Run it on your own machine to see the error reported. You should consider doing full LayoutTest runs ("run-webkit-tests [--debug]") for changes that touch non-WebGL code.
Zhenyao Mo
Comment 12 2010-06-11 12:20:07 PDT
(In reply to comment #11) > (In reply to comment #10) > > (In reply to comment #9) > > > One more try failed. I looked at the patch again. The only possibility is I added a assertMsg() function to LayoutTests/fast/js/resources/js-test-pre.js. > > > > > > Since I have no way to confirm it, I'll just refactor the test to remove the assertMsg() and give it another try. > > > > Did you run this test on your machine? If it is a real failure then it will reproduce there. > > > > run-webkit-tests [--debug] LayoutTests/fast/dom/Window/window-property-descriptors.html > > I just applied your patch and found that this test does in fact fail with your patch applied. Run it on your own machine to see the error reported. You should consider doing full LayoutTest runs ("run-webkit-tests [--debug]") for changes that touch non-WebGL code. OK, I could reproduce it by run-webkit-tests. Originally I tested with run-safari and open the failed test and saw no FAIL, so I thought I could not reproduce the error. Actually because I added a new function in js-test-pre.js, the expected txt will have one extra PASS line, that's why it failed.
Zhenyao Mo
Comment 13 2010-06-11 12:40:55 PDT
Created attachment 58497 [details] revised patch Moved assertMsg() to webgl-test.js since it's only used by WebGL. The rest is the same.
Kenneth Russell
Comment 14 2010-06-11 15:06:50 PDT
Looks fine.
Dimitri Glazkov (Google)
Comment 15 2010-06-14 11:46:50 PDT
Comment on attachment 58497 [details] revised patch let's try again.
WebKit Commit Bot
Comment 16 2010-06-15 06:38:11 PDT
Comment on attachment 58497 [details] revised patch Clearing flags on attachment: 58497 Committed r61185: <http://trac.webkit.org/changeset/61185>
WebKit Commit Bot
Comment 17 2010-06-15 06:38:18 PDT
All reviewed patches have been landed. Closing bug.
WebKit Review Bot
Comment 18 2010-06-15 07:22:29 PDT
http://trac.webkit.org/changeset/61185 might have broken SnowLeopard Intel Release (Tests)
Note You need to log in before you can comment on or make changes to this bug.