<?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>179660</bug_id>
          
          <creation_ts>2017-11-14 02:18:56 -0800</creation_ts>
          <short_desc>[Cairo] Move native image drawing operation to CairoOperations</short_desc>
          <delta_ts>2017-11-15 09:32:20 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Zan Dobersek">zan</reporter>
          <assigned_to name="Zan Dobersek">zan</assigned_to>
          <cc>bugs-noreply</cc>
    
    <cc>cgarcia</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1371344</commentid>
    <comment_count>0</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2017-11-14 02:18:56 -0800</bug_when>
    <thetext>[Cairo] Move native image drawing operation to CairoOperations</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1371345</commentid>
    <comment_count>1</comment_count>
      <attachid>326871</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2017-11-14 02:21:20 -0800</bug_when>
    <thetext>Created attachment 326871
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1371349</commentid>
    <comment_count>2</comment_count>
      <attachid>326871</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-11-14 03:03:11 -0800</bug_when>
    <thetext>Comment on attachment 326871
Patch

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

&gt; Source/WebCore/platform/graphics/cairo/CairoOperations.cpp:568
&gt; +void drawNativeImage(PlatformContextCairo&amp; platformContext, const NativeImagePtr&amp; image, const FloatRect&amp; destRect,
&gt; +    const FloatRect&amp; srcRect, CompositeOperator compositeOperator, BlendMode blendMode,
&gt; +    ImageOrientation orientation, GraphicsContext&amp; targetContext)

This should be a single line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1371361</commentid>
    <comment_count>3</comment_count>
      <attachid>326874</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2017-11-14 05:41:42 -0800</bug_when>
    <thetext>Created attachment 326874
Patch for landing</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1371362</commentid>
    <comment_count>4</comment_count>
      <attachid>326874</attachid>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2017-11-14 05:42:17 -0800</bug_when>
    <thetext>Comment on attachment 326874
Patch for landing

Clearing flags on attachment: 326874

Committed r224813: &lt;https://trac.webkit.org/changeset/224813&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1371363</commentid>
    <comment_count>5</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2017-11-14 05:42:21 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1371610</commentid>
    <comment_count>6</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-11-14 15:40:26 -0800</bug_when>
    <thetext>Committed r224854: &lt;https://trac.webkit.org/changeset/224854&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1371611</commentid>
    <comment_count>7</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-11-14 15:42:51 -0800</bug_when>
    <thetext>Committed r224855: &lt;https://trac.webkit.org/changeset/224855&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1371628</commentid>
    <comment_count>8</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-11-14 16:12:15 -0800</bug_when>
    <thetext>Committed r224859: &lt;https://trac.webkit.org/changeset/224859&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1371872</commentid>
    <comment_count>9</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-11-15 09:32:20 -0800</bug_when>
    <thetext>&lt;rdar://problem/35561894&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>326871</attachid>
            <date>2017-11-14 02:21:20 -0800</date>
            <delta_ts>2017-11-14 05:41:38 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-179660-20171114112118.patch</filename>
            <type>text/plain</type>
            <size>10670</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI0ODA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjk4Mjg4MjMxYzE1YzRj
YTk2OGRmYTRlOTY1MmI0YTZkNDdkNTE5MC4uMDU1OTg4NDkwMTMxZTU1ZGFlNTIzOTgzMzVkMDcy
ZWJjNmEyNjcxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI4IEBACiAyMDE3LTExLTE0ICBaYW4g
RG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KIAorICAgICAgICBbQ2Fpcm9dIE1vdmUg
bmF0aXZlIGltYWdlIGRyYXdpbmcgb3BlcmF0aW9uIHRvIENhaXJvT3BlcmF0aW9ucworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc5NjYwCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVW5pZnkgdGhlIG5hdGl2
ZSBpbWFnZSBkcmF3aW5nIG9wZXJhdGlvbiBiZWhhdmlvciBiZXR3ZWVuIHRoZQorICAgICAgICBD
YWlyby1zcGVjaWZpYyBHcmFwaGljc0NvbnRleHQgYW5kIGRyYXdOYXRpdmVJbWFnZSgpIGltcGxl
bWVudGF0aW9ucyBhbmQKKyAgICAgICAgdGhlbiBtb3ZlIHRoZSBjb2RlIGludG8gdGhlIENhaXJv
OjpkcmF3TmF0aXZlSW1hZ2UoKSBmdW5jdGlvbiwgaW5zaWRlCisgICAgICAgIHRoZSBDYWlyb09w
ZXJhdGlvbnMgaW1wbGVtZW50YXRpb24gZmlsZS4KKworICAgICAgICBObyBuZXcgdGVzdHMgLS0g
bm8gY2hhbmdlIGluIGJlaGF2aW9yLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2Fp
cm8vQ2Fpcm9PcGVyYXRpb25zLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhaXJvOjpjYWlyb1N1
cmZhY2VIYXNBbHBoYSk6CisgICAgICAgIChXZWJDb3JlOjpDYWlybzo6ZHJhd05hdGl2ZUltYWdl
KToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9DYWlyb09wZXJhdGlvbnMuaDoK
KyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFwaGljc0NvbnRleHRDYWlyby5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ6OmRyYXdOYXRpdmVJbWFnZSk6
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vTmF0aXZlSW1hZ2VDYWlyby5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpkcmF3TmF0aXZlSW1hZ2UpOgorCisyMDE3LTExLTE0ICBaYW4g
RG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KKwogICAgICAgICBbQ2Fpcm9dIFBlcmZv
cm0gR3JhcGhpY3NDb250ZXh0UGxhdGZvcm1Qcml2YXRlIG1ldGhvZCBjYWxscyBmcm9tIENhaXJv
T3BlcmF0aW9ucwogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTc5NjU3CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2NhaXJvL0NhaXJvT3BlcmF0aW9ucy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jYWlyby9DYWlyb09wZXJhdGlvbnMuY3BwCmluZGV4IDBmYzg1NDg4ZDA1MjBmZmQyM2U1
NzRmOWViMjM5M2U5NDg2YWYzY2MuLmMyYjRlMGExNDQ2MTU1NTlkODkwMzc2ZjA0OTZlYzk5NmI1
M2EzYTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhaXJv
L0NhaXJvT3BlcmF0aW9ucy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2Fpcm8vQ2Fpcm9PcGVyYXRpb25zLmNwcApAQCAtMjMxLDYgKzIzMSwxMSBAQCBzdGF0aWMg
dm9pZCBkcmF3R2x5cGhzU2hhZG93KFBsYXRmb3JtQ29udGV4dENhaXJvJiBwbGF0Zm9ybUNvbnRl
eHQsIGNvbnN0IEdyYXBoaQogICAgIH0KIH0KIAorc3RhdGljIGJvb2wgY2Fpcm9TdXJmYWNlSGFz
QWxwaGEoY2Fpcm9fc3VyZmFjZV90KiBzdXJmYWNlKQoreworICAgIHJldHVybiBjYWlyb19zdXJm
YWNlX2dldF9jb250ZW50KHN1cmZhY2UpICE9IENBSVJPX0NPTlRFTlRfQ09MT1I7Cit9CisKIG5h
bWVzcGFjZSBTdGF0ZSB7CiAKIHZvaWQgc2V0U3Ryb2tlVGhpY2tuZXNzKFBsYXRmb3JtQ29udGV4
dENhaXJvJiBwbGF0Zm9ybUNvbnRleHQsIGZsb2F0IHN0cm9rZVRoaWNrbmVzcykKQEAgLTU1OCw2
ICs1NjMsNDMgQEAgdm9pZCBkcmF3R2x5cGhzKFBsYXRmb3JtQ29udGV4dENhaXJvJiBwbGF0Zm9y
bUNvbnRleHQsIGNvbnN0IEdyYXBoaWNzQ29udGV4dFN0YXQKICAgICBjYWlyb19yZXN0b3JlKGNy
KTsKIH0KIAordm9pZCBkcmF3TmF0aXZlSW1hZ2UoUGxhdGZvcm1Db250ZXh0Q2Fpcm8mIHBsYXRm
b3JtQ29udGV4dCwgY29uc3QgTmF0aXZlSW1hZ2VQdHImIGltYWdlLCBjb25zdCBGbG9hdFJlY3Qm
IGRlc3RSZWN0LAorICAgIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgQ29tcG9zaXRlT3BlcmF0
b3IgY29tcG9zaXRlT3BlcmF0b3IsIEJsZW5kTW9kZSBibGVuZE1vZGUsCisgICAgSW1hZ2VPcmll
bnRhdGlvbiBvcmllbnRhdGlvbiwgR3JhcGhpY3NDb250ZXh0JiB0YXJnZXRDb250ZXh0KQorewor
ICAgIHBsYXRmb3JtQ29udGV4dC5zYXZlKCk7CisKKyAgICAvLyBTZXQgdGhlIGNvbXBvc2l0aW5n
IG9wZXJhdGlvbi4KKyAgICBpZiAoY29tcG9zaXRlT3BlcmF0b3IgPT0gQ29tcG9zaXRlU291cmNl
T3ZlciAmJiBibGVuZE1vZGUgPT0gQmxlbmRNb2RlTm9ybWFsICYmICFjYWlyb1N1cmZhY2VIYXNB
bHBoYShpbWFnZS5nZXQoKSkpCisgICAgICAgIENhaXJvOjpTdGF0ZTo6c2V0Q29tcG9zaXRlT3Bl
cmF0aW9uKHBsYXRmb3JtQ29udGV4dCwgQ29tcG9zaXRlQ29weSwgQmxlbmRNb2RlTm9ybWFsKTsK
KyAgICBlbHNlCisgICAgICAgIENhaXJvOjpTdGF0ZTo6c2V0Q29tcG9zaXRlT3BlcmF0aW9uKHBs
YXRmb3JtQ29udGV4dCwgY29tcG9zaXRlT3BlcmF0b3IsIGJsZW5kTW9kZSk7CisKKyNpZiBFTkFC
TEUoSU1BR0VfREVDT0RFUl9ET1dOX1NBTVBMSU5HKQorICAgIEludFNpemUgc2NhbGVkU2l6ZSA9
IG5hdGl2ZUltYWdlU2l6ZShpbWFnZSk7CisgICAgRmxvYXRSZWN0IHNyYyA9IGFkanVzdFNvdXJj
ZVJlY3RGb3JEb3duU2FtcGxpbmcoc3JjUmVjdCwgc2NhbGVkU2l6ZSk7CisjZWxzZQorICAgIEZs
b2F0UmVjdCBzcmMoc3JjUmVjdCk7CisjZW5kaWYKKworICAgIEZsb2F0UmVjdCBkc3QgPSBkZXN0
UmVjdDsKKworICAgIGlmIChvcmllbnRhdGlvbiAhPSBEZWZhdWx0SW1hZ2VPcmllbnRhdGlvbikg
eworICAgICAgICAvLyBJbWFnZU9yaWVudGF0aW9uIGV4cGVjdHMgdGhlIG9yaWdpbiB0byBiZSBh
dCAoMCwgMCkuCisgICAgICAgIENhaXJvOjp0cmFuc2xhdGUocGxhdGZvcm1Db250ZXh0LCBkc3Qu
eCgpLCBkc3QueSgpKTsKKyAgICAgICAgZHN0LnNldExvY2F0aW9uKEZsb2F0UG9pbnQoKSk7Cisg
ICAgICAgIENhaXJvOjpjb25jYXRDVE0ocGxhdGZvcm1Db250ZXh0LCBvcmllbnRhdGlvbi50cmFu
c2Zvcm1Gcm9tRGVmYXVsdChkc3Quc2l6ZSgpKSk7CisgICAgICAgIGlmIChvcmllbnRhdGlvbi51
c2VzV2lkdGhBc0hlaWdodCgpKSB7CisgICAgICAgICAgICAvLyBUaGUgZGVzdGluYXRpb24gcmVj
dGFuZ2xlIHdpbGwgaGF2ZSBpdHMgd2lkdGggYW5kIGhlaWdodCBhbHJlYWR5IHJldmVyc2VkIGZv
ciB0aGUgb3JpZW50YXRpb24gb2YKKyAgICAgICAgICAgIC8vIHRoZSBpbWFnZSwgYXMgaXQgd2Fz
IG5lZWRlZCBmb3IgcGFnZSBsYXlvdXQsIHNvIHdlIG5lZWQgdG8gcmV2ZXJzZSBpdCBiYWNrIGhl
cmUuCisgICAgICAgICAgICBkc3QgPSBGbG9hdFJlY3QoZHN0LngoKSwgZHN0LnkoKSwgZHN0Lmhl
aWdodCgpLCBkc3Qud2lkdGgoKSk7CisgICAgICAgIH0KKyAgICB9CisKKyAgICBwbGF0Zm9ybUNv
bnRleHQuZHJhd1N1cmZhY2VUb0NvbnRleHQoaW1hZ2UuZ2V0KCksIGRzdCwgc3JjLCB0YXJnZXRD
b250ZXh0KTsKKyAgICBwbGF0Zm9ybUNvbnRleHQucmVzdG9yZSgpOworfQorCiB2b2lkIGRyYXdQ
YXR0ZXJuKFBsYXRmb3JtQ29udGV4dENhaXJvJiBwbGF0Zm9ybUNvbnRleHQsIEltYWdlJiBpbWFn
ZSwgY29uc3QgRmxvYXRSZWN0JiBkZXN0UmVjdCwgY29uc3QgRmxvYXRSZWN0JiB0aWxlUmVjdCwg
Y29uc3QgQWZmaW5lVHJhbnNmb3JtJiBwYXR0ZXJuVHJhbnNmb3JtLCBjb25zdCBGbG9hdFBvaW50
JiBwaGFzZSwgQ29tcG9zaXRlT3BlcmF0b3IgY29tcG9zaXRlT3BlcmF0b3IsIEJsZW5kTW9kZSBi
bGVuZE1vZGUpCiB7CiAgICAgaWYgKGF1dG8gc3VyZmFjZSA9IGltYWdlLm5hdGl2ZUltYWdlRm9y
Q3VycmVudEZyYW1lKCkpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jYWlyby9DYWlyb09wZXJhdGlvbnMuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NhaXJvL0NhaXJvT3BlcmF0aW9ucy5oCmluZGV4IDIyZGE4NDU1MzdhODRiOWYzMmUw
NzQyYTRjMDVhOWEwNTQ4YzQ3ZTguLjVlMGE2ZTJjZTc2YjNmZTAyYzNhMTc3NWVlMGQ2MDI3MGYy
MjkxMmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhaXJv
L0NhaXJvT3BlcmF0aW9ucy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2NhaXJvL0NhaXJvT3BlcmF0aW9ucy5oCkBAIC05NSw2ICs5NSw3IEBAIHZvaWQgY2xlYXJSZWN0
KFBsYXRmb3JtQ29udGV4dENhaXJvJiwgY29uc3QgRmxvYXRSZWN0Jik7CiAKIHZvaWQgZHJhd0ds
eXBocyhHcmFwaGljc0NvbnRleHQmLCBjb25zdCBHcmFwaGljc0NvbnRleHRTdGF0ZSYsIGJvb2ws
IGNvbnN0IEZsb2F0UG9pbnQmLCBjYWlyb19zY2FsZWRfZm9udF90KiwgZG91YmxlLCBjb25zdCBW
ZWN0b3I8Y2Fpcm9fZ2x5cGhfdD4mLCBmbG9hdCwgR3JhcGhpY3NDb250ZXh0Jik7CiAKK3ZvaWQg
ZHJhd05hdGl2ZUltYWdlKFBsYXRmb3JtQ29udGV4dENhaXJvJiwgY29uc3QgTmF0aXZlSW1hZ2VQ
dHImLCBjb25zdCBGbG9hdFJlY3QmLCBjb25zdCBGbG9hdFJlY3QmLCBDb21wb3NpdGVPcGVyYXRv
ciwgQmxlbmRNb2RlLCBJbWFnZU9yaWVudGF0aW9uLCBHcmFwaGljc0NvbnRleHQmKTsKIHZvaWQg
ZHJhd1BhdHRlcm4oUGxhdGZvcm1Db250ZXh0Q2Fpcm8mLCBJbWFnZSYsIGNvbnN0IEZsb2F0UmVj
dCYsIGNvbnN0IEZsb2F0UmVjdCYsIGNvbnN0IEFmZmluZVRyYW5zZm9ybSYsIGNvbnN0IEZsb2F0
UG9pbnQmLCBDb21wb3NpdGVPcGVyYXRvciwgQmxlbmRNb2RlKTsKIAogdm9pZCBkcmF3UmVjdChQ
bGF0Zm9ybUNvbnRleHRDYWlybyYsIGNvbnN0IEZsb2F0UmVjdCYsIGZsb2F0LCBjb25zdCBHcmFw
aGljc0NvbnRleHRTdGF0ZSYpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3NDb250ZXh0Q2Fpcm8uY3BwIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3NDb250ZXh0Q2Fpcm8uY3BwCmluZGV4IDIw
NGI3M2JiMjVhMmVmMmNiY2RhN2UzMTkwZDg3ZjYzNmE0YTMzYTYuLjUxNzM5ODgwOGE4NDc1ODJj
NWNjZWE3N2VmMDZkYjQyZjMzZjRmMTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NhaXJvL0dyYXBoaWNzQ29udGV4dENhaXJvLmNwcAorKysgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFwaGljc0NvbnRleHRDYWlyby5jcHAK
QEAgLTI0NCw0MCArMjQ0LDE4IEBAIHZvaWQgR3JhcGhpY3NDb250ZXh0OjpkcmF3UmVjdChjb25z
dCBGbG9hdFJlY3QmIHJlY3QsIGZsb2F0IGJvcmRlclRoaWNrbmVzcykKICAgICBDYWlybzo6ZHJh
d1JlY3QoKnBsYXRmb3JtQ29udGV4dCgpLCByZWN0LCBib3JkZXJUaGlja25lc3MsIHN0YXRlKCkp
OwogfQogCi12b2lkIEdyYXBoaWNzQ29udGV4dDo6ZHJhd05hdGl2ZUltYWdlKGNvbnN0IE5hdGl2
ZUltYWdlUHRyJiBpbWFnZSwgY29uc3QgRmxvYXRTaXplJiBpbWFnZVNpemUsIGNvbnN0IEZsb2F0
UmVjdCYgZGVzdFJlY3QsIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgQ29tcG9zaXRlT3BlcmF0
b3Igb3AsIEJsZW5kTW9kZSBibGVuZE1vZGUsIEltYWdlT3JpZW50YXRpb24gb3JpZW50YXRpb24p
Cit2b2lkIEdyYXBoaWNzQ29udGV4dDo6ZHJhd05hdGl2ZUltYWdlKGNvbnN0IE5hdGl2ZUltYWdl
UHRyJiBpbWFnZSwgY29uc3QgRmxvYXRTaXplJiBpbWFnZVNpemUsIGNvbnN0IEZsb2F0UmVjdCYg
ZGVzdFJlY3QsIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwgQ29tcG9zaXRlT3BlcmF0b3IgY29t
cG9zaXRlT3BlcmF0b3IsIEJsZW5kTW9kZSBibGVuZE1vZGUsIEltYWdlT3JpZW50YXRpb24gb3Jp
ZW50YXRpb24pCiB7CiAgICAgaWYgKHBhaW50aW5nRGlzYWJsZWQoKSkKICAgICAgICAgcmV0dXJu
OwogCiAgICAgaWYgKG1faW1wbCkgewotICAgICAgICBtX2ltcGwtPmRyYXdOYXRpdmVJbWFnZShp
bWFnZSwgaW1hZ2VTaXplLCBkZXN0UmVjdCwgc3JjUmVjdCwgb3AsIGJsZW5kTW9kZSwgb3JpZW50
YXRpb24pOworICAgICAgICBtX2ltcGwtPmRyYXdOYXRpdmVJbWFnZShpbWFnZSwgaW1hZ2VTaXpl
LCBkZXN0UmVjdCwgc3JjUmVjdCwgY29tcG9zaXRlT3BlcmF0b3IsIGJsZW5kTW9kZSwgb3JpZW50
YXRpb24pOwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgcGxhdGZvcm1Db250ZXh0KCkt
PnNhdmUoKTsKLQotICAgIC8vIFNldCB0aGUgY29tcG9zaXRpbmcgb3BlcmF0aW9uLgotICAgIGlm
IChvcCA9PSBDb21wb3NpdGVTb3VyY2VPdmVyICYmIGJsZW5kTW9kZSA9PSBCbGVuZE1vZGVOb3Jt
YWwpCi0gICAgICAgIHNldENvbXBvc2l0ZU9wZXJhdGlvbihDb21wb3NpdGVDb3B5KTsKLSAgICBl
bHNlCi0gICAgICAgIHNldENvbXBvc2l0ZU9wZXJhdGlvbihvcCwgYmxlbmRNb2RlKTsKLQotICAg
IEZsb2F0UmVjdCBkc3QgPSBkZXN0UmVjdDsKLQotICAgIGlmIChvcmllbnRhdGlvbiAhPSBEZWZh
dWx0SW1hZ2VPcmllbnRhdGlvbikgewotICAgICAgICAvLyBJbWFnZU9yaWVudGF0aW9uIGV4cGVj
dHMgdGhlIG9yaWdpbiB0byBiZSBhdCAoMCwgMCkuCi0gICAgICAgIHRyYW5zbGF0ZShkc3QueCgp
LCBkc3QueSgpKTsKLSAgICAgICAgZHN0LnNldExvY2F0aW9uKEZsb2F0UG9pbnQoKSk7Ci0gICAg
ICAgIGNvbmNhdENUTShvcmllbnRhdGlvbi50cmFuc2Zvcm1Gcm9tRGVmYXVsdChkc3Quc2l6ZSgp
KSk7Ci0gICAgICAgIGlmIChvcmllbnRhdGlvbi51c2VzV2lkdGhBc0hlaWdodCgpKSB7Ci0gICAg
ICAgICAgICAvLyBUaGUgZGVzdGluYXRpb24gcmVjdGFuZ2xlIHdpbGwgaGF2ZSBpdHMgd2lkdGgg
YW5kIGhlaWdodCBhbHJlYWR5IHJldmVyc2VkIGZvciB0aGUgb3JpZW50YXRpb24gb2YKLSAgICAg
ICAgICAgIC8vIHRoZSBpbWFnZSwgYXMgaXQgd2FzIG5lZWRlZCBmb3IgcGFnZSBsYXlvdXQsIHNv
IHdlIG5lZWQgdG8gcmV2ZXJzZSBpdCBiYWNrIGhlcmUuCi0gICAgICAgICAgICBkc3QgPSBGbG9h
dFJlY3QoZHN0LngoKSwgZHN0LnkoKSwgZHN0LmhlaWdodCgpLCBkc3Qud2lkdGgoKSk7Ci0gICAg
ICAgIH0KLSAgICB9Ci0KLSAgICBwbGF0Zm9ybUNvbnRleHQoKS0+ZHJhd1N1cmZhY2VUb0NvbnRl
eHQoaW1hZ2UuZ2V0KCksIGRzdCwgc3JjUmVjdCwgKnRoaXMpOwotICAgIHBsYXRmb3JtQ29udGV4
dCgpLT5yZXN0b3JlKCk7CisgICAgQVNTRVJUKGhhc1BsYXRmb3JtQ29udGV4dCgpKTsKKyAgICBD
YWlybzo6ZHJhd05hdGl2ZUltYWdlKCpwbGF0Zm9ybUNvbnRleHQoKSwgaW1hZ2UsIGRlc3RSZWN0
LCBzcmNSZWN0LCBjb21wb3NpdGVPcGVyYXRvciwgYmxlbmRNb2RlLCBvcmllbnRhdGlvbiwgKnRo
aXMpOwogfQogCiAvLyBUaGlzIGlzIG9ubHkgdXNlZCB0byBkcmF3IGJvcmRlcnMsIHNvIHdlIHNo
b3VsZCBub3QgZHJhdyBzaGFkb3dzLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvY2Fpcm8vTmF0aXZlSW1hZ2VDYWlyby5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jYWlyby9OYXRpdmVJbWFnZUNhaXJvLmNwcAppbmRleCAxZTUxZjY3
OTNkNTI2MjI4ZTRiOTM0OTQ3MDA2OTYwNzRhN2VlMjNjLi45YWZkYWQzMzdhYzM4MTI2Yzg5OTQ2
NDMyYzRkMTBlOTZkOGEzYTk1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jYWlyby9OYXRpdmVJbWFnZUNhaXJvLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jYWlyby9OYXRpdmVJbWFnZUNhaXJvLmNwcApAQCAtMjgsNiArMjgs
NyBAQAogCiAjaWYgVVNFKENBSVJPKQogCisjaW5jbHVkZSAiQ2Fpcm9PcGVyYXRpb25zLmgiCiAj
aW5jbHVkZSAiQ2Fpcm9VdGlsaXRpZXMuaCIKICNpbmNsdWRlICJQbGF0Zm9ybUNvbnRleHRDYWly
by5oIgogI2luY2x1ZGUgPGNhaXJvLmg+CkBAIC01NiwzOSArNTcsMTIgQEAgQ29sb3IgbmF0aXZl
SW1hZ2VTaW5nbGVQaXhlbFNvbGlkQ29sb3IoY29uc3QgTmF0aXZlSW1hZ2VQdHImIGltYWdlKQog
ICAgIHJldHVybiBjb2xvckZyb21QcmVtdWx0aXBsaWVkQVJHQigqcGl4ZWwpOwogfQogCi12b2lk
IGRyYXdOYXRpdmVJbWFnZShjb25zdCBOYXRpdmVJbWFnZVB0ciYgaW1hZ2UsIEdyYXBoaWNzQ29u
dGV4dCYgY29udGV4dCwgY29uc3QgRmxvYXRSZWN0JiBkZXN0UmVjdCwgY29uc3QgRmxvYXRSZWN0
JiBzcmNSZWN0LCBjb25zdCBJbnRTaXplJiwgQ29tcG9zaXRlT3BlcmF0b3Igb3AsIEJsZW5kTW9k
ZSBtb2RlLCBjb25zdCBJbWFnZU9yaWVudGF0aW9uJiBvcmllbnRhdGlvbikKK3ZvaWQgZHJhd05h
dGl2ZUltYWdlKGNvbnN0IE5hdGl2ZUltYWdlUHRyJiBpbWFnZSwgR3JhcGhpY3NDb250ZXh0JiBj
b250ZXh0LCBjb25zdCBGbG9hdFJlY3QmIGRlc3RSZWN0LCBjb25zdCBGbG9hdFJlY3QmIHNyY1Jl
Y3QsIGNvbnN0IEludFNpemUmIGltYWdlU2l6ZSwgQ29tcG9zaXRlT3BlcmF0b3IgY29tcG9zaXRl
T3BlcmF0b3IsIEJsZW5kTW9kZSBibGVuZE1vZGUsIGNvbnN0IEltYWdlT3JpZW50YXRpb24mIG9y
aWVudGF0aW9uKQogewotICAgIGNvbnRleHQuc2F2ZSgpOwotICAgIAotICAgIC8vIFNldCB0aGUg
Y29tcG9zaXRpbmcgb3BlcmF0aW9uLgotICAgIGlmIChvcCA9PSBDb21wb3NpdGVTb3VyY2VPdmVy
ICYmIG1vZGUgPT0gQmxlbmRNb2RlTm9ybWFsICYmICFuYXRpdmVJbWFnZUhhc0FscGhhKGltYWdl
KSkKLSAgICAgICAgY29udGV4dC5zZXRDb21wb3NpdGVPcGVyYXRpb24oQ29tcG9zaXRlQ29weSk7
Ci0gICAgZWxzZQotICAgICAgICBjb250ZXh0LnNldENvbXBvc2l0ZU9wZXJhdGlvbihvcCwgbW9k
ZSk7Ci0gICAgICAgIAotI2lmIEVOQUJMRShJTUFHRV9ERUNPREVSX0RPV05fU0FNUExJTkcpCi0g
ICAgSW50U2l6ZSBzY2FsZWRTaXplID0gbmF0aXZlSW1hZ2VTaXplKGltYWdlKTsKLSAgICBGbG9h
dFJlY3QgYWRqdXN0ZWRTcmNSZWN0ID0gYWRqdXN0U291cmNlUmVjdEZvckRvd25TYW1wbGluZyhz
cmNSZWN0LCBzY2FsZWRTaXplKTsKLSNlbHNlCi0gICAgRmxvYXRSZWN0IGFkanVzdGVkU3JjUmVj
dChzcmNSZWN0KTsKLSNlbmRpZgotICAgICAgICAKLSAgICBGbG9hdFJlY3QgYWRqdXN0ZWREZXN0
UmVjdCA9IGRlc3RSZWN0OwotICAgICAgICAKLSAgICBpZiAob3JpZW50YXRpb24gIT0gRGVmYXVs
dEltYWdlT3JpZW50YXRpb24pIHsKLSAgICAgICAgLy8gSW1hZ2VPcmllbnRhdGlvbiBleHBlY3Rz
IHRoZSBvcmlnaW4gdG8gYmUgYXQgKDAsIDApLgotICAgICAgICBjb250ZXh0LnRyYW5zbGF0ZShk
ZXN0UmVjdC54KCksIGRlc3RSZWN0LnkoKSk7Ci0gICAgICAgIGFkanVzdGVkRGVzdFJlY3Quc2V0
TG9jYXRpb24oRmxvYXRQb2ludCgpKTsKLSAgICAgICAgY29udGV4dC5jb25jYXRDVE0ob3JpZW50
YXRpb24udHJhbnNmb3JtRnJvbURlZmF1bHQoYWRqdXN0ZWREZXN0UmVjdC5zaXplKCkpKTsKLSAg
ICAgICAgaWYgKG9yaWVudGF0aW9uLnVzZXNXaWR0aEFzSGVpZ2h0KCkpIHsKLSAgICAgICAgICAg
IC8vIFRoZSBkZXN0aW5hdGlvbiByZWN0YW5nbGUgd2lsbCBoYXZlIGl0J3Mgd2lkdGggYW5kIGhl
aWdodCBhbHJlYWR5IHJldmVyc2VkIGZvciB0aGUgb3JpZW50YXRpb24gb2YKLSAgICAgICAgICAg
IC8vIHRoZSBpbWFnZSwgYXMgaXQgd2FzIG5lZWRlZCBmb3IgcGFnZSBsYXlvdXQsIHNvIHdlIG5l
ZWQgdG8gcmV2ZXJzZSBpdCBiYWNrIGhlcmUuCi0gICAgICAgICAgICBhZGp1c3RlZERlc3RSZWN0
LnNldFNpemUoYWRqdXN0ZWREZXN0UmVjdC5zaXplKCkudHJhbnNwb3NlZFNpemUoKSk7Ci0gICAg
ICAgIH0KLSAgICB9CisgICAgVU5VU0VEX1BBUkFNKGltYWdlU2l6ZSk7CiAKLSAgICBjb250ZXh0
LnBsYXRmb3JtQ29udGV4dCgpLT5kcmF3U3VyZmFjZVRvQ29udGV4dChpbWFnZS5nZXQoKSwgYWRq
dXN0ZWREZXN0UmVjdCwgYWRqdXN0ZWRTcmNSZWN0LCBjb250ZXh0KTsKLSAgICBjb250ZXh0LnJl
c3RvcmUoKTsKKyAgICBBU1NFUlQoaGFzUGxhdGZvcm1Db250ZXh0KCkpOworICAgIENhaXJvOjpk
cmF3TmF0aXZlSW1hZ2UoKmNvbnRleHQucGxhdGZvcm1Db250ZXh0KCksIGltYWdlLCBkZXN0UmVj
dCwgc3JjUmVjdCwgY29tcG9zaXRlT3BlcmF0b3IsIGJsZW5kTW9kZSwgb3JpZW50YXRpb24sIGNv
bnRleHQpOwogfQogCiB2b2lkIGNsZWFyTmF0aXZlSW1hZ2VTdWJpbWFnZXMoY29uc3QgTmF0aXZl
SW1hZ2VQdHImKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>326874</attachid>
            <date>2017-11-14 05:41:42 -0800</date>
            <delta_ts>2017-11-14 05:41:42 -0800</delta_ts>
            <desc>Patch for landing</desc>
            <filename>bug-179660-20171114144140.patch</filename>
            <type>text/plain</type>
            <size>10666</size>
            <attacher name="Zan Dobersek">zan</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjI0ODExCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjk4Mjg4MjMxYzE1YzRj
YTk2OGRmYTRlOTY1MmI0YTZkNDdkNTE5MC4uZWQ5MDk5ZjJlNTZmNDk4NDdlZGFmOGVmOTdkZGI4
ZmI3YTU5ZTA1MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI4IEBACiAyMDE3LTExLTE0ICBaYW4g
RG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KIAorICAgICAgICBbQ2Fpcm9dIE1vdmUg
bmF0aXZlIGltYWdlIGRyYXdpbmcgb3BlcmF0aW9uIHRvIENhaXJvT3BlcmF0aW9ucworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc5NjYwCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgQ2FybG9zIEdhcmNpYSBDYW1wb3MuCisKKyAgICAgICAgVW5pZnkgdGhl
IG5hdGl2ZSBpbWFnZSBkcmF3aW5nIG9wZXJhdGlvbiBiZWhhdmlvciBiZXR3ZWVuIHRoZQorICAg
ICAgICBDYWlyby1zcGVjaWZpYyBHcmFwaGljc0NvbnRleHQgYW5kIGRyYXdOYXRpdmVJbWFnZSgp
IGltcGxlbWVudGF0aW9ucyBhbmQKKyAgICAgICAgdGhlbiBtb3ZlIHRoZSBjb2RlIGludG8gdGhl
IENhaXJvOjpkcmF3TmF0aXZlSW1hZ2UoKSBmdW5jdGlvbiwgaW5zaWRlCisgICAgICAgIHRoZSBD
YWlyb09wZXJhdGlvbnMgaW1wbGVtZW50YXRpb24gZmlsZS4KKworICAgICAgICBObyBuZXcgdGVz
dHMgLS0gbm8gY2hhbmdlIGluIGJlaGF2aW9yLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvY2Fpcm8vQ2Fpcm9PcGVyYXRpb25zLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNhaXJvOjpj
YWlyb1N1cmZhY2VIYXNBbHBoYSk6CisgICAgICAgIChXZWJDb3JlOjpDYWlybzo6ZHJhd05hdGl2
ZUltYWdlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9DYWlyb09wZXJhdGlv
bnMuaDoKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFwaGljc0NvbnRleHRD
YWlyby5jcHA6CisgICAgICAgIChXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQ6OmRyYXdOYXRpdmVJ
bWFnZSk6CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vTmF0aXZlSW1hZ2VDYWly
by5jcHA6CisgICAgICAgIChXZWJDb3JlOjpkcmF3TmF0aXZlSW1hZ2UpOgorCisyMDE3LTExLTE0
ICBaYW4gRG9iZXJzZWsgIDx6ZG9iZXJzZWtAaWdhbGlhLmNvbT4KKwogICAgICAgICBbQ2Fpcm9d
IFBlcmZvcm0gR3JhcGhpY3NDb250ZXh0UGxhdGZvcm1Qcml2YXRlIG1ldGhvZCBjYWxscyBmcm9t
IENhaXJvT3BlcmF0aW9ucwogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9MTc5NjU3CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dy
YXBoaWNzL2NhaXJvL0NhaXJvT3BlcmF0aW9ucy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jYWlyby9DYWlyb09wZXJhdGlvbnMuY3BwCmluZGV4IDBmYzg1NDg4ZDA1MjBm
ZmQyM2U1NzRmOWViMjM5M2U5NDg2YWYzY2MuLmFiZTZlODI1ODIxOWFlNDdiOWEyOWI0ZTM4N2Jm
ZjE0YjAxYzg3NTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2NhaXJvL0NhaXJvT3BlcmF0aW9ucy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2Fpcm8vQ2Fpcm9PcGVyYXRpb25zLmNwcApAQCAtMjMxLDYgKzIzMSwxMSBAQCBz
dGF0aWMgdm9pZCBkcmF3R2x5cGhzU2hhZG93KFBsYXRmb3JtQ29udGV4dENhaXJvJiBwbGF0Zm9y
bUNvbnRleHQsIGNvbnN0IEdyYXBoaQogICAgIH0KIH0KIAorc3RhdGljIGJvb2wgY2Fpcm9TdXJm
YWNlSGFzQWxwaGEoY2Fpcm9fc3VyZmFjZV90KiBzdXJmYWNlKQoreworICAgIHJldHVybiBjYWly
b19zdXJmYWNlX2dldF9jb250ZW50KHN1cmZhY2UpICE9IENBSVJPX0NPTlRFTlRfQ09MT1I7Cit9
CisKIG5hbWVzcGFjZSBTdGF0ZSB7CiAKIHZvaWQgc2V0U3Ryb2tlVGhpY2tuZXNzKFBsYXRmb3Jt
Q29udGV4dENhaXJvJiBwbGF0Zm9ybUNvbnRleHQsIGZsb2F0IHN0cm9rZVRoaWNrbmVzcykKQEAg
LTU1OCw2ICs1NjMsNDEgQEAgdm9pZCBkcmF3R2x5cGhzKFBsYXRmb3JtQ29udGV4dENhaXJvJiBw
bGF0Zm9ybUNvbnRleHQsIGNvbnN0IEdyYXBoaWNzQ29udGV4dFN0YXQKICAgICBjYWlyb19yZXN0
b3JlKGNyKTsKIH0KIAordm9pZCBkcmF3TmF0aXZlSW1hZ2UoUGxhdGZvcm1Db250ZXh0Q2Fpcm8m
IHBsYXRmb3JtQ29udGV4dCwgY29uc3QgTmF0aXZlSW1hZ2VQdHImIGltYWdlLCBjb25zdCBGbG9h
dFJlY3QmIGRlc3RSZWN0LCBjb25zdCBGbG9hdFJlY3QmIHNyY1JlY3QsIENvbXBvc2l0ZU9wZXJh
dG9yIGNvbXBvc2l0ZU9wZXJhdG9yLCBCbGVuZE1vZGUgYmxlbmRNb2RlLCBJbWFnZU9yaWVudGF0
aW9uIG9yaWVudGF0aW9uLCBHcmFwaGljc0NvbnRleHQmIHRhcmdldENvbnRleHQpCit7CisgICAg
cGxhdGZvcm1Db250ZXh0LnNhdmUoKTsKKworICAgIC8vIFNldCB0aGUgY29tcG9zaXRpbmcgb3Bl
cmF0aW9uLgorICAgIGlmIChjb21wb3NpdGVPcGVyYXRvciA9PSBDb21wb3NpdGVTb3VyY2VPdmVy
ICYmIGJsZW5kTW9kZSA9PSBCbGVuZE1vZGVOb3JtYWwgJiYgIWNhaXJvU3VyZmFjZUhhc0FscGhh
KGltYWdlLmdldCgpKSkKKyAgICAgICAgQ2Fpcm86OlN0YXRlOjpzZXRDb21wb3NpdGVPcGVyYXRp
b24ocGxhdGZvcm1Db250ZXh0LCBDb21wb3NpdGVDb3B5LCBCbGVuZE1vZGVOb3JtYWwpOworICAg
IGVsc2UKKyAgICAgICAgQ2Fpcm86OlN0YXRlOjpzZXRDb21wb3NpdGVPcGVyYXRpb24ocGxhdGZv
cm1Db250ZXh0LCBjb21wb3NpdGVPcGVyYXRvciwgYmxlbmRNb2RlKTsKKworI2lmIEVOQUJMRShJ
TUFHRV9ERUNPREVSX0RPV05fU0FNUExJTkcpCisgICAgSW50U2l6ZSBzY2FsZWRTaXplID0gbmF0
aXZlSW1hZ2VTaXplKGltYWdlKTsKKyAgICBGbG9hdFJlY3Qgc3JjID0gYWRqdXN0U291cmNlUmVj
dEZvckRvd25TYW1wbGluZyhzcmNSZWN0LCBzY2FsZWRTaXplKTsKKyNlbHNlCisgICAgRmxvYXRS
ZWN0IHNyYyhzcmNSZWN0KTsKKyNlbmRpZgorCisgICAgRmxvYXRSZWN0IGRzdCA9IGRlc3RSZWN0
OworCisgICAgaWYgKG9yaWVudGF0aW9uICE9IERlZmF1bHRJbWFnZU9yaWVudGF0aW9uKSB7Cisg
ICAgICAgIC8vIEltYWdlT3JpZW50YXRpb24gZXhwZWN0cyB0aGUgb3JpZ2luIHRvIGJlIGF0ICgw
LCAwKS4KKyAgICAgICAgQ2Fpcm86OnRyYW5zbGF0ZShwbGF0Zm9ybUNvbnRleHQsIGRzdC54KCks
IGRzdC55KCkpOworICAgICAgICBkc3Quc2V0TG9jYXRpb24oRmxvYXRQb2ludCgpKTsKKyAgICAg
ICAgQ2Fpcm86OmNvbmNhdENUTShwbGF0Zm9ybUNvbnRleHQsIG9yaWVudGF0aW9uLnRyYW5zZm9y
bUZyb21EZWZhdWx0KGRzdC5zaXplKCkpKTsKKyAgICAgICAgaWYgKG9yaWVudGF0aW9uLnVzZXNX
aWR0aEFzSGVpZ2h0KCkpIHsKKyAgICAgICAgICAgIC8vIFRoZSBkZXN0aW5hdGlvbiByZWN0YW5n
bGUgd2lsbCBoYXZlIGl0cyB3aWR0aCBhbmQgaGVpZ2h0IGFscmVhZHkgcmV2ZXJzZWQgZm9yIHRo
ZSBvcmllbnRhdGlvbiBvZgorICAgICAgICAgICAgLy8gdGhlIGltYWdlLCBhcyBpdCB3YXMgbmVl
ZGVkIGZvciBwYWdlIGxheW91dCwgc28gd2UgbmVlZCB0byByZXZlcnNlIGl0IGJhY2sgaGVyZS4K
KyAgICAgICAgICAgIGRzdCA9IEZsb2F0UmVjdChkc3QueCgpLCBkc3QueSgpLCBkc3QuaGVpZ2h0
KCksIGRzdC53aWR0aCgpKTsKKyAgICAgICAgfQorICAgIH0KKworICAgIHBsYXRmb3JtQ29udGV4
dC5kcmF3U3VyZmFjZVRvQ29udGV4dChpbWFnZS5nZXQoKSwgZHN0LCBzcmMsIHRhcmdldENvbnRl
eHQpOworICAgIHBsYXRmb3JtQ29udGV4dC5yZXN0b3JlKCk7Cit9CisKIHZvaWQgZHJhd1BhdHRl
cm4oUGxhdGZvcm1Db250ZXh0Q2Fpcm8mIHBsYXRmb3JtQ29udGV4dCwgSW1hZ2UmIGltYWdlLCBj
b25zdCBGbG9hdFJlY3QmIGRlc3RSZWN0LCBjb25zdCBGbG9hdFJlY3QmIHRpbGVSZWN0LCBjb25z
dCBBZmZpbmVUcmFuc2Zvcm0mIHBhdHRlcm5UcmFuc2Zvcm0sIGNvbnN0IEZsb2F0UG9pbnQmIHBo
YXNlLCBDb21wb3NpdGVPcGVyYXRvciBjb21wb3NpdGVPcGVyYXRvciwgQmxlbmRNb2RlIGJsZW5k
TW9kZSkKIHsKICAgICBpZiAoYXV0byBzdXJmYWNlID0gaW1hZ2UubmF0aXZlSW1hZ2VGb3JDdXJy
ZW50RnJhbWUoKSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2NhaXJvL0NhaXJvT3BlcmF0aW9ucy5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2Fpcm8vQ2Fpcm9PcGVyYXRpb25zLmgKaW5kZXggMjJkYTg0NTUzN2E4NGI5ZjMyZTA3NDJh
NGMwNWE5YTA1NDhjNDdlOC4uNWUwYTZlMmNlNzZiM2ZlMDJjM2ExNzc1ZWUwZDYwMjcwZjIyOTEy
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fpcm8vQ2Fp
cm9PcGVyYXRpb25zLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2Fp
cm8vQ2Fpcm9PcGVyYXRpb25zLmgKQEAgLTk1LDYgKzk1LDcgQEAgdm9pZCBjbGVhclJlY3QoUGxh
dGZvcm1Db250ZXh0Q2Fpcm8mLCBjb25zdCBGbG9hdFJlY3QmKTsKIAogdm9pZCBkcmF3R2x5cGhz
KEdyYXBoaWNzQ29udGV4dCYsIGNvbnN0IEdyYXBoaWNzQ29udGV4dFN0YXRlJiwgYm9vbCwgY29u
c3QgRmxvYXRQb2ludCYsIGNhaXJvX3NjYWxlZF9mb250X3QqLCBkb3VibGUsIGNvbnN0IFZlY3Rv
cjxjYWlyb19nbHlwaF90PiYsIGZsb2F0LCBHcmFwaGljc0NvbnRleHQmKTsKIAordm9pZCBkcmF3
TmF0aXZlSW1hZ2UoUGxhdGZvcm1Db250ZXh0Q2Fpcm8mLCBjb25zdCBOYXRpdmVJbWFnZVB0ciYs
IGNvbnN0IEZsb2F0UmVjdCYsIGNvbnN0IEZsb2F0UmVjdCYsIENvbXBvc2l0ZU9wZXJhdG9yLCBC
bGVuZE1vZGUsIEltYWdlT3JpZW50YXRpb24sIEdyYXBoaWNzQ29udGV4dCYpOwogdm9pZCBkcmF3
UGF0dGVybihQbGF0Zm9ybUNvbnRleHRDYWlybyYsIEltYWdlJiwgY29uc3QgRmxvYXRSZWN0Jiwg
Y29uc3QgRmxvYXRSZWN0JiwgY29uc3QgQWZmaW5lVHJhbnNmb3JtJiwgY29uc3QgRmxvYXRQb2lu
dCYsIENvbXBvc2l0ZU9wZXJhdG9yLCBCbGVuZE1vZGUpOwogCiB2b2lkIGRyYXdSZWN0KFBsYXRm
b3JtQ29udGV4dENhaXJvJiwgY29uc3QgRmxvYXRSZWN0JiwgZmxvYXQsIGNvbnN0IEdyYXBoaWNz
Q29udGV4dFN0YXRlJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jYWlyby9HcmFwaGljc0NvbnRleHRDYWlyby5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9jYWlyby9HcmFwaGljc0NvbnRleHRDYWlyby5jcHAKaW5kZXggMjA0Yjcz
YmIyNWEyZWYyY2JjZGE3ZTMxOTBkODdmNjM2YTRhMzNhNi4uNTE3Mzk4ODA4YTg0NzU4MmM1Y2Nl
YTc3ZWYwNmRiNDJmMzNmNGYxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2Fpcm8vR3JhcGhpY3NDb250ZXh0Q2Fpcm8uY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhaXJvL0dyYXBoaWNzQ29udGV4dENhaXJvLmNwcApAQCAt
MjQ0LDQwICsyNDQsMTggQEAgdm9pZCBHcmFwaGljc0NvbnRleHQ6OmRyYXdSZWN0KGNvbnN0IEZs
b2F0UmVjdCYgcmVjdCwgZmxvYXQgYm9yZGVyVGhpY2tuZXNzKQogICAgIENhaXJvOjpkcmF3UmVj
dCgqcGxhdGZvcm1Db250ZXh0KCksIHJlY3QsIGJvcmRlclRoaWNrbmVzcywgc3RhdGUoKSk7CiB9
CiAKLXZvaWQgR3JhcGhpY3NDb250ZXh0OjpkcmF3TmF0aXZlSW1hZ2UoY29uc3QgTmF0aXZlSW1h
Z2VQdHImIGltYWdlLCBjb25zdCBGbG9hdFNpemUmIGltYWdlU2l6ZSwgY29uc3QgRmxvYXRSZWN0
JiBkZXN0UmVjdCwgY29uc3QgRmxvYXRSZWN0JiBzcmNSZWN0LCBDb21wb3NpdGVPcGVyYXRvciBv
cCwgQmxlbmRNb2RlIGJsZW5kTW9kZSwgSW1hZ2VPcmllbnRhdGlvbiBvcmllbnRhdGlvbikKK3Zv
aWQgR3JhcGhpY3NDb250ZXh0OjpkcmF3TmF0aXZlSW1hZ2UoY29uc3QgTmF0aXZlSW1hZ2VQdHIm
IGltYWdlLCBjb25zdCBGbG9hdFNpemUmIGltYWdlU2l6ZSwgY29uc3QgRmxvYXRSZWN0JiBkZXN0
UmVjdCwgY29uc3QgRmxvYXRSZWN0JiBzcmNSZWN0LCBDb21wb3NpdGVPcGVyYXRvciBjb21wb3Np
dGVPcGVyYXRvciwgQmxlbmRNb2RlIGJsZW5kTW9kZSwgSW1hZ2VPcmllbnRhdGlvbiBvcmllbnRh
dGlvbikKIHsKICAgICBpZiAocGFpbnRpbmdEaXNhYmxlZCgpKQogICAgICAgICByZXR1cm47CiAK
ICAgICBpZiAobV9pbXBsKSB7Ci0gICAgICAgIG1faW1wbC0+ZHJhd05hdGl2ZUltYWdlKGltYWdl
LCBpbWFnZVNpemUsIGRlc3RSZWN0LCBzcmNSZWN0LCBvcCwgYmxlbmRNb2RlLCBvcmllbnRhdGlv
bik7CisgICAgICAgIG1faW1wbC0+ZHJhd05hdGl2ZUltYWdlKGltYWdlLCBpbWFnZVNpemUsIGRl
c3RSZWN0LCBzcmNSZWN0LCBjb21wb3NpdGVPcGVyYXRvciwgYmxlbmRNb2RlLCBvcmllbnRhdGlv
bik7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBwbGF0Zm9ybUNvbnRleHQoKS0+c2F2
ZSgpOwotCi0gICAgLy8gU2V0IHRoZSBjb21wb3NpdGluZyBvcGVyYXRpb24uCi0gICAgaWYgKG9w
ID09IENvbXBvc2l0ZVNvdXJjZU92ZXIgJiYgYmxlbmRNb2RlID09IEJsZW5kTW9kZU5vcm1hbCkK
LSAgICAgICAgc2V0Q29tcG9zaXRlT3BlcmF0aW9uKENvbXBvc2l0ZUNvcHkpOwotICAgIGVsc2UK
LSAgICAgICAgc2V0Q29tcG9zaXRlT3BlcmF0aW9uKG9wLCBibGVuZE1vZGUpOwotCi0gICAgRmxv
YXRSZWN0IGRzdCA9IGRlc3RSZWN0OwotCi0gICAgaWYgKG9yaWVudGF0aW9uICE9IERlZmF1bHRJ
bWFnZU9yaWVudGF0aW9uKSB7Ci0gICAgICAgIC8vIEltYWdlT3JpZW50YXRpb24gZXhwZWN0cyB0
aGUgb3JpZ2luIHRvIGJlIGF0ICgwLCAwKS4KLSAgICAgICAgdHJhbnNsYXRlKGRzdC54KCksIGRz
dC55KCkpOwotICAgICAgICBkc3Quc2V0TG9jYXRpb24oRmxvYXRQb2ludCgpKTsKLSAgICAgICAg
Y29uY2F0Q1RNKG9yaWVudGF0aW9uLnRyYW5zZm9ybUZyb21EZWZhdWx0KGRzdC5zaXplKCkpKTsK
LSAgICAgICAgaWYgKG9yaWVudGF0aW9uLnVzZXNXaWR0aEFzSGVpZ2h0KCkpIHsKLSAgICAgICAg
ICAgIC8vIFRoZSBkZXN0aW5hdGlvbiByZWN0YW5nbGUgd2lsbCBoYXZlIGl0cyB3aWR0aCBhbmQg
aGVpZ2h0IGFscmVhZHkgcmV2ZXJzZWQgZm9yIHRoZSBvcmllbnRhdGlvbiBvZgotICAgICAgICAg
ICAgLy8gdGhlIGltYWdlLCBhcyBpdCB3YXMgbmVlZGVkIGZvciBwYWdlIGxheW91dCwgc28gd2Ug
bmVlZCB0byByZXZlcnNlIGl0IGJhY2sgaGVyZS4KLSAgICAgICAgICAgIGRzdCA9IEZsb2F0UmVj
dChkc3QueCgpLCBkc3QueSgpLCBkc3QuaGVpZ2h0KCksIGRzdC53aWR0aCgpKTsKLSAgICAgICAg
fQotICAgIH0KLQotICAgIHBsYXRmb3JtQ29udGV4dCgpLT5kcmF3U3VyZmFjZVRvQ29udGV4dChp
bWFnZS5nZXQoKSwgZHN0LCBzcmNSZWN0LCAqdGhpcyk7Ci0gICAgcGxhdGZvcm1Db250ZXh0KCkt
PnJlc3RvcmUoKTsKKyAgICBBU1NFUlQoaGFzUGxhdGZvcm1Db250ZXh0KCkpOworICAgIENhaXJv
OjpkcmF3TmF0aXZlSW1hZ2UoKnBsYXRmb3JtQ29udGV4dCgpLCBpbWFnZSwgZGVzdFJlY3QsIHNy
Y1JlY3QsIGNvbXBvc2l0ZU9wZXJhdG9yLCBibGVuZE1vZGUsIG9yaWVudGF0aW9uLCAqdGhpcyk7
CiB9CiAKIC8vIFRoaXMgaXMgb25seSB1c2VkIHRvIGRyYXcgYm9yZGVycywgc28gd2Ugc2hvdWxk
IG5vdCBkcmF3IHNoYWRvd3MuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jYWlyby9OYXRpdmVJbWFnZUNhaXJvLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NhaXJvL05hdGl2ZUltYWdlQ2Fpcm8uY3BwCmluZGV4IDFlNTFmNjc5M2Q1
MjYyMjhlNGI5MzQ5NDcwMDY5NjA3NGE3ZWUyM2MuLjlhZmRhZDMzN2FjMzgxMjZjODk5NDY0MzJj
NGQxMGU5NmQ4YTNhOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2NhaXJvL05hdGl2ZUltYWdlQ2Fpcm8uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2dyYXBoaWNzL2NhaXJvL05hdGl2ZUltYWdlQ2Fpcm8uY3BwCkBAIC0yOCw2ICsyOCw3IEBA
CiAKICNpZiBVU0UoQ0FJUk8pCiAKKyNpbmNsdWRlICJDYWlyb09wZXJhdGlvbnMuaCIKICNpbmNs
dWRlICJDYWlyb1V0aWxpdGllcy5oIgogI2luY2x1ZGUgIlBsYXRmb3JtQ29udGV4dENhaXJvLmgi
CiAjaW5jbHVkZSA8Y2Fpcm8uaD4KQEAgLTU2LDM5ICs1NywxMiBAQCBDb2xvciBuYXRpdmVJbWFn
ZVNpbmdsZVBpeGVsU29saWRDb2xvcihjb25zdCBOYXRpdmVJbWFnZVB0ciYgaW1hZ2UpCiAgICAg
cmV0dXJuIGNvbG9yRnJvbVByZW11bHRpcGxpZWRBUkdCKCpwaXhlbCk7CiB9CiAKLXZvaWQgZHJh
d05hdGl2ZUltYWdlKGNvbnN0IE5hdGl2ZUltYWdlUHRyJiBpbWFnZSwgR3JhcGhpY3NDb250ZXh0
JiBjb250ZXh0LCBjb25zdCBGbG9hdFJlY3QmIGRlc3RSZWN0LCBjb25zdCBGbG9hdFJlY3QmIHNy
Y1JlY3QsIGNvbnN0IEludFNpemUmLCBDb21wb3NpdGVPcGVyYXRvciBvcCwgQmxlbmRNb2RlIG1v
ZGUsIGNvbnN0IEltYWdlT3JpZW50YXRpb24mIG9yaWVudGF0aW9uKQordm9pZCBkcmF3TmF0aXZl
SW1hZ2UoY29uc3QgTmF0aXZlSW1hZ2VQdHImIGltYWdlLCBHcmFwaGljc0NvbnRleHQmIGNvbnRl
eHQsIGNvbnN0IEZsb2F0UmVjdCYgZGVzdFJlY3QsIGNvbnN0IEZsb2F0UmVjdCYgc3JjUmVjdCwg
Y29uc3QgSW50U2l6ZSYgaW1hZ2VTaXplLCBDb21wb3NpdGVPcGVyYXRvciBjb21wb3NpdGVPcGVy
YXRvciwgQmxlbmRNb2RlIGJsZW5kTW9kZSwgY29uc3QgSW1hZ2VPcmllbnRhdGlvbiYgb3JpZW50
YXRpb24pCiB7Ci0gICAgY29udGV4dC5zYXZlKCk7Ci0gICAgCi0gICAgLy8gU2V0IHRoZSBjb21w
b3NpdGluZyBvcGVyYXRpb24uCi0gICAgaWYgKG9wID09IENvbXBvc2l0ZVNvdXJjZU92ZXIgJiYg
bW9kZSA9PSBCbGVuZE1vZGVOb3JtYWwgJiYgIW5hdGl2ZUltYWdlSGFzQWxwaGEoaW1hZ2UpKQot
ICAgICAgICBjb250ZXh0LnNldENvbXBvc2l0ZU9wZXJhdGlvbihDb21wb3NpdGVDb3B5KTsKLSAg
ICBlbHNlCi0gICAgICAgIGNvbnRleHQuc2V0Q29tcG9zaXRlT3BlcmF0aW9uKG9wLCBtb2RlKTsK
LSAgICAgICAgCi0jaWYgRU5BQkxFKElNQUdFX0RFQ09ERVJfRE9XTl9TQU1QTElORykKLSAgICBJ
bnRTaXplIHNjYWxlZFNpemUgPSBuYXRpdmVJbWFnZVNpemUoaW1hZ2UpOwotICAgIEZsb2F0UmVj
dCBhZGp1c3RlZFNyY1JlY3QgPSBhZGp1c3RTb3VyY2VSZWN0Rm9yRG93blNhbXBsaW5nKHNyY1Jl
Y3QsIHNjYWxlZFNpemUpOwotI2Vsc2UKLSAgICBGbG9hdFJlY3QgYWRqdXN0ZWRTcmNSZWN0KHNy
Y1JlY3QpOwotI2VuZGlmCi0gICAgICAgIAotICAgIEZsb2F0UmVjdCBhZGp1c3RlZERlc3RSZWN0
ID0gZGVzdFJlY3Q7Ci0gICAgICAgIAotICAgIGlmIChvcmllbnRhdGlvbiAhPSBEZWZhdWx0SW1h
Z2VPcmllbnRhdGlvbikgewotICAgICAgICAvLyBJbWFnZU9yaWVudGF0aW9uIGV4cGVjdHMgdGhl
IG9yaWdpbiB0byBiZSBhdCAoMCwgMCkuCi0gICAgICAgIGNvbnRleHQudHJhbnNsYXRlKGRlc3RS
ZWN0LngoKSwgZGVzdFJlY3QueSgpKTsKLSAgICAgICAgYWRqdXN0ZWREZXN0UmVjdC5zZXRMb2Nh
dGlvbihGbG9hdFBvaW50KCkpOwotICAgICAgICBjb250ZXh0LmNvbmNhdENUTShvcmllbnRhdGlv
bi50cmFuc2Zvcm1Gcm9tRGVmYXVsdChhZGp1c3RlZERlc3RSZWN0LnNpemUoKSkpOwotICAgICAg
ICBpZiAob3JpZW50YXRpb24udXNlc1dpZHRoQXNIZWlnaHQoKSkgewotICAgICAgICAgICAgLy8g
VGhlIGRlc3RpbmF0aW9uIHJlY3RhbmdsZSB3aWxsIGhhdmUgaXQncyB3aWR0aCBhbmQgaGVpZ2h0
IGFscmVhZHkgcmV2ZXJzZWQgZm9yIHRoZSBvcmllbnRhdGlvbiBvZgotICAgICAgICAgICAgLy8g
dGhlIGltYWdlLCBhcyBpdCB3YXMgbmVlZGVkIGZvciBwYWdlIGxheW91dCwgc28gd2UgbmVlZCB0
byByZXZlcnNlIGl0IGJhY2sgaGVyZS4KLSAgICAgICAgICAgIGFkanVzdGVkRGVzdFJlY3Quc2V0
U2l6ZShhZGp1c3RlZERlc3RSZWN0LnNpemUoKS50cmFuc3Bvc2VkU2l6ZSgpKTsKLSAgICAgICAg
fQotICAgIH0KKyAgICBVTlVTRURfUEFSQU0oaW1hZ2VTaXplKTsKIAotICAgIGNvbnRleHQucGxh
dGZvcm1Db250ZXh0KCktPmRyYXdTdXJmYWNlVG9Db250ZXh0KGltYWdlLmdldCgpLCBhZGp1c3Rl
ZERlc3RSZWN0LCBhZGp1c3RlZFNyY1JlY3QsIGNvbnRleHQpOwotICAgIGNvbnRleHQucmVzdG9y
ZSgpOworICAgIEFTU0VSVChoYXNQbGF0Zm9ybUNvbnRleHQoKSk7CisgICAgQ2Fpcm86OmRyYXdO
YXRpdmVJbWFnZSgqY29udGV4dC5wbGF0Zm9ybUNvbnRleHQoKSwgaW1hZ2UsIGRlc3RSZWN0LCBz
cmNSZWN0LCBjb21wb3NpdGVPcGVyYXRvciwgYmxlbmRNb2RlLCBvcmllbnRhdGlvbiwgY29udGV4
dCk7CiB9CiAKIHZvaWQgY2xlYXJOYXRpdmVJbWFnZVN1YmltYWdlcyhjb25zdCBOYXRpdmVJbWFn
ZVB0ciYpCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>