<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>77897</bug_id>
          
          <creation_ts>2012-02-06 13:15:34 -0800</creation_ts>
          <short_desc>[Chromium] SkDevice caching by per-tile texture updater.</short_desc>
          <delta_ts>2012-02-11 15:23:55 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>78426</dup_id>
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>75715</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="David Reveman">reveman</reporter>
          <assigned_to name="David Reveman">reveman</assigned_to>
          <cc>danakj</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>550237</commentid>
    <comment_count>0</comment_count>
    <who name="David Reveman">reveman</who>
    <bug_when>2012-02-06 13:15:34 -0800</bug_when>
    <thetext>Avoid to create a new SkDevice after each update. This is efficient with the per-tile texture updater as update size is very often the same. Provides a performance improvement at the cost of higher memory usage.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>550241</commentid>
    <comment_count>1</comment_count>
      <attachid>125700</attachid>
    <who name="David Reveman">reveman</who>
    <bug_when>2012-02-06 13:18:14 -0800</bug_when>
    <thetext>Created attachment 125700
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>553277</commentid>
    <comment_count>2</comment_count>
      <attachid>125700</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-02-09 10:21:59 -0800</bug_when>
    <thetext>Comment on attachment 125700
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=125700&amp;action=review

&gt; Source/WebCore/platform/graphics/chromium/BitmapSkPictureCanvasLayerTextureUpdater.cpp:-48
&gt; -    m_device = adoptPtr(new SkDevice(SkBitmap::kARGB_8888_Config, sourceRect.width(), sourceRect.height()));

for posterity: always be the size of the texture and less resizing will be required.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>553357</commentid>
    <comment_count>3</comment_count>
      <attachid>126336</attachid>
    <who name="David Reveman">reveman</who>
    <bug_when>2012-02-09 11:27:01 -0800</bug_when>
    <thetext>Created attachment 126336
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>554712</commentid>
    <comment_count>4</comment_count>
    <who name="David Reveman">reveman</who>
    <bug_when>2012-02-11 15:23:55 -0800</bug_when>
    <thetext>

*** This bug has been marked as a duplicate of bug 78426 ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>125700</attachid>
            <date>2012-02-06 13:18:14 -0800</date>
            <delta_ts>2012-02-09 11:26:56 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>skcanvas-caching.diff</filename>
            <type>text/plain</type>
            <size>1559</size>
            <attacher name="David Reveman">reveman</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0Jp
dG1hcFNrUGljdHVyZUNhbnZhc0xheWVyVGV4dHVyZVVwZGF0ZXIuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vQml0bWFwU2tQaWN0dXJlQ2FudmFzTGF5ZXJU
ZXh0dXJlVXBkYXRlci5jcHAKaW5kZXggNGNjNmJjYy4uM2U1Mzk5NCAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vQml0bWFwU2tQaWN0dXJlQ2Fu
dmFzTGF5ZXJUZXh0dXJlVXBkYXRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vQml0bWFwU2tQaWN0dXJlQ2FudmFzTGF5ZXJUZXh0dXJlVXBkYXRl
ci5jcHAKQEAgLTQ1LDcgKzQ1LDkgQEAgQml0bWFwU2tQaWN0dXJlQ2FudmFzTGF5ZXJUZXh0dXJl
VXBkYXRlcjo6VGV4dHVyZTo6VGV4dHVyZShCaXRtYXBTa1BpY3R1cmVDYW52YXMKIAogdm9pZCBC
aXRtYXBTa1BpY3R1cmVDYW52YXNMYXllclRleHR1cmVVcGRhdGVyOjpUZXh0dXJlOjpwcmVwYXJl
UmVjdChjb25zdCBJbnRSZWN0JiBzb3VyY2VSZWN0KQogewotICAgIG1fZGV2aWNlID0gYWRvcHRQ
dHIobmV3IFNrRGV2aWNlKFNrQml0bWFwOjprQVJHQl84ODg4X0NvbmZpZywgc291cmNlUmVjdC53
aWR0aCgpLCBzb3VyY2VSZWN0LmhlaWdodCgpKSk7CisgICAgaWYgKCFtX2RldmljZSB8fCBtX2Rl
dmljZS0+d2lkdGgoKSAhPSBzb3VyY2VSZWN0LndpZHRoKCkgfHwgbV9kZXZpY2UtPmhlaWdodCgp
ICE9IHNvdXJjZVJlY3QuaGVpZ2h0KCkpCisgICAgICAgIG1fZGV2aWNlID0gYWRvcHRQdHIobmV3
IFNrRGV2aWNlKFNrQml0bWFwOjprQVJHQl84ODg4X0NvbmZpZywgc291cmNlUmVjdC53aWR0aCgp
LCBzb3VyY2VSZWN0LmhlaWdodCgpKSk7CisKICAgICBPd25QdHI8U2tDYW52YXM+IGNhbnZhcyA9
IGFkb3B0UHRyKG5ldyBTa0NhbnZhcyhtX2RldmljZS5nZXQoKSkpOwogICAgIHRleHR1cmVVcGRh
dGVyKCktPnBhaW50Q29udGVudHNSZWN0KGNhbnZhcy5nZXQoKSwgc291cmNlUmVjdCk7CiB9CkBA
IC01OSw3ICs2MSw2IEBAIHZvaWQgQml0bWFwU2tQaWN0dXJlQ2FudmFzTGF5ZXJUZXh0dXJlVXBk
YXRlcjo6VGV4dHVyZTo6dXBkYXRlUmVjdChHcmFwaGljc0NvbnRlCiAgICAgYml0bWFwLT5sb2Nr
UGl4ZWxzKCk7CiAgICAgdGV4dHVyZVVwZGF0ZXIoKS0+dXBkYXRlVGV4dHVyZVJlY3QoY29udGV4
dCwgdGV4dHVyZSgpLT5mb3JtYXQoKSwgZGVzdFJlY3QsIHN0YXRpY19jYXN0PHVpbnQ4X3QqPihi
aXRtYXAtPmdldFBpeGVscygpKSk7CiAgICAgYml0bWFwLT51bmxvY2tQaXhlbHMoKTsKLSAgICBt
X2RldmljZS5jbGVhcigpOwogfQogCiBQYXNzUmVmUHRyPEJpdG1hcFNrUGljdHVyZUNhbnZhc0xh
eWVyVGV4dHVyZVVwZGF0ZXI+IEJpdG1hcFNrUGljdHVyZUNhbnZhc0xheWVyVGV4dHVyZVVwZGF0
ZXI6OmNyZWF0ZShQYXNzT3duUHRyPExheWVyUGFpbnRlckNocm9taXVtPiBwYWludGVyLCBib29s
IHVzZU1hcFRleFN1YkltYWdlKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>126336</attachid>
            <date>2012-02-09 11:27:01 -0800</date>
            <delta_ts>2012-02-09 11:27:01 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-77897-20120209142659.patch</filename>
            <type>text/plain</type>
            <size>9314</size>
            <attacher name="David Reveman">reveman</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA3MjQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTQzMzRjODdiYzYwYmI4
Yjc3MzMxOWU4MzFkZGUxZDAyNmM2OWQyYi4uNGEwOGNiOGNiMDM0NWFiNGRjZjU3NTA5YTNhZmEx
NzU3ZDg2ZWJmYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEyLTAyLTA5ICBEYXZp
ZCBSZXZlbWFuICA8cmV2ZW1hbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW0Nocm9taXVtXSBT
a0RldmljZSBjYWNoaW5nIGJ5IHBlci10aWxlIHRleHR1cmUgdXBkYXRlci4KKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc3ODk3CisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQXZvaWQgdG8gY3JlYXRlIGEgbmV3
IFNrRGV2aWNlIGFmdGVyIGVhY2ggdXBkYXRlLiBUaGlzIGlzIGVmZmljaWVudAorICAgICAgICB3
aXRoIHRoZSBwZXItdGlsZSB0ZXh0dXJlIHVwZGF0ZXIgYXMgdXBkYXRlIHNpemUgaXMgbmV2ZXIg
Z3JlYXRlcgorICAgICAgICB0aGFuIHRoZSB0aWxlIHNpemUuIFByb3ZpZGVzIGEgcGVyZm9ybWFu
Y2UgaW1wcm92ZW1lbnQgYXQgdGhlIGNvc3Qgb2YKKyAgICAgICAgaGlnaGVyIG1lbW9yeSB1c2Fn
ZS4KKworICAgICAgICBObyBuZXcgdGVzdHMuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGlj
cy9jaHJvbWl1bS9CaXRtYXBTa1BpY3R1cmVDYW52YXNMYXllclRleHR1cmVVcGRhdGVyLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6OkJpdG1hcFNrUGljdHVyZUNhbnZhc0xheWVyVGV4dHVyZVVwZGF0
ZXI6OlRleHR1cmU6OnByZXBhcmVSZWN0KToKKyAgICAgICAgKFdlYkNvcmU6OkJpdG1hcFNrUGlj
dHVyZUNhbnZhc0xheWVyVGV4dHVyZVVwZGF0ZXI6OlRleHR1cmU6OnVwZGF0ZVJlY3QpOgorICAg
ICAgICAoV2ViQ29yZTo6Qml0bWFwU2tQaWN0dXJlQ2FudmFzTGF5ZXJUZXh0dXJlVXBkYXRlcjo6
cGFpbnRDb250ZW50c1JlY3QpOgorICAgICAgICAoV2ViQ29yZTo6Qml0bWFwU2tQaWN0dXJlQ2Fu
dmFzTGF5ZXJUZXh0dXJlVXBkYXRlcjo6dXBkYXRlVGV4dHVyZVJlY3QpOgorICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0JpdG1hcFNrUGljdHVyZUNhbnZhc0xheWVyVGV4dHVy
ZVVwZGF0ZXIuaDoKKyAgICAgICAgKFRleHR1cmUpOgorICAgICAgICAoQml0bWFwU2tQaWN0dXJl
Q2FudmFzTGF5ZXJUZXh0dXJlVXBkYXRlcik6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2hyb21pdW0vTGF5ZXJUZXh0dXJlVXBkYXRlci5oOgorICAgICAgICAoV2ViQ29yZTo6TGF5ZXJU
ZXh0dXJlVXBkYXRlcjo6VGV4dHVyZTo6cHJlcGFyZVJlY3QpOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHA6CisgICAgICAgIChXZWJD
b3JlOjpUaWxlZExheWVyQ2hyb21pdW06OnByZXBhcmVUb1VwZGF0ZVRpbGVzKToKKwogMjAxMi0w
Mi0wOSAgQWxsYW4gU2FuZGZlbGQgSmVuc2VuICA8YWxsYW4uamVuc2VuQG5va2lhLmNvbT4KIAog
ICAgICAgICBFbnN1cmUgdGltZXJzIGFuZCBvdGhlciBhY3RpdmUgRE9NIG9iamVjdHMgZG8gbm90
IGZpcmUgaW4gc3VzcGVuZGVkIGRvY3VtZW50cy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0JpdG1hcFNrUGljdHVyZUNhbnZhc0xheWVyVGV4
dHVyZVVwZGF0ZXIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vQml0bWFwU2tQaWN0dXJlQ2FudmFzTGF5ZXJUZXh0dXJlVXBkYXRlci5jcHAKaW5kZXggNGNj
NmJjYzkwZGZiMTJiZTE4ZDEyZGJiNDZlM2NhMmM4ZDM4N2M4Ni4uZTY5NTYwNDk1YzI0YjNhZWVm
YTlmNjFhYjJlMmI5OTE2YmUzY2MwMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2hyb21pdW0vQml0bWFwU2tQaWN0dXJlQ2FudmFzTGF5ZXJUZXh0dXJlVXBk
YXRlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0v
Qml0bWFwU2tQaWN0dXJlQ2FudmFzTGF5ZXJUZXh0dXJlVXBkYXRlci5jcHAKQEAgLTQzLDExICs0
MywxMyBAQCBCaXRtYXBTa1BpY3R1cmVDYW52YXNMYXllclRleHR1cmVVcGRhdGVyOjpUZXh0dXJl
OjpUZXh0dXJlKEJpdG1hcFNrUGljdHVyZUNhbnZhcwogewogfQogCi12b2lkIEJpdG1hcFNrUGlj
dHVyZUNhbnZhc0xheWVyVGV4dHVyZVVwZGF0ZXI6OlRleHR1cmU6OnByZXBhcmVSZWN0KGNvbnN0
IEludFJlY3QmIHNvdXJjZVJlY3QpCit2b2lkIEJpdG1hcFNrUGljdHVyZUNhbnZhc0xheWVyVGV4
dHVyZVVwZGF0ZXI6OlRleHR1cmU6OnByZXBhcmVSZWN0KGNvbnN0IEludFJlY3QmIHNvdXJjZVJl
Y3QsIGNvbnN0IEludFJlY3QmIGRlc3RSZWN0KQogewotICAgIG1fZGV2aWNlID0gYWRvcHRQdHIo
bmV3IFNrRGV2aWNlKFNrQml0bWFwOjprQVJHQl84ODg4X0NvbmZpZywgc291cmNlUmVjdC53aWR0
aCgpLCBzb3VyY2VSZWN0LmhlaWdodCgpKSk7CisgICAgaWYgKCFtX2RldmljZSB8fCBtX2Rldmlj
ZS0+d2lkdGgoKSAhPSB0ZXh0dXJlKCktPnNpemUoKS53aWR0aCgpIHx8IG1fZGV2aWNlLT5oZWln
aHQoKSAhPSB0ZXh0dXJlKCktPnNpemUoKS5oZWlnaHQoKSkKKyAgICAgICAgbV9kZXZpY2UgPSBh
ZG9wdFB0cihuZXcgU2tEZXZpY2UoU2tCaXRtYXA6OmtBUkdCXzg4ODhfQ29uZmlnLCB0ZXh0dXJl
KCktPnNpemUoKS53aWR0aCgpLCB0ZXh0dXJlKCktPnNpemUoKS5oZWlnaHQoKSkpOworCiAgICAg
T3duUHRyPFNrQ2FudmFzPiBjYW52YXMgPSBhZG9wdFB0cihuZXcgU2tDYW52YXMobV9kZXZpY2Uu
Z2V0KCkpKTsKLSAgICB0ZXh0dXJlVXBkYXRlcigpLT5wYWludENvbnRlbnRzUmVjdChjYW52YXMu
Z2V0KCksIHNvdXJjZVJlY3QpOworICAgIHRleHR1cmVVcGRhdGVyKCktPnBhaW50Q29udGVudHNS
ZWN0KGNhbnZhcy5nZXQoKSwgc291cmNlUmVjdCwgZGVzdFJlY3QpOwogfQogCiB2b2lkIEJpdG1h
cFNrUGljdHVyZUNhbnZhc0xheWVyVGV4dHVyZVVwZGF0ZXI6OlRleHR1cmU6OnVwZGF0ZVJlY3Qo
R3JhcGhpY3NDb250ZXh0M0QqIGNvbnRleHQsIFRleHR1cmVBbGxvY2F0b3IqIGFsbG9jYXRvciwg
Y29uc3QgSW50UmVjdCYgc291cmNlUmVjdCwgY29uc3QgSW50UmVjdCYgZGVzdFJlY3QpCkBAIC01
Nyw5ICs1OSw5IEBAIHZvaWQgQml0bWFwU2tQaWN0dXJlQ2FudmFzTGF5ZXJUZXh0dXJlVXBkYXRl
cjo6VGV4dHVyZTo6dXBkYXRlUmVjdChHcmFwaGljc0NvbnRlCiAgICAgQVNTRVJUKG1fZGV2aWNl
KTsKICAgICBjb25zdCBTa0JpdG1hcCogYml0bWFwID0gJm1fZGV2aWNlLT5hY2Nlc3NCaXRtYXAo
ZmFsc2UpOwogICAgIGJpdG1hcC0+bG9ja1BpeGVscygpOwotICAgIHRleHR1cmVVcGRhdGVyKCkt
PnVwZGF0ZVRleHR1cmVSZWN0KGNvbnRleHQsIHRleHR1cmUoKS0+Zm9ybWF0KCksIGRlc3RSZWN0
LCBzdGF0aWNfY2FzdDx1aW50OF90Kj4oYml0bWFwLT5nZXRQaXhlbHMoKSkpOworICAgIEludFJl
Y3QgaW1hZ2VSZWN0KDAsIDAsIG1fZGV2aWNlLT53aWR0aCgpLCBtX2RldmljZS0+aGVpZ2h0KCkp
OworICAgIHRleHR1cmVVcGRhdGVyKCktPnVwZGF0ZVRleHR1cmVSZWN0KGNvbnRleHQsIHRleHR1
cmUoKS0+Zm9ybWF0KCksIGltYWdlUmVjdCwgc291cmNlUmVjdCwgZGVzdFJlY3QsIHN0YXRpY19j
YXN0PHVpbnQ4X3QqPihiaXRtYXAtPmdldFBpeGVscygpKSk7CiAgICAgYml0bWFwLT51bmxvY2tQ
aXhlbHMoKTsKLSAgICBtX2RldmljZS5jbGVhcigpOwogfQogCiBQYXNzUmVmUHRyPEJpdG1hcFNr
UGljdHVyZUNhbnZhc0xheWVyVGV4dHVyZVVwZGF0ZXI+IEJpdG1hcFNrUGljdHVyZUNhbnZhc0xh
eWVyVGV4dHVyZVVwZGF0ZXI6OmNyZWF0ZShQYXNzT3duUHRyPExheWVyUGFpbnRlckNocm9taXVt
PiBwYWludGVyLCBib29sIHVzZU1hcFRleFN1YkltYWdlKQpAQCAtOTUsMTcgKzk3LDIwIEBAIHZv
aWQgQml0bWFwU2tQaWN0dXJlQ2FudmFzTGF5ZXJUZXh0dXJlVXBkYXRlcjo6cHJlcGFyZVRvVXBk
YXRlKGNvbnN0IEludFJlY3QmIGNvCiAgICAgU2tQaWN0dXJlQ2FudmFzTGF5ZXJUZXh0dXJlVXBk
YXRlcjo6cHJlcGFyZVRvVXBkYXRlKGNvbnRlbnRSZWN0LCB0aWxlU2l6ZSwgYm9yZGVyVGV4ZWxz
LCBjb250ZW50c1NjYWxlLCByZXN1bHRpbmdPcGFxdWVSZWN0KTsKIH0KIAotdm9pZCBCaXRtYXBT
a1BpY3R1cmVDYW52YXNMYXllclRleHR1cmVVcGRhdGVyOjpwYWludENvbnRlbnRzUmVjdChTa0Nh
bnZhcyogY2FudmFzLCBjb25zdCBJbnRSZWN0JiBzb3VyY2VSZWN0KQordm9pZCBCaXRtYXBTa1Bp
Y3R1cmVDYW52YXNMYXllclRleHR1cmVVcGRhdGVyOjpwYWludENvbnRlbnRzUmVjdChTa0NhbnZh
cyogY2FudmFzLCBjb25zdCBJbnRSZWN0JiBzb3VyY2VSZWN0LCBjb25zdCBJbnRSZWN0JiBkZXN0
UmVjdCkKIHsKLSAgICAvLyBUcmFuc2xhdGUgdGhlIG9yaWdpbiBvZiBjb250ZW50UmVjdCB0byB0
aGF0IG9mIHNvdXJjZVJlY3QuCi0gICAgY2FudmFzLT50cmFuc2xhdGUoY29udGVudFJlY3QoKS54
KCkgLSBzb3VyY2VSZWN0LngoKSwKLSAgICAgICAgICAgICAgICAgICAgICBjb250ZW50UmVjdCgp
LnkoKSAtIHNvdXJjZVJlY3QueSgpKTsKKyAgICBjYW52YXMtPmNsaXBSZWN0KFNrUmVjdChkZXN0
UmVjdCkpOworCisgICAgLy8gVHJhbnNsYXRlIHRoZSBvcmlnaW4gb2YgY29udGVudFJlY3QgdG8g
dGhhdCBvZiBkZXN0UmVjdC4KKyAgICAvLyBOb3RlIHRoYXQgZGVzdFJlY3QgaXMgZGVmaW5lZCBy
ZWxhdGl2ZSB0byBzb3VyY2VSZWN0LgorICAgIGNhbnZhcy0+dHJhbnNsYXRlKGNvbnRlbnRSZWN0
KCkueCgpIC0gc291cmNlUmVjdC54KCkgKyBkZXN0UmVjdC54KCksCisgICAgICAgICAgICAgICAg
ICAgICAgY29udGVudFJlY3QoKS55KCkgLSBzb3VyY2VSZWN0LnkoKSArIGRlc3RSZWN0LnkoKSk7
CiAgICAgZHJhd1BpY3R1cmUoY2FudmFzKTsKIH0KIAotdm9pZCBCaXRtYXBTa1BpY3R1cmVDYW52
YXNMYXllclRleHR1cmVVcGRhdGVyOjp1cGRhdGVUZXh0dXJlUmVjdChHcmFwaGljc0NvbnRleHQz
RCogY29udGV4dCwgR0MzRGVudW0gZm9ybWF0LCBjb25zdCBJbnRSZWN0JiBkZXN0UmVjdCwgY29u
c3QgdWludDhfdCogcGl4ZWxzKQordm9pZCBCaXRtYXBTa1BpY3R1cmVDYW52YXNMYXllclRleHR1
cmVVcGRhdGVyOjp1cGRhdGVUZXh0dXJlUmVjdChHcmFwaGljc0NvbnRleHQzRCogY29udGV4dCwg
R0MzRGVudW0gZm9ybWF0LCBjb25zdCBJbnRSZWN0JiBpbWFnZVJlY3QsIGNvbnN0IEludFJlY3Qm
IHNvdXJjZVJlY3QsIGNvbnN0IEludFJlY3QmIGRlc3RSZWN0LCBjb25zdCB1aW50OF90KiBwaXhl
bHMpCiB7Ci0gICAgbV90ZXhTdWJJbWFnZS51cGxvYWQocGl4ZWxzLCBkZXN0UmVjdCwgZGVzdFJl
Y3QsIGRlc3RSZWN0LCBmb3JtYXQsIGNvbnRleHQpOworICAgIG1fdGV4U3ViSW1hZ2UudXBsb2Fk
KHBpeGVscywgaW1hZ2VSZWN0LCBkZXN0UmVjdCwgZGVzdFJlY3QsIGZvcm1hdCwgY29udGV4dCk7
CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0JpdG1hcFNrUGljdHVyZUNhbnZhc0xheWVyVGV4
dHVyZVVwZGF0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVt
L0JpdG1hcFNrUGljdHVyZUNhbnZhc0xheWVyVGV4dHVyZVVwZGF0ZXIuaAppbmRleCA4ZDUyNDMz
ZDBiMGVmMmVkNWI5NjEyODczYzQ0OWQyYTA0MzI5ZTI4Li40N2U2ZmViZTRmNDQ2ZGQ1NzRjODI1
MzI0YjNhOTNjZmRjMGRiY2IzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jaHJvbWl1bS9CaXRtYXBTa1BpY3R1cmVDYW52YXNMYXllclRleHR1cmVVcGRhdGVy
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vQml0bWFw
U2tQaWN0dXJlQ2FudmFzTGF5ZXJUZXh0dXJlVXBkYXRlci5oCkBAIC00Niw3ICs0Niw3IEBAIHB1
YmxpYzoKICAgICBwdWJsaWM6CiAgICAgICAgIFRleHR1cmUoQml0bWFwU2tQaWN0dXJlQ2FudmFz
TGF5ZXJUZXh0dXJlVXBkYXRlciosIFBhc3NPd25QdHI8TWFuYWdlZFRleHR1cmU+KTsKIAotICAg
ICAgICB2aXJ0dWFsIHZvaWQgcHJlcGFyZVJlY3QoY29uc3QgSW50UmVjdCYgc291cmNlUmVjdCk7
CisgICAgICAgIHZpcnR1YWwgdm9pZCBwcmVwYXJlUmVjdChjb25zdCBJbnRSZWN0JiBzb3VyY2VS
ZWN0LCBjb25zdCBJbnRSZWN0JiBkZXN0UmVjdCk7CiAgICAgICAgIHZpcnR1YWwgdm9pZCB1cGRh
dGVSZWN0KEdyYXBoaWNzQ29udGV4dDNEKiwgVGV4dHVyZUFsbG9jYXRvciosIGNvbnN0IEludFJl
Y3QmIHNvdXJjZVJlY3QsIGNvbnN0IEludFJlY3QmIGRlc3RSZWN0KTsKIAogICAgIHByaXZhdGU6
CkBAIC02Miw4ICs2Miw4IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIFBhc3NPd25QdHI8TGF5ZXJU
ZXh0dXJlVXBkYXRlcjo6VGV4dHVyZT4gY3JlYXRlVGV4dHVyZShUZXh0dXJlTWFuYWdlciopOwog
ICAgIHZpcnR1YWwgU2FtcGxlZFRleGVsRm9ybWF0IHNhbXBsZWRUZXhlbEZvcm1hdChHQzNEZW51
bSB0ZXh0dXJlRm9ybWF0KTsKICAgICB2aXJ0dWFsIHZvaWQgcHJlcGFyZVRvVXBkYXRlKGNvbnN0
IEludFJlY3QmIGNvbnRlbnRSZWN0LCBjb25zdCBJbnRTaXplJiB0aWxlU2l6ZSwgaW50IGJvcmRl
clRleGVscywgZmxvYXQgY29udGVudHNTY2FsZSwgSW50UmVjdCogcmVzdWx0aW5nT3BhcXVlUmVj
dCk7Ci0gICAgdm9pZCBwYWludENvbnRlbnRzUmVjdChTa0NhbnZhcyosIGNvbnN0IEludFJlY3Qm
IHNvdXJjZVJlY3QpOwotICAgIHZvaWQgdXBkYXRlVGV4dHVyZVJlY3QoR3JhcGhpY3NDb250ZXh0
M0QqLCBHQzNEZW51bSBmb3JtYXQsIGNvbnN0IEludFJlY3QmIGRlc3RSZWN0LCBjb25zdCB1aW50
OF90KiBwaXhlbHMpOworICAgIHZvaWQgcGFpbnRDb250ZW50c1JlY3QoU2tDYW52YXMqLCBjb25z
dCBJbnRSZWN0JiBzb3VyY2VSZWN0LCBjb25zdCBJbnRSZWN0JiBkZXN0UmVjdCk7CisgICAgdm9p
ZCB1cGRhdGVUZXh0dXJlUmVjdChHcmFwaGljc0NvbnRleHQzRCosIEdDM0RlbnVtIGZvcm1hdCwg
Y29uc3QgSW50UmVjdCYgaW1hZ2VSZWN0LCBjb25zdCBJbnRSZWN0JiBzb3VyY2VSZWN0LCBjb25z
dCBJbnRSZWN0JiBkZXN0UmVjdCwgY29uc3QgdWludDhfdCogcGl4ZWxzKTsKIAogcHJpdmF0ZToK
ICAgICBCaXRtYXBTa1BpY3R1cmVDYW52YXNMYXllclRleHR1cmVVcGRhdGVyKFBhc3NPd25QdHI8
TGF5ZXJQYWludGVyQ2hyb21pdW0+LCBib29sIHVzZU1hcFRleFN1YkltYWdlKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xheWVyVGV4dHVy
ZVVwZGF0ZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL0xh
eWVyVGV4dHVyZVVwZGF0ZXIuaAppbmRleCAxNzlmZWE2ZTEyYmYxMDNjNWIwNzQzNWNmMjRhM2E0
OGY4Y2Q5MzIzLi5mOGNjZGNiNjdjM2M4ZjNmZWI4NTg4MjgzNGI1MTZlYzBmZWRiNzFhIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9MYXllclRl
eHR1cmVVcGRhdGVyLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hy
b21pdW0vTGF5ZXJUZXh0dXJlVXBkYXRlci5oCkBAIC00OSw3ICs0OSw3IEBAIHB1YmxpYzoKICAg
ICAgICAgdmlydHVhbCB+VGV4dHVyZSgpIHsgfQogCiAgICAgICAgIE1hbmFnZWRUZXh0dXJlKiB0
ZXh0dXJlKCkgeyByZXR1cm4gbV90ZXh0dXJlLmdldCgpOyB9Ci0gICAgICAgIHZpcnR1YWwgdm9p
ZCBwcmVwYXJlUmVjdChjb25zdCBJbnRSZWN0JiAvKiBzb3VyY2VSZWN0ICovKSB7IH0KKyAgICAg
ICAgdmlydHVhbCB2b2lkIHByZXBhcmVSZWN0KGNvbnN0IEludFJlY3QmIC8qIHNvdXJjZVJlY3Qg
Ki8sIGNvbnN0IEludFJlY3QmIC8qIGRlc3RSZWN0ICovKSB7IH0KICAgICAgICAgdmlydHVhbCB2
b2lkIHVwZGF0ZVJlY3QoR3JhcGhpY3NDb250ZXh0M0QqLCBUZXh0dXJlQWxsb2NhdG9yKiwgY29u
c3QgSW50UmVjdCYgc291cmNlUmVjdCwgY29uc3QgSW50UmVjdCYgZGVzdFJlY3QpID0gMDsKICAg
ICBwcm90ZWN0ZWQ6CiAgICAgICAgIGV4cGxpY2l0IFRleHR1cmUoUGFzc093blB0cjxNYW5hZ2Vk
VGV4dHVyZT4gdGV4dHVyZSkgOiBtX3RleHR1cmUodGV4dHVyZSkgeyB9CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9UaWxlZExheWVyQ2hyb21p
dW0uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRM
YXllckNocm9taXVtLmNwcAppbmRleCBkOWUyNDg3ZDgwYmFmMDIwYTRjMmJhMTVhMjQ3Y2U4YzYw
YzA2YTQ5Li5jNWM4ZmVmOWZhODc0ZTZiYmM0ZTc3M2Q2MTYxY2Q4YWVlZWY0ZTRiIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9UaWxlZExheWVy
Q2hyb21pdW0uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHAKQEAgLTQ4OSw3ICs0ODksMTEgQEAgdm9pZCBUaWxl
ZExheWVyQ2hyb21pdW06OnByZXBhcmVUb1VwZGF0ZVRpbGVzKGJvb2wgaWRsZSwgaW50IGxlZnQs
IGludCB0b3AsIGludAogICAgICAgICAgICAgaWYgKHNvdXJjZVJlY3QuaXNFbXB0eSgpKQogICAg
ICAgICAgICAgICAgIGNvbnRpbnVlOwogCi0gICAgICAgICAgICB0aWxlLT50ZXh0dXJlKCktPnBy
ZXBhcmVSZWN0KHNvdXJjZVJlY3QpOworICAgICAgICAgICAgY29uc3QgSW50UG9pbnQgYW5jaG9y
ID0gbV90aWxlci0+dGlsZVJlY3QodGlsZSkubG9jYXRpb24oKTsKKyAgICAgICAgICAgIC8vIENh
bGN1bGF0ZSB0aWxlLXNwYWNlIHJlY3RhbmdsZSB0byB1cGxvYWQgaW50by4KKyAgICAgICAgICAg
IEludFJlY3QgZGVzdFJlY3QoSW50UG9pbnQoc291cmNlUmVjdC54KCkgLSBhbmNob3IueCgpLCBz
b3VyY2VSZWN0LnkoKSAtIGFuY2hvci55KCkpLCBzb3VyY2VSZWN0LnNpemUoKSk7CisKKyAgICAg
ICAgICAgIHRpbGUtPnRleHR1cmUoKS0+cHJlcGFyZVJlY3Qoc291cmNlUmVjdCwgZGVzdFJlY3Qp
OwogICAgICAgICB9CiAgICAgfQogfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>