2009-02-05 Scott Violet <sky@google.com>
authordglazkov@chromium.org <dglazkov@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 5 Feb 2009 23:28:27 +0000 (23:28 +0000)
committerdglazkov@chromium.org <dglazkov@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Thu, 5 Feb 2009 23:28:27 +0000 (23:28 +0000)
commit0cf4937a3333460fc5fbe9ac0883560e52ec5721
tree85206af61a36ff850b44de1344803f4ec58776c0
parent2a4264995a578c659a29650246da0fac6382f602
2009-02-05  Scott Violet  <sky@google.com>

        Reviewed by Eric Seidel.

        https://bugs.webkit.org/show_bug.cgi?id=23625
        Additional fix: Skia platform doesn't render text to a canvas or support clipping to an image buffer

        Fixes three bugs in PlatformContextSkia:

        * When a new layer was started clipped to an image we used the
          assignment operator to copy the SkBitmap. If the SkBitmap owns it's
          pixels, this is not the right thing to do. Instead we need to create
          a copy of the image.
        * State holds an SkBitmap by value. State's copy constructor does a
          memcpy. This is confusing and subtle, I've converted to use a member
          initializer list which I think is clearer and less error prone.
        * When creating a new layer there is no need to copy the clip image.

        * platform/graphics/skia/PlatformContextSkia.cpp:
        (PlatformContextSkia::State::State):
        (PlatformContextSkia::save):
        (PlatformContextSkia::beginLayerClippedToImage):

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@40689 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebCore/ChangeLog
WebCore/platform/graphics/skia/PlatformContextSkia.cpp