Changeset 79935 in webkit


Ignore:
Timestamp:
Feb 28, 2011 3:35:54 PM (13 years ago)
Author:
commit-queue@webkit.org
Message:

2011-02-28 Victoria Kirst <vrk@google.com>

Reviewed by Kenneth Russell.

[chromium] Fall back to texSubImage2D when mapTexSubImage2D fails in VideoLayerChromium
https://bugs.webkit.org/show_bug.cgi?id=55269

Mesa does not support mapTexSubImage2D, so this change lets
GPU-accelerated video work with DRT layout tests.

  • platform/graphics/chromium/VideoLayerChromium.cpp: (WebCore::VideoLayerChromium::updateTexture):
Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r79930 r79935  
     12011-02-28  Victoria Kirst  <vrk@google.com>
     2
     3        Reviewed by Kenneth Russell.
     4
     5        [chromium] Fall back to texSubImage2D when mapTexSubImage2D fails in VideoLayerChromium
     6        https://bugs.webkit.org/show_bug.cgi?id=55269
     7
     8        Mesa does not support mapTexSubImage2D, so this change lets
     9        GPU-accelerated video work with DRT layout tests.
     10
     11        * platform/graphics/chromium/VideoLayerChromium.cpp:
     12        (WebCore::VideoLayerChromium::updateTexture):
     13
    1142011-02-28  David Hyatt  <hyatt@apple.com>
    215
  • trunk/Source/WebCore/platform/graphics/chromium/VideoLayerChromium.cpp

    r79659 r79935  
    219219        GLC(context, static_cast<Extensions3DChromium*>(context->getExtensions())->unmapTexSubImage2DCHROMIUM(mem));
    220220    } else {
    221         // FIXME: We should have some sort of code to handle the case when
    222         // mapTexSubImage2D fails.
    223         m_skipsDraw = true;
     221        // If mapTexSubImage2DCHROMIUM fails, then do the slower texSubImage2D
     222        // upload. This does twice the copies as mapTexSubImage2DCHROMIUM, one
     223        // in the command buffer and another to the texture.
     224        GLC(context, context->texSubImage2D(GraphicsContext3D::TEXTURE_2D, 0, 0, 0, dimensions.width(), dimensions.height(), format, GraphicsContext3D::UNSIGNED_BYTE, data));
    224225    }
    225226}
Note: See TracChangeset for help on using the changeset viewer.