<?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>105736</bug_id>
          
          <creation_ts>2012-12-24 22:06:01 -0800</creation_ts>
          <short_desc>[GTK][AC] Use new Clutter APIs instead of deprecated APIs</short_desc>
          <delta_ts>2013-02-26 07:23:22 -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>WebKitGTK</component>
          <version>528+ (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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>105699</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Joone Hur">joone</reporter>
          <assigned_to name="Joone Hur">joone</assigned_to>
          <cc>alex</cc>
    
    <cc>gustavo</cc>
    
    <cc>kevin.cs.oh</cc>
    
    <cc>mrobinson</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>797090</commentid>
    <comment_count>0</comment_count>
    <who name="Joone Hur">joone</who>
    <bug_when>2012-12-24 22:06:01 -0800</bug_when>
    <thetext>ClutterCairoTexture class and the following functions have been deprecated since version 1.10

 * clutter_actor_show_all, clutter_stage_set_color, clutter_container_add_actor</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>797097</commentid>
    <comment_count>1</comment_count>
      <attachid>180700</attachid>
    <who name="Joone Hur">joone</who>
    <bug_when>2012-12-24 22:43:22 -0800</bug_when>
    <thetext>Created attachment 180700
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>797100</commentid>
    <comment_count>2</comment_count>
      <attachid>180702</attachid>
    <who name="Joone Hur">joone</who>
    <bug_when>2012-12-24 22:59:17 -0800</bug_when>
    <thetext>Created attachment 180702
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>802231</commentid>
    <comment_count>3</comment_count>
    <who name="ChangSeok Oh">kevin.cs.oh</who>
    <bug_when>2013-01-08 06:49:33 -0800</bug_when>
    <thetext>*** Bug 106173 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>812252</commentid>
    <comment_count>4</comment_count>
      <attachid>180702</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2013-01-21 10:31:07 -0800</bug_when>
    <thetext>Comment on attachment 180702
Patch

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

LGTM with nit about comment.

&gt; Source/WebCore/platform/graphics/clutter/GraphicsLayerActor.cpp:314
&gt; +    // the actor now owns the canvas

This is not a full sentence, but the comment is not very useful anyway, so I&apos;d just remove it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>817094</commentid>
    <comment_count>5</comment_count>
      <attachid>184846</attachid>
    <who name="Joone Hur">joone</who>
    <bug_when>2013-01-25 17:49:16 -0800</bug_when>
    <thetext>Created attachment 184846
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>817095</commentid>
    <comment_count>6</comment_count>
      <attachid>184846</attachid>
    <who name="Joone Hur">joone</who>
    <bug_when>2013-01-25 17:50:29 -0800</bug_when>
    <thetext>Comment on attachment 184846
Patch

Kov,thanks for the review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>817100</commentid>
    <comment_count>7</comment_count>
      <attachid>184846</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-25 18:12:57 -0800</bug_when>
    <thetext>Comment on attachment 184846
Patch

Clearing flags on attachment: 184846

Committed r140896: &lt;http://trac.webkit.org/changeset/140896&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>841974</commentid>
    <comment_count>8</comment_count>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2013-02-26 07:23:22 -0800</bug_when>
    <thetext>Have you tested this code, does it work for you? After I merged this into webkit-clutter It doesn&apos;t seem to render the layer contents properly, reverting back to using the Texture makes it go back to working for me.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>180700</attachid>
            <date>2012-12-24 22:43:22 -0800</date>
            <delta_ts>2012-12-24 22:59:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105736-20121224224028.patch</filename>
            <type>text/plain</type>
            <size>12954</size>
            <attacher name="Joone Hur">joone</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4NDIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2U4MGJkM2ZkZGJiYTQ2
NzkzYTBiYTFiYjU0MzU2MjA4YWE0OWQxMC4uNDcyMGVhNGJjMmJmYzRhMGFhOTZmZGY1MDRjYWJk
NTY3Mzg0YzQxZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEyLTEyLTI0ICBKb29u
ZSBIdXIgIDxqb29uZS5odXJAaW50ZWwuY29tPgorCisgICAgICAgIFtHVEtdW0FDXSBVc2UgbmV3
IENsdXR0ZXIgQVBJcyBpbnN0ZWFkIG9mIGRlcHJlY2F0ZWQgQVBJcworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA1NzM2CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ2x1dHRlckNhaXJvVGV4dHVyZSBjbGFz
cyBhbmQgc2V2ZXJhbCBBUElzIGhhdmUgYmVlbiBkZXByZWNhdGVkIHNpbmNlIHZlcnNpb24gMS4x
MCwgCisgICAgICAgIHNvIENsdXR0ZXJDYW52YXMgYW5kIENsdXR0ZXJDb250ZW50IHNob3VsZCBi
ZSB1c2VkIGluc3RlYWQgb2YgQ2x1dHRlckNhaXJvVGV4dHVyZS4KKyAgICAgICAgY2x1dHRlcl9h
Y3Rvcl9hZGRfY2hpbGQgc2hvdWxkIGJlIHVzZWQgaW5zdGVhZCBvZiBjbHV0dGVyX2FjdG9yX3Nl
dF9wYXJlbnQgYW5kIGNsdXR0ZXJfY29udGFpbmVyX2FkZF9jbHV0dGVyLgorCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvY2x1dHRlci9HcmFwaGljc0xheWVyQWN0b3IuY3BwOgorICAgICAg
ICAoX0dyYXBoaWNzTGF5ZXJBY3RvclByaXZhdGUpOgorICAgICAgICAoZ3JhcGhpY3NfbGF5ZXJf
YWN0b3JfaW5pdCk6CisgICAgICAgIChncmFwaGljc0xheWVyQWN0b3JEaXNwb3NlKToKKyAgICAg
ICAgKGdyYXBoaWNzTGF5ZXJBY3RvckFsbG9jYXRlKToKKyAgICAgICAgKGdyYXBoaWNzTGF5ZXJB
Y3RvclBhaW50KToKKyAgICAgICAgKGdyYXBoaWNzTGF5ZXJBY3RvckRyYXcpOgorICAgICAgICAo
Z3JhcGhpY3NMYXllckFjdG9yVXBkYXRlVGV4dHVyZSk6CisgICAgICAgIChncmFwaGljc0xheWVy
QWN0b3JOZXcpOgorICAgICAgICAoZ3JhcGhpY3NMYXllckFjdG9yUmVtb3ZlQWxsKToKKyAgICAg
ICAgKGdyYXBoaWNzTGF5ZXJBY3RvckludmFsaWRhdGVSZWN0YW5nbGUpOgorICAgICAgICAoZ3Jh
cGhpY3NMYXllckFjdG9ySW5zZXJ0U3VibGF5ZXIpOgorICAgICAgICAoZ3JhcGhpY3NMYXllckFj
dG9yU2V0U3VibGF5ZXJzKToKKwogMjAxMi0xMi0yMyAgVG9ueSBDaGFuZyAgPHRvbnlAY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFtRdF1bTWFjXSBVbnJldmlld2VkIGZpeCB0aGUgYnVpbGQgYWZ0
ZXIgcjEzODQxMwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ndGsvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdC9ndGsvQ2hhbmdlTG9nCmluZGV4IDFiNTA5NTk3NTJlYmQwNDllMzY0YmE0Y2Iy
ZmExMDBmNzhmY2Q4ZDkuLjBiYTVjMDU2MDVkNjUxN2YwYmEyZGYxMDg3YjZhOTRhZGRjMjNkN2Eg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
S2l0L2d0ay9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxMi0xMi0yNCAgSm9vbmUgSHVy
ICA8am9vbmUuaHVyQGludGVsLmNvbT4KKworICAgICAgICBbR1RLXVtBQ10gVXNlIG5ldyBDbHV0
dGVyIEFQSXMgaW5zdGVhZCBvZiBkZXByZWNhdGVkIEFQSXMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNTczNgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVzZSBjbHV0dGVyX2FjdG9yX3NldF9iYWNrZ3Jv
dW5kX2NvbG9yIGluc3RlYWQgb2YgY2x1dHRlcl9zdGFnZV9zZXRfY29sb3IuCisgICAgICAgIFVz
ZSBjbHV0dGVyX2FjdG9yX2FkZF9jaGlsZCBpbnN0ZWFkIG9mIGNsdXR0ZXJfY29udGFpbmVyX2Fk
ZF9hY3Rvci4KKyAgICAgICAgUmVtb3ZlIGNsdXR0ZXJfYWN0b3Jfc2hvd19hbGwgYmVjYXVzZSBB
Y3RvcnMgYXJlIHZpc2libGUgYnkgZGVmYXVsdC4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0
L0FjY2VsZXJhdGVkQ29tcG9zaXRpbmdDb250ZXh0Q2x1dHRlci5jcHA6CisgICAgICAgIChXZWJL
aXQ6OkFjY2VsZXJhdGVkQ29tcG9zaXRpbmdDb250ZXh0OjpzZXRSb290Q29tcG9zaXRpbmdMYXll
cik6CisKIDIwMTItMTItMjIgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CiAK
ICAgICAgICAgQWRkIGEgc2VwYXJhdGUgY2xhc3MgZm9yIG5ldHdvcmtpbmcgcmVsYXRlZCBzdG9y
YWdlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jbHV0dGVy
L0dyYXBoaWNzTGF5ZXJBY3Rvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jbHV0dGVyL0dyYXBoaWNzTGF5ZXJBY3Rvci5jcHAKaW5kZXggODlhNzFkN2NkNjQwZDhmOWY4
OWE3YWViYTRiZmE1ZDg1MmFkMzk3NS4uMjQyZjQyYzI4MzU3YWUwZTNhZTNkMGIyYzcwN2FjNWJi
OGI3YjZhMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2x1
dHRlci9HcmFwaGljc0xheWVyQWN0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NsdXR0ZXIvR3JhcGhpY3NMYXllckFjdG9yLmNwcApAQCAtMzEsNyArMzEsNyBA
QAogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAotR19ERUZJTkVfVFlQRShHcmFwaGljc0xh
eWVyQWN0b3IsIGdyYXBoaWNzX2xheWVyX2FjdG9yLCBDTFVUVEVSX1RZUEVfUkVDVEFOR0xFKQor
R19ERUZJTkVfVFlQRShHcmFwaGljc0xheWVyQWN0b3IsIGdyYXBoaWNzX2xheWVyX2FjdG9yLCBD
TFVUVEVSX1RZUEVfQUNUT1IpCiAKICNkZWZpbmUgR1JBUEhJQ1NfTEFZRVJfQUNUT1JfR0VUX1BS
SVZBVEUob2JqKSAoR19UWVBFX0lOU1RBTkNFX0dFVF9QUklWQVRFKChvYmopLCBHUkFQSElDU19M
QVlFUl9UWVBFX0FDVE9SLCBHcmFwaGljc0xheWVyQWN0b3JQcml2YXRlKSkKIApAQCAtMzksNyAr
MzksNiBAQCBzdHJ1Y3QgX0dyYXBoaWNzTGF5ZXJBY3RvclByaXZhdGUgewogICAgIEdyYXBoaWNz
TGF5ZXJDbHV0dGVyOjpMYXllclR5cGUgbGF5ZXJUeXBlOwogICAgIGdib29sZWFuIGFsbG9jYXRp
bmc7CiAKLSAgICBDbHV0dGVyQWN0b3IqIHRleHR1cmU7CiAgICAgUmVmUHRyPGNhaXJvX3N1cmZh
Y2VfdD4gc3VyZmFjZTsKICAgICBDb2dsTWF0cml4KiBtYXRyaXg7CiAKQEAgLTc3LDcgKzc2LDcg
QEAgc3RhdGljIHZvaWQgZ3JhcGhpY3NMYXllckFjdG9yUGljayhDbHV0dGVyQWN0b3IqLCBjb25z
dCBDbHV0dGVyQ29sb3IqKTsKIAogc3RhdGljIHZvaWQgZ3JhcGhpY3NMYXllckFjdG9yQWRkZWQo
Q2x1dHRlckNvbnRhaW5lciosIENsdXR0ZXJBY3RvciosIGdwb2ludGVyIGRhdGEpOwogc3RhdGlj
IHZvaWQgZ3JhcGhpY3NMYXllckFjdG9yUmVtb3ZlZChDbHV0dGVyQ29udGFpbmVyKiwgQ2x1dHRl
ckFjdG9yKiwgZ3BvaW50ZXIgZGF0YSk7Ci1zdGF0aWMgZ2Jvb2xlYW4gZ3JhcGhpY3NMYXllckFj
dG9yRHJhdyhDbHV0dGVyQ2Fpcm9UZXh0dXJlKiwgY2Fpcm9fdCosIEdyYXBoaWNzTGF5ZXJBY3Rv
ciopOworc3RhdGljIGdib29sZWFuIGdyYXBoaWNzTGF5ZXJBY3RvckRyYXcoQ2x1dHRlckNhbnZh
cyosIGNhaXJvX3QqLCBnaW50IHdpZHRoLCBnaW50IGhlaWdodCwgR3JhcGhpY3NMYXllckFjdG9y
Kik7CiBzdGF0aWMgdm9pZCBncmFwaGljc0xheWVyQWN0b3JVcGRhdGVUZXh0dXJlKEdyYXBoaWNz
TGF5ZXJBY3RvciopOwogc3RhdGljIHZvaWQgZHJhd0xheWVyQ29udGVudHMoQ2x1dHRlckFjdG9y
KiwgR3JhcGhpY3NDb250ZXh0Jik7CiAKQEAgLTEwNCw3ICsxMDMsNyBAQCBzdGF0aWMgdm9pZCBn
cmFwaGljc19sYXllcl9hY3Rvcl9jbGFzc19pbml0KEdyYXBoaWNzTGF5ZXJBY3RvckNsYXNzKiBr
bGFzcykKIAogc3RhdGljIHZvaWQgZ3JhcGhpY3NfbGF5ZXJfYWN0b3JfaW5pdChHcmFwaGljc0xh
eWVyQWN0b3IqIHNlbGYpCiB7Ci0gICAgR3JhcGhpY3NMYXllckFjdG9yUHJpdmF0ZSogcHJpdiA9
IHNlbGYtPnByaXYgPSBHUkFQSElDU19MQVlFUl9BQ1RPUl9HRVRfUFJJVkFURShzZWxmKTsKKyAg
ICBzZWxmLT5wcml2ID0gR1JBUEhJQ1NfTEFZRVJfQUNUT1JfR0VUX1BSSVZBVEUoc2VsZik7CiAK
ICAgICBjbHV0dGVyX2FjdG9yX3NldF9yZWFjdGl2ZShDTFVUVEVSX0FDVE9SKHNlbGYpLCBGQUxT
RSk7CiAKQEAgLTE1MywxMSArMTUyLDYgQEAgc3RhdGljIHZvaWQgZ3JhcGhpY3NMYXllckFjdG9y
RGlzcG9zZShHT2JqZWN0KiBvYmplY3QpCiAgICAgR3JhcGhpY3NMYXllckFjdG9yKiBsYXllciA9
IEdSQVBISUNTX0xBWUVSX0FDVE9SKG9iamVjdCk7CiAgICAgR3JhcGhpY3NMYXllckFjdG9yUHJp
dmF0ZSogcHJpdiA9IGxheWVyLT5wcml2OwogCi0gICAgaWYgKHByaXYtPnRleHR1cmUpIHsKLSAg
ICAgICAgY2x1dHRlcl9hY3Rvcl9kZXN0cm95KHByaXYtPnRleHR1cmUpOwotICAgICAgICBwcml2
LT50ZXh0dXJlID0gMDsKLSAgICB9Ci0KICAgICBwcml2LT5zdXJmYWNlLmNsZWFyKCk7CiAKICAg
ICBpZiAocHJpdi0+bWF0cml4KQpAQCAtMTc4LDIwICsxNzIsOSBAQCBzdGF0aWMgdm9pZCBncmFw
aGljc0xheWVyQWN0b3JBbGxvY2F0ZShDbHV0dGVyQWN0b3IqIHNlbGYsIGNvbnN0IENsdXR0ZXJB
Y3RvckJveAogCiAgICAgQ0xVVFRFUl9BQ1RPUl9DTEFTUyhncmFwaGljc19sYXllcl9hY3Rvcl9w
YXJlbnRfY2xhc3MpLT5hbGxvY2F0ZShzZWxmLCBib3gsIGZsYWdzKTsKIAotICAgIGlmIChwcml2
LT50ZXh0dXJlKSB7Ci0gICAgICAgIC8vIFRoZSB0ZXh0dXJlIG9jY3VwaWVzIHRoZSB3aG9sZSBh
cmVhLCBidXQgaXMgcG9zaXRpb25lZCBhdCAwLDAKLSAgICAgICAgLy8gcmVsYXRpdmUgdG8gdGhl
IGxheWVyIGFjdG9yLgotICAgICAgICBDbHV0dGVyQWN0b3JCb3ggdGV4dHVyZUJveCA9IHsgMC4w
LCAwLjAsIGJveC0+eDIgLSBib3gtPngxLCBib3gtPnkyIC0gYm94LT55MSB9OwotCi0gICAgICAg
IC8vIHByb3RlY3QgYWdhaW5zdCAweDAKLSAgICAgICAgaWYgKCF0ZXh0dXJlQm94LngyKQotICAg
ICAgICAgICAgdGV4dHVyZUJveC54MiA9IDE7Ci0KLSAgICAgICAgaWYgKCF0ZXh0dXJlQm94Lnky
KQotICAgICAgICAgICAgdGV4dHVyZUJveC55MiA9IDE7Ci0KLSAgICAgICAgY2x1dHRlcl9hY3Rv
cl9hbGxvY2F0ZShwcml2LT50ZXh0dXJlLCAmdGV4dHVyZUJveCwgZmxhZ3MpOwotICAgIH0KKyAg
ICBDbHV0dGVyQ29udGVudCogY2FudmFzID0gY2x1dHRlcl9hY3Rvcl9nZXRfY29udGVudChzZWxm
KTsKKyAgICBpZiAoY2FudmFzKQorICAgICAgICBjbHV0dGVyX2NhbnZhc19zZXRfc2l6ZShDTFVU
VEVSX0NBTlZBUyhjYW52YXMpLCBjbHV0dGVyX2FjdG9yX2dldF93aWR0aChzZWxmKSwgY2x1dHRl
cl9hY3Rvcl9nZXRfaGVpZ2h0KHNlbGYpKTsKIAogICAgIC8vIEZJWE1FOiBtYXliZSB3ZSBjYW4g
Y2FjaGUgY2hpbGRyZW4gYWxsb2NhdGlvbiBhbmQgbm90IGNhbGwKICAgICAvLyBhbGxvY2F0ZSBv
biB0aGVtIHRoaXMgb2Z0ZW4/CkBAIC0yNTQsMTIgKzIzNyw2IEBAIHN0YXRpYyB2b2lkIGdyYXBo
aWNzTGF5ZXJBY3RvckFwcGx5VHJhbnNmb3JtKENsdXR0ZXJBY3RvciogYWN0b3IsIENvZ2xNYXRy
aXgqIG1hCiBzdGF0aWMgdm9pZCBncmFwaGljc0xheWVyQWN0b3JQYWludChDbHV0dGVyQWN0b3Iq
IGFjdG9yKQogewogICAgIEdyYXBoaWNzTGF5ZXJBY3RvciogZ3JhcGhpY3NMYXllciA9IEdSQVBI
SUNTX0xBWUVSX0FDVE9SKGFjdG9yKTsKLSAgICBHcmFwaGljc0xheWVyQWN0b3JQcml2YXRlKiBw
cml2ID0gR1JBUEhJQ1NfTEFZRVJfQUNUT1IoYWN0b3IpLT5wcml2OwotCi0gICAgLy8gUGFpbnQg
dGhlIHRleHR1cmUgaW4gY2FzZSB3ZSBoYXZlIGEgYm9yZGVyLiBUaGlzIHdpbGwgYmUgdGhlIGNh
c2Ugd2hlbiBkZWJ1Z2dpbmcgYm9yZGVycwotICAgIC8vIGFyZSB0dXJuZWQgb24gdGhhdCB3ZSB3
YW50IHRvIHNlZS4KLSAgICBpZiAocHJpdi0+dGV4dHVyZSkKLSAgICAgICAgY2x1dHRlcl9hY3Rv
cl9wYWludChwcml2LT50ZXh0dXJlKTsKIAogICAgIEdMaXN0KiBsaXN0OwogICAgIGZvciAobGlz
dCA9IGdyYXBoaWNzTGF5ZXItPmNoaWxkcmVuOyBsaXN0OyBsaXN0ID0gbGlzdC0+bmV4dCkgewpA
QCAtMjY4LDExICsyNDUsOSBAQCBzdGF0aWMgdm9pZCBncmFwaGljc0xheWVyQWN0b3JQYWludChD
bHV0dGVyQWN0b3IqIGFjdG9yKQogICAgIH0KIH0KIAotc3RhdGljIGdib29sZWFuIGdyYXBoaWNz
TGF5ZXJBY3RvckRyYXcoQ2x1dHRlckNhaXJvVGV4dHVyZSogdGV4dHVyZSwgY2Fpcm9fdCogY3Is
IEdyYXBoaWNzTGF5ZXJBY3RvciogbGF5ZXIpCitzdGF0aWMgZ2Jvb2xlYW4gZ3JhcGhpY3NMYXll
ckFjdG9yRHJhdyhDbHV0dGVyQ2FudmFzKiB0ZXh0dXJlLCBjYWlyb190KiBjciwgZ2ludCB3aWR0
aCwgZ2ludCBoZWlnaHQsIEdyYXBoaWNzTGF5ZXJBY3RvciogbGF5ZXIpCiB7CiAgICAgQ2x1dHRl
ckFjdG9yKiBhY3RvciA9IENMVVRURVJfQUNUT1IobGF5ZXIpOwotICAgIGZsb2F0IHdpZHRoID0g
Y2x1dHRlcl9hY3Rvcl9nZXRfd2lkdGgoYWN0b3IpOwotICAgIGZsb2F0IGhlaWdodCA9IGNsdXR0
ZXJfYWN0b3JfZ2V0X2hlaWdodChhY3Rvcik7CiAKICAgICBpZiAoIXdpZHRoIHx8ICFoZWlnaHQp
CiAgICAgICAgIHJldHVybiBGQUxTRTsKQEAgLTI4MCw3ICsyNTUsMTAgQEAgc3RhdGljIGdib29s
ZWFuIGdyYXBoaWNzTGF5ZXJBY3RvckRyYXcoQ2x1dHRlckNhaXJvVGV4dHVyZSogdGV4dHVyZSwg
Y2Fpcm9fdCogY3IKICAgICBHcmFwaGljc0xheWVyQWN0b3JQcml2YXRlKiBwcml2ID0gbGF5ZXIt
PnByaXY7CiAgICAgR3JhcGhpY3NDb250ZXh0IGNvbnRleHQoY3IpOwogCi0gICAgY2x1dHRlcl9j
YWlyb190ZXh0dXJlX2NsZWFyKHRleHR1cmUpOworICAgIGNhaXJvX3NhdmUoY3IpOworICAgIGNh
aXJvX3NldF9vcGVyYXRvcihjciwgQ0FJUk9fT1BFUkFUT1JfQ0xFQVIpOworICAgIGNhaXJvX3Bh
aW50KGNyKTsKKyAgICBjYWlyb19yZXN0b3JlKGNyKTsKIAogICAgIGlmIChwcml2LT5zdXJmYWNl
KSB7CiAgICAgICAgIGdpbnQgc3VyZmFjZVdpZHRoID0gY2Fpcm9faW1hZ2Vfc3VyZmFjZV9nZXRf
d2lkdGgocHJpdi0+c3VyZmFjZS5nZXQoKSk7CkBAIC0zMTMsMjAgKzI5MSwyMSBAQCBzdGF0aWMg
dm9pZCBncmFwaGljc0xheWVyQWN0b3JVcGRhdGVUZXh0dXJlKEdyYXBoaWNzTGF5ZXJBY3Rvciog
bGF5ZXIpCiB7CiAgICAgR3JhcGhpY3NMYXllckFjdG9yUHJpdmF0ZSogcHJpdiA9IGxheWVyLT5w
cml2OwogICAgIEFTU0VSVChwcml2LT5sYXllclR5cGUgIT0gR3JhcGhpY3NMYXllckNsdXR0ZXI6
OkxheWVyVHlwZVZpZGVvTGF5ZXIpOworICAgIENsdXR0ZXJDb250ZW50KiBjYW52YXM7CisgICAg
Y2FudmFzID0gY2x1dHRlcl9hY3Rvcl9nZXRfY29udGVudChDTFVUVEVSX0FDVE9SKGxheWVyKSk7
CiAKICAgICAvLyBOb3RoaW5nIG5lZWRzIGEgdGV4dHVyZSwgcmVtb3ZlIHRoZSBvbmUgd2UgaGF2
ZSwgaWYgYW55LgogICAgIGlmICghcHJpdi0+ZHJhd3NDb250ZW50ICYmICFwcml2LT5zdXJmYWNl
KSB7Ci0gICAgICAgIGlmICghcHJpdi0+dGV4dHVyZSkKKyAgICAgICAgaWYgKCFjYW52YXMpCiAg
ICAgICAgICAgICByZXR1cm47CiAKLSAgICAgICAgZ19zaWduYWxfaGFuZGxlcnNfZGlzY29ubmVj
dF9ieV9mdW5jKHByaXYtPnRleHR1cmUsIHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCo+KGdyYXBoaWNz
TGF5ZXJBY3RvckRyYXcpLCBsYXllcik7Ci0gICAgICAgIGNsdXR0ZXJfYWN0b3JfdW5wYXJlbnQo
cHJpdi0+dGV4dHVyZSk7Ci0gICAgICAgIHByaXYtPnRleHR1cmUgPSAwOworICAgICAgICBnX3Np
Z25hbF9oYW5kbGVyc19kaXNjb25uZWN0X2J5X2Z1bmMoY2FudmFzLCByZWludGVycHJldF9jYXN0
PHZvaWQqPihncmFwaGljc0xheWVyQWN0b3JEcmF3KSwgbGF5ZXIpOworICAgICAgICBnX29iamVj
dF91bnJlZihjYW52YXMpOwogICAgICAgICByZXR1cm47CiAgICAgfQogCiAgICAgLy8gV2UgbmVl
ZCBhIHRleHR1cmUsIGJ1dCBhbHJlYWR5IGhhdmUgb25lIQotICAgIGlmIChwcml2LT50ZXh0dXJl
KQorICAgIGlmIChjYW52YXMpCiAgICAgICAgIHJldHVybjsKIAogICAgIC8vIFdlIG5lZWQgYSB0
ZXh0dXJlLCBzbyBjcmVhdGUgaXQuCkBAIC0zMzQsMTEgKzMxMywxMyBAQCBzdGF0aWMgdm9pZCBn
cmFwaGljc0xheWVyQWN0b3JVcGRhdGVUZXh0dXJlKEdyYXBoaWNzTGF5ZXJBY3RvciogbGF5ZXIp
CiAgICAgaW50IHdpZHRoID0gY2VpbGYoY2x1dHRlcl9hY3Rvcl9nZXRfd2lkdGgoYWN0b3IpKTsK
ICAgICBpbnQgaGVpZ2h0ID0gY2VpbGYoY2x1dHRlcl9hY3Rvcl9nZXRfaGVpZ2h0KGFjdG9yKSk7
CiAKLSAgICBwcml2LT50ZXh0dXJlID0gY2x1dHRlcl9jYWlyb190ZXh0dXJlX25ldyh3aWR0aCA+
IDAgPyB3aWR0aCA6IDEsIGhlaWdodCA+IDAgPyBoZWlnaHQgOiAxKTsKLSAgICBjbHV0dGVyX2Nh
aXJvX3RleHR1cmVfc2V0X2F1dG9fcmVzaXplKENMVVRURVJfQ0FJUk9fVEVYVFVSRShwcml2LT50
ZXh0dXJlKSwgVFJVRSk7Ci0gICAgY2x1dHRlcl9hY3Rvcl9zZXRfcGFyZW50KHByaXYtPnRleHR1
cmUsIGFjdG9yKTsKLQotICAgIGdfc2lnbmFsX2Nvbm5lY3QocHJpdi0+dGV4dHVyZSwgImRyYXci
LCBHX0NBTExCQUNLKGdyYXBoaWNzTGF5ZXJBY3RvckRyYXcpLCBsYXllcik7CisgICAgY2FudmFz
ID0gY2x1dHRlcl9jYW52YXNfbmV3KCk7CisgICAgY2x1dHRlcl9hY3Rvcl9zZXRfY29udGVudChh
Y3RvciwgY2FudmFzKTsKKyAgICBjbHV0dGVyX2NhbnZhc19zZXRfc2l6ZShDTFVUVEVSX0NBTlZB
UyhjYW52YXMpLCB3aWR0aCA+IDAgPyB3aWR0aCA6IDEsIGhlaWdodCA+IDAgPyBoZWlnaHQgOiAx
KTsKKyAgICAvLyB0aGUgYWN0b3Igbm93IG93bnMgdGhlIGNhbnZhcworICAgIGdfb2JqZWN0X3Vu
cmVmKGNhbnZhcyk7CisgICAgCisgICAgZ19zaWduYWxfY29ubmVjdChjYW52YXMsICJkcmF3Iiwg
R19DQUxMQkFDSyhncmFwaGljc0xheWVyQWN0b3JEcmF3KSwgbGF5ZXIpOwogfQogCiAvLyBEcmF3
IGNvbnRlbnQgaW50byB0aGUgbGF5ZXIuCkBAIC0zNjUsMTIgKzM0Niw2IEBAIEdyYXBoaWNzTGF5
ZXJBY3RvciogZ3JhcGhpY3NMYXllckFjdG9yTmV3KEdyYXBoaWNzTGF5ZXJDbHV0dGVyOjpMYXll
clR5cGUgdHlwZSkKIAogICAgIHByaXYtPmxheWVyVHlwZSA9IHR5cGU7CiAKLSAgICAvLyBGb3Ig
dmlkZW8gbGF5ZXJzIHdlIGRvbid0IHdhbnQgdGhlIGNhaXJvIHRleHR1cmUsIGJ1dCBhIHJlZ3Vs
YXIgb25lLgotICAgIGlmIChwcml2LT5sYXllclR5cGUgPT0gR3JhcGhpY3NMYXllckNsdXR0ZXI6
OkxheWVyVHlwZVZpZGVvTGF5ZXIpIHsKLSAgICAgICAgcHJpdi0+dGV4dHVyZSA9IGNsdXR0ZXJf
dGV4dHVyZV9uZXcoKTsKLSAgICAgICAgY2x1dHRlcl9hY3Rvcl9zZXRfcGFyZW50KHByaXYtPnRl
eHR1cmUsIENMVVRURVJfQUNUT1IobGF5ZXIpKTsKLSAgICB9Ci0KICAgICByZXR1cm4gbGF5ZXI7
CiB9CiAKQEAgLTM5NywxMyArMzcyLDggQEAgdm9pZCBncmFwaGljc0xheWVyQWN0b3JSZW1vdmVB
bGwoR3JhcGhpY3NMYXllckFjdG9yKiBsYXllcikKICAgICBnX3JldHVybl9pZl9mYWlsKEdSQVBI
SUNTX0xBWUVSX0lTX0FDVE9SKGxheWVyKSk7CiAKICAgICBHTGlzdCogY2hpbGRyZW4gPSBjbHV0
dGVyX2FjdG9yX2dldF9jaGlsZHJlbihDTFVUVEVSX0FDVE9SKGxheWVyKSk7Ci0gICAgZm9yICg7
IGNoaWxkcmVuOyBjaGlsZHJlbiA9IGNoaWxkcmVuLT5uZXh0KSB7Ci0gICAgICAgIC8vIFdlIG9u
bHkgd2FudCB0byByZW1vdmUgc3VibGF5ZXJzLCBub3Qgb3VyIG93biBjb21wb3NpdGUgYWN0b3Jz
LgotICAgICAgICBpZiAoY2hpbGRyZW4tPmRhdGEgPT0gbGF5ZXItPnByaXYtPnRleHR1cmUpCi0g
ICAgICAgICAgICBjb250aW51ZTsKLQorICAgIGZvciAoOyBjaGlsZHJlbjsgY2hpbGRyZW4gPSBj
aGlsZHJlbi0+bmV4dCkKICAgICAgICAgY2x1dHRlcl9hY3Rvcl9yZW1vdmVfY2hpbGQoQ0xVVFRF
Ul9BQ1RPUihsYXllciksIENMVVRURVJfQUNUT1IoY2hpbGRyZW4tPmRhdGEpKTsKLSAgICB9CiB9
CiAKIGNhaXJvX3N1cmZhY2VfdCogZ3JhcGhpY3NMYXllckFjdG9yR2V0U3VyZmFjZShHcmFwaGlj
c0xheWVyQWN0b3IqIGxheWVyKQpAQCAtNDIzLDEyICszOTMsMTMgQEAgdm9pZCBncmFwaGljc0xh
eWVyQWN0b3JTZXRTdXJmYWNlKEdyYXBoaWNzTGF5ZXJBY3RvciogbGF5ZXIsIGNhaXJvX3N1cmZh
Y2VfdCogc3UKIHZvaWQgZ3JhcGhpY3NMYXllckFjdG9ySW52YWxpZGF0ZVJlY3RhbmdsZShHcmFw
aGljc0xheWVyQWN0b3IqIGxheWVyLCBjb25zdCBGbG9hdFJlY3QmIGRpcnR5UmVjdCkKIHsKICAg
ICBHcmFwaGljc0xheWVyQWN0b3JQcml2YXRlKiBwcml2ID0gbGF5ZXItPnByaXY7Ci0KLSAgICBp
ZiAoIXByaXYtPnRleHR1cmUpCisgICAgQ2x1dHRlckNvbnRlbnQqIGNhbnZhczsKKyAgICBjYW52
YXMgPSBjbHV0dGVyX2FjdG9yX2dldF9jb250ZW50KENMVVRURVJfQUNUT1IobGF5ZXIpKTsKKyAg
ICBpZiAoIWNhbnZhcykKICAgICAgICAgcmV0dXJuOwogCi0gICAgY2Fpcm9fcmVjdGFuZ2xlX2lu
dF90IHJlY3QoZW5jbG9zaW5nSW50UmVjdChkaXJ0eVJlY3QpKTsKLSAgICBjbHV0dGVyX2NhaXJv
X3RleHR1cmVfaW52YWxpZGF0ZV9yZWN0YW5nbGUoQ0xVVFRFUl9DQUlST19URVhUVVJFKHByaXYt
PnRleHR1cmUpLCAmcmVjdCk7CisgICAgLy8gRklYTUU6IE5lZWQgdG8gaW52YWxpZGF0ZSBhIHNw
ZWNpZmljIGFyZWE/CisgICAgY2x1dHRlcl9jb250ZW50X2ludmFsaWRhdGUoY2FudmFzKTsKIH0K
IAogdm9pZCBncmFwaGljc0xheWVyQWN0b3JTZXRUcmFuc2Zvcm0oR3JhcGhpY3NMYXllckFjdG9y
KiBsYXllciwgY29uc3QgQ29nbE1hdHJpeCogbWF0cml4KSAKQEAgLTUyMCw3ICs0OTEsNyBAQCB2
b2lkIGdyYXBoaWNzTGF5ZXJBY3Rvckluc2VydFN1YmxheWVyKEdyYXBoaWNzTGF5ZXJBY3Rvciog
bGF5ZXIsIENsdXR0ZXJBY3RvciogYwogCiAgICAgbGF5ZXItPmNoaWxkcmVuID0gZ19saXN0X2lu
c2VydChsYXllci0+Y2hpbGRyZW4sIGNoaWxkTGF5ZXIsIGluZGV4KTsKICAgICBBU1NFUlQoIWNs
dXR0ZXJfYWN0b3JfZ2V0X3BhcmVudChjaGlsZExheWVyKSk7Ci0gICAgY2x1dHRlcl9hY3Rvcl9z
ZXRfcGFyZW50KGNoaWxkTGF5ZXIsIENMVVRURVJfQUNUT1IobGF5ZXIpKTsKKyAgICBjbHV0dGVy
X2FjdG9yX2FkZF9jaGlsZChDTFVUVEVSX0FDVE9SKGxheWVyKSwgY2hpbGRMYXllcik7CiAgICAg
Y2x1dHRlcl9hY3Rvcl9xdWV1ZV9yZWxheW91dChDTFVUVEVSX0FDVE9SKGxheWVyKSk7CiAKICAg
ICBnX29iamVjdF91bnJlZihjaGlsZExheWVyKTsKQEAgLTUzNSw3ICs1MDYsNyBAQCB2b2lkIGdy
YXBoaWNzTGF5ZXJBY3RvclNldFN1YmxheWVycyhHcmFwaGljc0xheWVyQWN0b3IqIGxheWVyLCBH
cmFwaGljc0xheWVyQWN0bwogCiAgICAgZm9yIChzaXplX3QgaSA9IDA7IGkgPCBzdWJMYXllcnMu
c2l6ZSgpOyArK2kpIHsKICAgICAgICAgQ2x1dHRlckFjdG9yKiBsYXllckFjdG9yID0gQ0xVVFRF
Ul9BQ1RPUihzdWJMYXllcnNbaV0uZ2V0KCkpOwotICAgICAgICBjbHV0dGVyX2NvbnRhaW5lcl9h
ZGRfYWN0b3IoQ0xVVFRFUl9DT05UQUlORVIobGF5ZXIpLCBsYXllckFjdG9yKTsKKyAgICAgICAg
Y2x1dHRlcl9hY3Rvcl9hZGRfY2hpbGQoQ0xVVFRFUl9BQ1RPUihsYXllciksIGxheWVyQWN0b3Ip
OwogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBv
cnQvQWNjZWxlcmF0ZWRDb21wb3NpdGluZ0NvbnRleHRDbHV0dGVyLmNwcCBiL1NvdXJjZS9XZWJL
aXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0FjY2VsZXJhdGVkQ29tcG9zaXRpbmdDb250ZXh0Q2x1dHRl
ci5jcHAKaW5kZXggYjEwODA5MWQyYzIxZDg4NTRmZjA1NDgyMTViMzllODViMjRjOGQwMy4uMjhk
ZjIxZDk2ZGYyZGM2YTJiOWE3ZjM3ZTViYzY4OWFkMGY0YTdmMSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvQWNjZWxlcmF0ZWRDb21wb3NpdGluZ0NvbnRleHRD
bHV0dGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9BY2NlbGVy
YXRlZENvbXBvc2l0aW5nQ29udGV4dENsdXR0ZXIuY3BwCkBAIC0xMjMsOSArMTIzLDggQEAgdm9p
ZCBBY2NlbGVyYXRlZENvbXBvc2l0aW5nQ29udGV4dDo6c2V0Um9vdENvbXBvc2l0aW5nTGF5ZXIo
R3JhcGhpY3NMYXllciogZ3JhcGgKICAgICBpZiAoZ3JhcGhpY3NMYXllcikgewogICAgICAgICBD
bHV0dGVyQ29sb3Igc3RhZ2VDb2xvciA9IHsgMHhGRiwgMHhGRiwgMHhGRiwgMHhGRiB9OwogICAg
ICAgICBDbHV0dGVyQWN0b3IqIHN0YWdlID0gZ3RrX2NsdXR0ZXJfZW1iZWRfZ2V0X3N0YWdlKEdU
S19DTFVUVEVSX0VNQkVEKG1fcm9vdExheWVyRW1iZWRkZXIpKTsKLSAgICAgICAgY2x1dHRlcl9z
dGFnZV9zZXRfY29sb3IoQ0xVVFRFUl9TVEFHRShzdGFnZSksICZzdGFnZUNvbG9yKTsKLSAgICAg
ICAgY2x1dHRlcl9jb250YWluZXJfYWRkX2FjdG9yKENMVVRURVJfQ09OVEFJTkVSKHN0YWdlKSwg
bV9yb290TGF5ZXItPnBsYXRmb3JtTGF5ZXIoKSk7Ci0gICAgICAgIGNsdXR0ZXJfYWN0b3Jfc2hv
d19hbGwoc3RhZ2UpOworICAgICAgICBjbHV0dGVyX2FjdG9yX3NldF9iYWNrZ3JvdW5kX2NvbG9y
KHN0YWdlLCAmc3RhZ2VDb2xvcik7CisgICAgICAgIGNsdXR0ZXJfYWN0b3JfYWRkX2NoaWxkKHN0
YWdlLCBtX3Jvb3RMYXllci0+cGxhdGZvcm1MYXllcigpKTsKICAgICB9CiAKICAgICBzY2hlZHVs
ZUxheWVyRmx1c2goKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>180702</attachid>
            <date>2012-12-24 22:59:17 -0800</date>
            <delta_ts>2013-01-21 10:31:07 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105736-20121224225623.patch</filename>
            <type>text/plain</type>
            <size>13086</size>
            <attacher name="Joone Hur">joone</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4NDIxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggN2U4MGJkM2ZkZGJiYTQ2
NzkzYTBiYTFiYjU0MzU2MjA4YWE0OWQxMC4uNDcyMGVhNGJjMmJmYzRhMGFhOTZmZGY1MDRjYWJk
NTY3Mzg0YzQxZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEyLTEyLTI0ICBKb29u
ZSBIdXIgIDxqb29uZS5odXJAaW50ZWwuY29tPgorCisgICAgICAgIFtHVEtdW0FDXSBVc2UgbmV3
IENsdXR0ZXIgQVBJcyBpbnN0ZWFkIG9mIGRlcHJlY2F0ZWQgQVBJcworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA1NzM2CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ2x1dHRlckNhaXJvVGV4dHVyZSBjbGFz
cyBhbmQgc2V2ZXJhbCBBUElzIGhhdmUgYmVlbiBkZXByZWNhdGVkIHNpbmNlIHZlcnNpb24gMS4x
MCwgCisgICAgICAgIHNvIENsdXR0ZXJDYW52YXMgYW5kIENsdXR0ZXJDb250ZW50IHNob3VsZCBi
ZSB1c2VkIGluc3RlYWQgb2YgQ2x1dHRlckNhaXJvVGV4dHVyZS4KKyAgICAgICAgY2x1dHRlcl9h
Y3Rvcl9hZGRfY2hpbGQgc2hvdWxkIGJlIHVzZWQgaW5zdGVhZCBvZiBjbHV0dGVyX2FjdG9yX3Nl
dF9wYXJlbnQgYW5kIGNsdXR0ZXJfY29udGFpbmVyX2FkZF9jbHV0dGVyLgorCisgICAgICAgICog
cGxhdGZvcm0vZ3JhcGhpY3MvY2x1dHRlci9HcmFwaGljc0xheWVyQWN0b3IuY3BwOgorICAgICAg
ICAoX0dyYXBoaWNzTGF5ZXJBY3RvclByaXZhdGUpOgorICAgICAgICAoZ3JhcGhpY3NfbGF5ZXJf
YWN0b3JfaW5pdCk6CisgICAgICAgIChncmFwaGljc0xheWVyQWN0b3JEaXNwb3NlKToKKyAgICAg
ICAgKGdyYXBoaWNzTGF5ZXJBY3RvckFsbG9jYXRlKToKKyAgICAgICAgKGdyYXBoaWNzTGF5ZXJB
Y3RvclBhaW50KToKKyAgICAgICAgKGdyYXBoaWNzTGF5ZXJBY3RvckRyYXcpOgorICAgICAgICAo
Z3JhcGhpY3NMYXllckFjdG9yVXBkYXRlVGV4dHVyZSk6CisgICAgICAgIChncmFwaGljc0xheWVy
QWN0b3JOZXcpOgorICAgICAgICAoZ3JhcGhpY3NMYXllckFjdG9yUmVtb3ZlQWxsKToKKyAgICAg
ICAgKGdyYXBoaWNzTGF5ZXJBY3RvckludmFsaWRhdGVSZWN0YW5nbGUpOgorICAgICAgICAoZ3Jh
cGhpY3NMYXllckFjdG9ySW5zZXJ0U3VibGF5ZXIpOgorICAgICAgICAoZ3JhcGhpY3NMYXllckFj
dG9yU2V0U3VibGF5ZXJzKToKKwogMjAxMi0xMi0yMyAgVG9ueSBDaGFuZyAgPHRvbnlAY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFtRdF1bTWFjXSBVbnJldmlld2VkIGZpeCB0aGUgYnVpbGQgYWZ0
ZXIgcjEzODQxMwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9ndGsvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdC9ndGsvQ2hhbmdlTG9nCmluZGV4IDFiNTA5NTk3NTJlYmQwNDllMzY0YmE0Y2Iy
ZmExMDBmNzhmY2Q4ZDkuLjBiYTVjMDU2MDVkNjUxN2YwYmEyZGYxMDg3YjZhOTRhZGRjMjNkN2Eg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2Vi
S2l0L2d0ay9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNyBAQAorMjAxMi0xMi0yNCAgSm9vbmUgSHVy
ICA8am9vbmUuaHVyQGludGVsLmNvbT4KKworICAgICAgICBbR1RLXVtBQ10gVXNlIG5ldyBDbHV0
dGVyIEFQSXMgaW5zdGVhZCBvZiBkZXByZWNhdGVkIEFQSXMKKyAgICAgICAgaHR0cHM6Ly9idWdz
LndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNTczNgorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVzZSBjbHV0dGVyX2FjdG9yX3NldF9iYWNrZ3Jv
dW5kX2NvbG9yIGluc3RlYWQgb2YgY2x1dHRlcl9zdGFnZV9zZXRfY29sb3IuCisgICAgICAgIFVz
ZSBjbHV0dGVyX2FjdG9yX2FkZF9jaGlsZCBpbnN0ZWFkIG9mIGNsdXR0ZXJfY29udGFpbmVyX2Fk
ZF9hY3Rvci4KKyAgICAgICAgUmVtb3ZlIGNsdXR0ZXJfYWN0b3Jfc2hvd19hbGwgYmVjYXVzZSBB
Y3RvcnMgYXJlIHZpc2libGUgYnkgZGVmYXVsdC4KKworICAgICAgICAqIFdlYkNvcmVTdXBwb3J0
L0FjY2VsZXJhdGVkQ29tcG9zaXRpbmdDb250ZXh0Q2x1dHRlci5jcHA6CisgICAgICAgIChXZWJL
aXQ6OkFjY2VsZXJhdGVkQ29tcG9zaXRpbmdDb250ZXh0OjpzZXRSb290Q29tcG9zaXRpbmdMYXll
cik6CisKIDIwMTItMTItMjIgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CiAK
ICAgICAgICAgQWRkIGEgc2VwYXJhdGUgY2xhc3MgZm9yIG5ldHdvcmtpbmcgcmVsYXRlZCBzdG9y
YWdlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jbHV0dGVy
L0dyYXBoaWNzTGF5ZXJBY3Rvci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jbHV0dGVyL0dyYXBoaWNzTGF5ZXJBY3Rvci5jcHAKaW5kZXggODlhNzFkN2NkNjQwZDhmOWY4
OWE3YWViYTRiZmE1ZDg1MmFkMzk3NS4uYzg1YTY5MjA1ZGUwOGFlNjBkZGQ3Yjk2MzNkNzRkNDFi
OThhMTQxZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2x1
dHRlci9HcmFwaGljc0xheWVyQWN0b3IuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2NsdXR0ZXIvR3JhcGhpY3NMYXllckFjdG9yLmNwcApAQCAtMzEsNyArMzEsNyBA
QAogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAotR19ERUZJTkVfVFlQRShHcmFwaGljc0xh
eWVyQWN0b3IsIGdyYXBoaWNzX2xheWVyX2FjdG9yLCBDTFVUVEVSX1RZUEVfUkVDVEFOR0xFKQor
R19ERUZJTkVfVFlQRShHcmFwaGljc0xheWVyQWN0b3IsIGdyYXBoaWNzX2xheWVyX2FjdG9yLCBD
TFVUVEVSX1RZUEVfQUNUT1IpCiAKICNkZWZpbmUgR1JBUEhJQ1NfTEFZRVJfQUNUT1JfR0VUX1BS
SVZBVEUob2JqKSAoR19UWVBFX0lOU1RBTkNFX0dFVF9QUklWQVRFKChvYmopLCBHUkFQSElDU19M
QVlFUl9UWVBFX0FDVE9SLCBHcmFwaGljc0xheWVyQWN0b3JQcml2YXRlKSkKIApAQCAtMzksNyAr
MzksNiBAQCBzdHJ1Y3QgX0dyYXBoaWNzTGF5ZXJBY3RvclByaXZhdGUgewogICAgIEdyYXBoaWNz
TGF5ZXJDbHV0dGVyOjpMYXllclR5cGUgbGF5ZXJUeXBlOwogICAgIGdib29sZWFuIGFsbG9jYXRp
bmc7CiAKLSAgICBDbHV0dGVyQWN0b3IqIHRleHR1cmU7CiAgICAgUmVmUHRyPGNhaXJvX3N1cmZh
Y2VfdD4gc3VyZmFjZTsKICAgICBDb2dsTWF0cml4KiBtYXRyaXg7CiAKQEAgLTczLDExICs3Miwx
MCBAQCBzdGF0aWMgdm9pZCBncmFwaGljc0xheWVyQWN0b3JEaXNwb3NlKEdPYmplY3QqKTsKIHN0
YXRpYyB2b2lkIGdyYXBoaWNzTGF5ZXJBY3RvckdldFByb3BlcnR5KEdPYmplY3QqLCBndWludCBw
cm9wSUQsIEdWYWx1ZSosIEdQYXJhbVNwZWMqKTsKIHN0YXRpYyB2b2lkIGdyYXBoaWNzTGF5ZXJB
Y3RvclNldFByb3BlcnR5KEdPYmplY3QqLCBndWludCBwcm9wSUQsIGNvbnN0IEdWYWx1ZSosIEdQ
YXJhbVNwZWMqKTsKIHN0YXRpYyB2b2lkIGdyYXBoaWNzTGF5ZXJBY3RvclBhaW50KENsdXR0ZXJB
Y3RvciopOwotc3RhdGljIHZvaWQgZ3JhcGhpY3NMYXllckFjdG9yUGljayhDbHV0dGVyQWN0b3Iq
LCBjb25zdCBDbHV0dGVyQ29sb3IqKTsKIAogc3RhdGljIHZvaWQgZ3JhcGhpY3NMYXllckFjdG9y
QWRkZWQoQ2x1dHRlckNvbnRhaW5lciosIENsdXR0ZXJBY3RvciosIGdwb2ludGVyIGRhdGEpOwog
c3RhdGljIHZvaWQgZ3JhcGhpY3NMYXllckFjdG9yUmVtb3ZlZChDbHV0dGVyQ29udGFpbmVyKiwg
Q2x1dHRlckFjdG9yKiwgZ3BvaW50ZXIgZGF0YSk7Ci1zdGF0aWMgZ2Jvb2xlYW4gZ3JhcGhpY3NM
YXllckFjdG9yRHJhdyhDbHV0dGVyQ2Fpcm9UZXh0dXJlKiwgY2Fpcm9fdCosIEdyYXBoaWNzTGF5
ZXJBY3RvciopOworc3RhdGljIGdib29sZWFuIGdyYXBoaWNzTGF5ZXJBY3RvckRyYXcoQ2x1dHRl
ckNhbnZhcyosIGNhaXJvX3QqLCBnaW50IHdpZHRoLCBnaW50IGhlaWdodCwgR3JhcGhpY3NMYXll
ckFjdG9yKik7CiBzdGF0aWMgdm9pZCBncmFwaGljc0xheWVyQWN0b3JVcGRhdGVUZXh0dXJlKEdy
YXBoaWNzTGF5ZXJBY3RvciopOwogc3RhdGljIHZvaWQgZHJhd0xheWVyQ29udGVudHMoQ2x1dHRl
ckFjdG9yKiwgR3JhcGhpY3NDb250ZXh0Jik7CiAKQEAgLTEwNCw3ICsxMDIsNyBAQCBzdGF0aWMg
dm9pZCBncmFwaGljc19sYXllcl9hY3Rvcl9jbGFzc19pbml0KEdyYXBoaWNzTGF5ZXJBY3RvckNs
YXNzKiBrbGFzcykKIAogc3RhdGljIHZvaWQgZ3JhcGhpY3NfbGF5ZXJfYWN0b3JfaW5pdChHcmFw
aGljc0xheWVyQWN0b3IqIHNlbGYpCiB7Ci0gICAgR3JhcGhpY3NMYXllckFjdG9yUHJpdmF0ZSog
cHJpdiA9IHNlbGYtPnByaXYgPSBHUkFQSElDU19MQVlFUl9BQ1RPUl9HRVRfUFJJVkFURShzZWxm
KTsKKyAgICBzZWxmLT5wcml2ID0gR1JBUEhJQ1NfTEFZRVJfQUNUT1JfR0VUX1BSSVZBVEUoc2Vs
Zik7CiAKICAgICBjbHV0dGVyX2FjdG9yX3NldF9yZWFjdGl2ZShDTFVUVEVSX0FDVE9SKHNlbGYp
LCBGQUxTRSk7CiAKQEAgLTE1MywxMSArMTUxLDYgQEAgc3RhdGljIHZvaWQgZ3JhcGhpY3NMYXll
ckFjdG9yRGlzcG9zZShHT2JqZWN0KiBvYmplY3QpCiAgICAgR3JhcGhpY3NMYXllckFjdG9yKiBs
YXllciA9IEdSQVBISUNTX0xBWUVSX0FDVE9SKG9iamVjdCk7CiAgICAgR3JhcGhpY3NMYXllckFj
dG9yUHJpdmF0ZSogcHJpdiA9IGxheWVyLT5wcml2OwogCi0gICAgaWYgKHByaXYtPnRleHR1cmUp
IHsKLSAgICAgICAgY2x1dHRlcl9hY3Rvcl9kZXN0cm95KHByaXYtPnRleHR1cmUpOwotICAgICAg
ICBwcml2LT50ZXh0dXJlID0gMDsKLSAgICB9Ci0KICAgICBwcml2LT5zdXJmYWNlLmNsZWFyKCk7
CiAKICAgICBpZiAocHJpdi0+bWF0cml4KQpAQCAtMTc4LDIwICsxNzEsOSBAQCBzdGF0aWMgdm9p
ZCBncmFwaGljc0xheWVyQWN0b3JBbGxvY2F0ZShDbHV0dGVyQWN0b3IqIHNlbGYsIGNvbnN0IENs
dXR0ZXJBY3RvckJveAogCiAgICAgQ0xVVFRFUl9BQ1RPUl9DTEFTUyhncmFwaGljc19sYXllcl9h
Y3Rvcl9wYXJlbnRfY2xhc3MpLT5hbGxvY2F0ZShzZWxmLCBib3gsIGZsYWdzKTsKIAotICAgIGlm
IChwcml2LT50ZXh0dXJlKSB7Ci0gICAgICAgIC8vIFRoZSB0ZXh0dXJlIG9jY3VwaWVzIHRoZSB3
aG9sZSBhcmVhLCBidXQgaXMgcG9zaXRpb25lZCBhdCAwLDAKLSAgICAgICAgLy8gcmVsYXRpdmUg
dG8gdGhlIGxheWVyIGFjdG9yLgotICAgICAgICBDbHV0dGVyQWN0b3JCb3ggdGV4dHVyZUJveCA9
IHsgMC4wLCAwLjAsIGJveC0+eDIgLSBib3gtPngxLCBib3gtPnkyIC0gYm94LT55MSB9OwotCi0g
ICAgICAgIC8vIHByb3RlY3QgYWdhaW5zdCAweDAKLSAgICAgICAgaWYgKCF0ZXh0dXJlQm94Lngy
KQotICAgICAgICAgICAgdGV4dHVyZUJveC54MiA9IDE7Ci0KLSAgICAgICAgaWYgKCF0ZXh0dXJl
Qm94LnkyKQotICAgICAgICAgICAgdGV4dHVyZUJveC55MiA9IDE7Ci0KLSAgICAgICAgY2x1dHRl
cl9hY3Rvcl9hbGxvY2F0ZShwcml2LT50ZXh0dXJlLCAmdGV4dHVyZUJveCwgZmxhZ3MpOwotICAg
IH0KKyAgICBDbHV0dGVyQ29udGVudCogY2FudmFzID0gY2x1dHRlcl9hY3Rvcl9nZXRfY29udGVu
dChzZWxmKTsKKyAgICBpZiAoY2FudmFzKQorICAgICAgICBjbHV0dGVyX2NhbnZhc19zZXRfc2l6
ZShDTFVUVEVSX0NBTlZBUyhjYW52YXMpLCBjbHV0dGVyX2FjdG9yX2dldF93aWR0aChzZWxmKSwg
Y2x1dHRlcl9hY3Rvcl9nZXRfaGVpZ2h0KHNlbGYpKTsKIAogICAgIC8vIEZJWE1FOiBtYXliZSB3
ZSBjYW4gY2FjaGUgY2hpbGRyZW4gYWxsb2NhdGlvbiBhbmQgbm90IGNhbGwKICAgICAvLyBhbGxv
Y2F0ZSBvbiB0aGVtIHRoaXMgb2Z0ZW4/CkBAIC0yNTQsMTIgKzIzNiw2IEBAIHN0YXRpYyB2b2lk
IGdyYXBoaWNzTGF5ZXJBY3RvckFwcGx5VHJhbnNmb3JtKENsdXR0ZXJBY3RvciogYWN0b3IsIENv
Z2xNYXRyaXgqIG1hCiBzdGF0aWMgdm9pZCBncmFwaGljc0xheWVyQWN0b3JQYWludChDbHV0dGVy
QWN0b3IqIGFjdG9yKQogewogICAgIEdyYXBoaWNzTGF5ZXJBY3RvciogZ3JhcGhpY3NMYXllciA9
IEdSQVBISUNTX0xBWUVSX0FDVE9SKGFjdG9yKTsKLSAgICBHcmFwaGljc0xheWVyQWN0b3JQcml2
YXRlKiBwcml2ID0gR1JBUEhJQ1NfTEFZRVJfQUNUT1IoYWN0b3IpLT5wcml2OwotCi0gICAgLy8g
UGFpbnQgdGhlIHRleHR1cmUgaW4gY2FzZSB3ZSBoYXZlIGEgYm9yZGVyLiBUaGlzIHdpbGwgYmUg
dGhlIGNhc2Ugd2hlbiBkZWJ1Z2dpbmcgYm9yZGVycwotICAgIC8vIGFyZSB0dXJuZWQgb24gdGhh
dCB3ZSB3YW50IHRvIHNlZS4KLSAgICBpZiAocHJpdi0+dGV4dHVyZSkKLSAgICAgICAgY2x1dHRl
cl9hY3Rvcl9wYWludChwcml2LT50ZXh0dXJlKTsKIAogICAgIEdMaXN0KiBsaXN0OwogICAgIGZv
ciAobGlzdCA9IGdyYXBoaWNzTGF5ZXItPmNoaWxkcmVuOyBsaXN0OyBsaXN0ID0gbGlzdC0+bmV4
dCkgewpAQCAtMjY4LDE5ICsyNDQsMTYgQEAgc3RhdGljIHZvaWQgZ3JhcGhpY3NMYXllckFjdG9y
UGFpbnQoQ2x1dHRlckFjdG9yKiBhY3RvcikKICAgICB9CiB9CiAKLXN0YXRpYyBnYm9vbGVhbiBn
cmFwaGljc0xheWVyQWN0b3JEcmF3KENsdXR0ZXJDYWlyb1RleHR1cmUqIHRleHR1cmUsIGNhaXJv
X3QqIGNyLCBHcmFwaGljc0xheWVyQWN0b3IqIGxheWVyKQorc3RhdGljIGdib29sZWFuIGdyYXBo
aWNzTGF5ZXJBY3RvckRyYXcoQ2x1dHRlckNhbnZhcyogdGV4dHVyZSwgY2Fpcm9fdCogY3IsIGdp
bnQgd2lkdGgsIGdpbnQgaGVpZ2h0LCBHcmFwaGljc0xheWVyQWN0b3IqIGxheWVyKQogewogICAg
IENsdXR0ZXJBY3RvciogYWN0b3IgPSBDTFVUVEVSX0FDVE9SKGxheWVyKTsKLSAgICBmbG9hdCB3
aWR0aCA9IGNsdXR0ZXJfYWN0b3JfZ2V0X3dpZHRoKGFjdG9yKTsKLSAgICBmbG9hdCBoZWlnaHQg
PSBjbHV0dGVyX2FjdG9yX2dldF9oZWlnaHQoYWN0b3IpOwogCiAgICAgaWYgKCF3aWR0aCB8fCAh
aGVpZ2h0KQogICAgICAgICByZXR1cm4gRkFMU0U7CiAKICAgICBHcmFwaGljc0xheWVyQWN0b3JQ
cml2YXRlKiBwcml2ID0gbGF5ZXItPnByaXY7CiAgICAgR3JhcGhpY3NDb250ZXh0IGNvbnRleHQo
Y3IpOwotCi0gICAgY2x1dHRlcl9jYWlyb190ZXh0dXJlX2NsZWFyKHRleHR1cmUpOworICAgIGNv
bnRleHQuY2xlYXJSZWN0KEZsb2F0UmVjdCgwLCAwLCB3aWR0aCwgaGVpZ2h0KSk7CiAKICAgICBp
ZiAocHJpdi0+c3VyZmFjZSkgewogICAgICAgICBnaW50IHN1cmZhY2VXaWR0aCA9IGNhaXJvX2lt
YWdlX3N1cmZhY2VfZ2V0X3dpZHRoKHByaXYtPnN1cmZhY2UuZ2V0KCkpOwpAQCAtMzEzLDIwICsy
ODYsMjEgQEAgc3RhdGljIHZvaWQgZ3JhcGhpY3NMYXllckFjdG9yVXBkYXRlVGV4dHVyZShHcmFw
aGljc0xheWVyQWN0b3IqIGxheWVyKQogewogICAgIEdyYXBoaWNzTGF5ZXJBY3RvclByaXZhdGUq
IHByaXYgPSBsYXllci0+cHJpdjsKICAgICBBU1NFUlQocHJpdi0+bGF5ZXJUeXBlICE9IEdyYXBo
aWNzTGF5ZXJDbHV0dGVyOjpMYXllclR5cGVWaWRlb0xheWVyKTsKKyAgICBDbHV0dGVyQ29udGVu
dCogY2FudmFzOworICAgIGNhbnZhcyA9IGNsdXR0ZXJfYWN0b3JfZ2V0X2NvbnRlbnQoQ0xVVFRF
Ul9BQ1RPUihsYXllcikpOwogCiAgICAgLy8gTm90aGluZyBuZWVkcyBhIHRleHR1cmUsIHJlbW92
ZSB0aGUgb25lIHdlIGhhdmUsIGlmIGFueS4KICAgICBpZiAoIXByaXYtPmRyYXdzQ29udGVudCAm
JiAhcHJpdi0+c3VyZmFjZSkgewotICAgICAgICBpZiAoIXByaXYtPnRleHR1cmUpCisgICAgICAg
IGlmICghY2FudmFzKQogICAgICAgICAgICAgcmV0dXJuOwogCi0gICAgICAgIGdfc2lnbmFsX2hh
bmRsZXJzX2Rpc2Nvbm5lY3RfYnlfZnVuYyhwcml2LT50ZXh0dXJlLCByZWludGVycHJldF9jYXN0
PHZvaWQqPihncmFwaGljc0xheWVyQWN0b3JEcmF3KSwgbGF5ZXIpOwotICAgICAgICBjbHV0dGVy
X2FjdG9yX3VucGFyZW50KHByaXYtPnRleHR1cmUpOwotICAgICAgICBwcml2LT50ZXh0dXJlID0g
MDsKKyAgICAgICAgZ19zaWduYWxfaGFuZGxlcnNfZGlzY29ubmVjdF9ieV9mdW5jKGNhbnZhcywg
cmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oZ3JhcGhpY3NMYXllckFjdG9yRHJhdyksIGxheWVyKTsK
KyAgICAgICAgZ19vYmplY3RfdW5yZWYoY2FudmFzKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0K
IAogICAgIC8vIFdlIG5lZWQgYSB0ZXh0dXJlLCBidXQgYWxyZWFkeSBoYXZlIG9uZSEKLSAgICBp
ZiAocHJpdi0+dGV4dHVyZSkKKyAgICBpZiAoY2FudmFzKQogICAgICAgICByZXR1cm47CiAKICAg
ICAvLyBXZSBuZWVkIGEgdGV4dHVyZSwgc28gY3JlYXRlIGl0LgpAQCAtMzM0LDExICszMDgsMTMg
QEAgc3RhdGljIHZvaWQgZ3JhcGhpY3NMYXllckFjdG9yVXBkYXRlVGV4dHVyZShHcmFwaGljc0xh
eWVyQWN0b3IqIGxheWVyKQogICAgIGludCB3aWR0aCA9IGNlaWxmKGNsdXR0ZXJfYWN0b3JfZ2V0
X3dpZHRoKGFjdG9yKSk7CiAgICAgaW50IGhlaWdodCA9IGNlaWxmKGNsdXR0ZXJfYWN0b3JfZ2V0
X2hlaWdodChhY3RvcikpOwogCi0gICAgcHJpdi0+dGV4dHVyZSA9IGNsdXR0ZXJfY2Fpcm9fdGV4
dHVyZV9uZXcod2lkdGggPiAwID8gd2lkdGggOiAxLCBoZWlnaHQgPiAwID8gaGVpZ2h0IDogMSk7
Ci0gICAgY2x1dHRlcl9jYWlyb190ZXh0dXJlX3NldF9hdXRvX3Jlc2l6ZShDTFVUVEVSX0NBSVJP
X1RFWFRVUkUocHJpdi0+dGV4dHVyZSksIFRSVUUpOwotICAgIGNsdXR0ZXJfYWN0b3Jfc2V0X3Bh
cmVudChwcml2LT50ZXh0dXJlLCBhY3Rvcik7Ci0KLSAgICBnX3NpZ25hbF9jb25uZWN0KHByaXYt
PnRleHR1cmUsICJkcmF3IiwgR19DQUxMQkFDSyhncmFwaGljc0xheWVyQWN0b3JEcmF3KSwgbGF5
ZXIpOworICAgIGNhbnZhcyA9IGNsdXR0ZXJfY2FudmFzX25ldygpOworICAgIGNsdXR0ZXJfYWN0
b3Jfc2V0X2NvbnRlbnQoYWN0b3IsIGNhbnZhcyk7CisgICAgY2x1dHRlcl9jYW52YXNfc2V0X3Np
emUoQ0xVVFRFUl9DQU5WQVMoY2FudmFzKSwgd2lkdGggPiAwID8gd2lkdGggOiAxLCBoZWlnaHQg
PiAwID8gaGVpZ2h0IDogMSk7CisgICAgLy8gdGhlIGFjdG9yIG5vdyBvd25zIHRoZSBjYW52YXMK
KyAgICBnX29iamVjdF91bnJlZihjYW52YXMpOworICAgIAorICAgIGdfc2lnbmFsX2Nvbm5lY3Qo
Y2FudmFzLCAiZHJhdyIsIEdfQ0FMTEJBQ0soZ3JhcGhpY3NMYXllckFjdG9yRHJhdyksIGxheWVy
KTsKIH0KIAogLy8gRHJhdyBjb250ZW50IGludG8gdGhlIGxheWVyLgpAQCAtMzY1LDEyICszNDEs
NiBAQCBHcmFwaGljc0xheWVyQWN0b3IqIGdyYXBoaWNzTGF5ZXJBY3Rvck5ldyhHcmFwaGljc0xh
eWVyQ2x1dHRlcjo6TGF5ZXJUeXBlIHR5cGUpCiAKICAgICBwcml2LT5sYXllclR5cGUgPSB0eXBl
OwogCi0gICAgLy8gRm9yIHZpZGVvIGxheWVycyB3ZSBkb24ndCB3YW50IHRoZSBjYWlybyB0ZXh0
dXJlLCBidXQgYSByZWd1bGFyIG9uZS4KLSAgICBpZiAocHJpdi0+bGF5ZXJUeXBlID09IEdyYXBo
aWNzTGF5ZXJDbHV0dGVyOjpMYXllclR5cGVWaWRlb0xheWVyKSB7Ci0gICAgICAgIHByaXYtPnRl
eHR1cmUgPSBjbHV0dGVyX3RleHR1cmVfbmV3KCk7Ci0gICAgICAgIGNsdXR0ZXJfYWN0b3Jfc2V0
X3BhcmVudChwcml2LT50ZXh0dXJlLCBDTFVUVEVSX0FDVE9SKGxheWVyKSk7Ci0gICAgfQotCiAg
ICAgcmV0dXJuIGxheWVyOwogfQogCkBAIC0zOTcsMTMgKzM2Nyw4IEBAIHZvaWQgZ3JhcGhpY3NM
YXllckFjdG9yUmVtb3ZlQWxsKEdyYXBoaWNzTGF5ZXJBY3RvciogbGF5ZXIpCiAgICAgZ19yZXR1
cm5faWZfZmFpbChHUkFQSElDU19MQVlFUl9JU19BQ1RPUihsYXllcikpOwogCiAgICAgR0xpc3Qq
IGNoaWxkcmVuID0gY2x1dHRlcl9hY3Rvcl9nZXRfY2hpbGRyZW4oQ0xVVFRFUl9BQ1RPUihsYXll
cikpOwotICAgIGZvciAoOyBjaGlsZHJlbjsgY2hpbGRyZW4gPSBjaGlsZHJlbi0+bmV4dCkgewot
ICAgICAgICAvLyBXZSBvbmx5IHdhbnQgdG8gcmVtb3ZlIHN1YmxheWVycywgbm90IG91ciBvd24g
Y29tcG9zaXRlIGFjdG9ycy4KLSAgICAgICAgaWYgKGNoaWxkcmVuLT5kYXRhID09IGxheWVyLT5w
cml2LT50ZXh0dXJlKQotICAgICAgICAgICAgY29udGludWU7Ci0KKyAgICBmb3IgKDsgY2hpbGRy
ZW47IGNoaWxkcmVuID0gY2hpbGRyZW4tPm5leHQpCiAgICAgICAgIGNsdXR0ZXJfYWN0b3JfcmVt
b3ZlX2NoaWxkKENMVVRURVJfQUNUT1IobGF5ZXIpLCBDTFVUVEVSX0FDVE9SKGNoaWxkcmVuLT5k
YXRhKSk7Ci0gICAgfQogfQogCiBjYWlyb19zdXJmYWNlX3QqIGdyYXBoaWNzTGF5ZXJBY3Rvckdl
dFN1cmZhY2UoR3JhcGhpY3NMYXllckFjdG9yKiBsYXllcikKQEAgLTQyMiwxMyArMzg3LDEzIEBA
IHZvaWQgZ3JhcGhpY3NMYXllckFjdG9yU2V0U3VyZmFjZShHcmFwaGljc0xheWVyQWN0b3IqIGxh
eWVyLCBjYWlyb19zdXJmYWNlX3QqIHN1CiAKIHZvaWQgZ3JhcGhpY3NMYXllckFjdG9ySW52YWxp
ZGF0ZVJlY3RhbmdsZShHcmFwaGljc0xheWVyQWN0b3IqIGxheWVyLCBjb25zdCBGbG9hdFJlY3Qm
IGRpcnR5UmVjdCkKIHsKLSAgICBHcmFwaGljc0xheWVyQWN0b3JQcml2YXRlKiBwcml2ID0gbGF5
ZXItPnByaXY7Ci0KLSAgICBpZiAoIXByaXYtPnRleHR1cmUpCisgICAgQ2x1dHRlckNvbnRlbnQq
IGNhbnZhczsKKyAgICBjYW52YXMgPSBjbHV0dGVyX2FjdG9yX2dldF9jb250ZW50KENMVVRURVJf
QUNUT1IobGF5ZXIpKTsKKyAgICBpZiAoIWNhbnZhcykKICAgICAgICAgcmV0dXJuOwogCi0gICAg
Y2Fpcm9fcmVjdGFuZ2xlX2ludF90IHJlY3QoZW5jbG9zaW5nSW50UmVjdChkaXJ0eVJlY3QpKTsK
LSAgICBjbHV0dGVyX2NhaXJvX3RleHR1cmVfaW52YWxpZGF0ZV9yZWN0YW5nbGUoQ0xVVFRFUl9D
QUlST19URVhUVVJFKHByaXYtPnRleHR1cmUpLCAmcmVjdCk7CisgICAgLy8gRklYTUU6IE5lZWQg
dG8gaW52YWxpZGF0ZSBhIHNwZWNpZmljIGFyZWE/CisgICAgY2x1dHRlcl9jb250ZW50X2ludmFs
aWRhdGUoY2FudmFzKTsKIH0KIAogdm9pZCBncmFwaGljc0xheWVyQWN0b3JTZXRUcmFuc2Zvcm0o
R3JhcGhpY3NMYXllckFjdG9yKiBsYXllciwgY29uc3QgQ29nbE1hdHJpeCogbWF0cml4KSAKQEAg
LTUyMCw3ICs0ODUsNyBAQCB2b2lkIGdyYXBoaWNzTGF5ZXJBY3Rvckluc2VydFN1YmxheWVyKEdy
YXBoaWNzTGF5ZXJBY3RvciogbGF5ZXIsIENsdXR0ZXJBY3RvciogYwogCiAgICAgbGF5ZXItPmNo
aWxkcmVuID0gZ19saXN0X2luc2VydChsYXllci0+Y2hpbGRyZW4sIGNoaWxkTGF5ZXIsIGluZGV4
KTsKICAgICBBU1NFUlQoIWNsdXR0ZXJfYWN0b3JfZ2V0X3BhcmVudChjaGlsZExheWVyKSk7Ci0g
ICAgY2x1dHRlcl9hY3Rvcl9zZXRfcGFyZW50KGNoaWxkTGF5ZXIsIENMVVRURVJfQUNUT1IobGF5
ZXIpKTsKKyAgICBjbHV0dGVyX2FjdG9yX2FkZF9jaGlsZChDTFVUVEVSX0FDVE9SKGxheWVyKSwg
Y2hpbGRMYXllcik7CiAgICAgY2x1dHRlcl9hY3Rvcl9xdWV1ZV9yZWxheW91dChDTFVUVEVSX0FD
VE9SKGxheWVyKSk7CiAKICAgICBnX29iamVjdF91bnJlZihjaGlsZExheWVyKTsKQEAgLTUzNSw3
ICs1MDAsNyBAQCB2b2lkIGdyYXBoaWNzTGF5ZXJBY3RvclNldFN1YmxheWVycyhHcmFwaGljc0xh
eWVyQWN0b3IqIGxheWVyLCBHcmFwaGljc0xheWVyQWN0bwogCiAgICAgZm9yIChzaXplX3QgaSA9
IDA7IGkgPCBzdWJMYXllcnMuc2l6ZSgpOyArK2kpIHsKICAgICAgICAgQ2x1dHRlckFjdG9yKiBs
YXllckFjdG9yID0gQ0xVVFRFUl9BQ1RPUihzdWJMYXllcnNbaV0uZ2V0KCkpOwotICAgICAgICBj
bHV0dGVyX2NvbnRhaW5lcl9hZGRfYWN0b3IoQ0xVVFRFUl9DT05UQUlORVIobGF5ZXIpLCBsYXll
ckFjdG9yKTsKKyAgICAgICAgY2x1dHRlcl9hY3Rvcl9hZGRfY2hpbGQoQ0xVVFRFUl9BQ1RPUihs
YXllciksIGxheWVyQWN0b3IpOwogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9ndGsvV2ViQ29yZVN1cHBvcnQvQWNjZWxlcmF0ZWRDb21wb3NpdGluZ0NvbnRleHRDbHV0dGVy
LmNwcCBiL1NvdXJjZS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0FjY2VsZXJhdGVkQ29tcG9z
aXRpbmdDb250ZXh0Q2x1dHRlci5jcHAKaW5kZXggYjEwODA5MWQyYzIxZDg4NTRmZjA1NDgyMTVi
MzllODViMjRjOGQwMy4uMjhkZjIxZDk2ZGYyZGM2YTJiOWE3ZjM3ZTViYzY4OWFkMGY0YTdmMSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvQWNjZWxlcmF0ZWRD
b21wb3NpdGluZ0NvbnRleHRDbHV0dGVyLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJD
b3JlU3VwcG9ydC9BY2NlbGVyYXRlZENvbXBvc2l0aW5nQ29udGV4dENsdXR0ZXIuY3BwCkBAIC0x
MjMsOSArMTIzLDggQEAgdm9pZCBBY2NlbGVyYXRlZENvbXBvc2l0aW5nQ29udGV4dDo6c2V0Um9v
dENvbXBvc2l0aW5nTGF5ZXIoR3JhcGhpY3NMYXllciogZ3JhcGgKICAgICBpZiAoZ3JhcGhpY3NM
YXllcikgewogICAgICAgICBDbHV0dGVyQ29sb3Igc3RhZ2VDb2xvciA9IHsgMHhGRiwgMHhGRiwg
MHhGRiwgMHhGRiB9OwogICAgICAgICBDbHV0dGVyQWN0b3IqIHN0YWdlID0gZ3RrX2NsdXR0ZXJf
ZW1iZWRfZ2V0X3N0YWdlKEdUS19DTFVUVEVSX0VNQkVEKG1fcm9vdExheWVyRW1iZWRkZXIpKTsK
LSAgICAgICAgY2x1dHRlcl9zdGFnZV9zZXRfY29sb3IoQ0xVVFRFUl9TVEFHRShzdGFnZSksICZz
dGFnZUNvbG9yKTsKLSAgICAgICAgY2x1dHRlcl9jb250YWluZXJfYWRkX2FjdG9yKENMVVRURVJf
Q09OVEFJTkVSKHN0YWdlKSwgbV9yb290TGF5ZXItPnBsYXRmb3JtTGF5ZXIoKSk7Ci0gICAgICAg
IGNsdXR0ZXJfYWN0b3Jfc2hvd19hbGwoc3RhZ2UpOworICAgICAgICBjbHV0dGVyX2FjdG9yX3Nl
dF9iYWNrZ3JvdW5kX2NvbG9yKHN0YWdlLCAmc3RhZ2VDb2xvcik7CisgICAgICAgIGNsdXR0ZXJf
YWN0b3JfYWRkX2NoaWxkKHN0YWdlLCBtX3Jvb3RMYXllci0+cGxhdGZvcm1MYXllcigpKTsKICAg
ICB9CiAKICAgICBzY2hlZHVsZUxheWVyRmx1c2goKTsK
</data>
<flag name="review"
          id="198062"
          type_id="1"
          status="+"
          setter="gustavo"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>184846</attachid>
            <date>2013-01-25 17:49:16 -0800</date>
            <delta_ts>2013-01-25 18:12:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105736-20130125174409.patch</filename>
            <type>text/plain</type>
            <size>13100</size>
            <attacher name="Joone Hur">joone</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQwODM3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOWQ4MWNiMmMzYWY1NmVl
ODFiOGEzNjlhMmY2YjhjZjEyMmFkOTI0OC4uYmM2ZmE1ODFhOTQwOWMzZjEyOWY0YTBiMzY1MDUz
MGZhOGFmYWM2NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEzLTAxLTI0ICBKb29u
ZSBIdXIgIDxqb29uZS5odXJAaW50ZWwuY29tPgorCisgICAgICAgIFtHVEtdW0FDXSBVc2UgbmV3
IENsdXR0ZXIgQVBJcyBpbnN0ZWFkIG9mIGRlcHJlY2F0ZWQgQVBJcworICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA1NzM2CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgR3VzdGF2byBOb3JvbmhhIFNpbHZhLgorCisgICAgICAgIENsdXR0ZXJDYWlyb1RleHR1
cmUgY2xhc3MgYW5kIHNldmVyYWwgQVBJcyBoYXZlIGJlZW4gZGVwcmVjYXRlZCBzaW5jZSB2ZXJz
aW9uIDEuMTAsIAorICAgICAgICBzbyBDbHV0dGVyQ2FudmFzIGFuZCBDbHV0dGVyQ29udGVudCBz
aG91bGQgYmUgdXNlZCBpbnN0ZWFkIG9mIENsdXR0ZXJDYWlyb1RleHR1cmUuCisgICAgICAgIGNs
dXR0ZXJfYWN0b3JfYWRkX2NoaWxkIHNob3VsZCBiZSB1c2VkIGluc3RlYWQgb2YgY2x1dHRlcl9h
Y3Rvcl9zZXRfcGFyZW50IGFuZCBjbHV0dGVyX2NvbnRhaW5lcl9hZGRfY2x1dHRlci4KKworICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2NsdXR0ZXIvR3JhcGhpY3NMYXllckFjdG9yLmNwcDoK
KyAgICAgICAgKF9HcmFwaGljc0xheWVyQWN0b3JQcml2YXRlKToKKyAgICAgICAgKGdyYXBoaWNz
X2xheWVyX2FjdG9yX2luaXQpOgorICAgICAgICAoZ3JhcGhpY3NMYXllckFjdG9yRGlzcG9zZSk6
CisgICAgICAgIChncmFwaGljc0xheWVyQWN0b3JBbGxvY2F0ZSk6CisgICAgICAgIChncmFwaGlj
c0xheWVyQWN0b3JQYWludCk6CisgICAgICAgIChncmFwaGljc0xheWVyQWN0b3JEcmF3KToKKyAg
ICAgICAgKGdyYXBoaWNzTGF5ZXJBY3RvclVwZGF0ZVRleHR1cmUpOgorICAgICAgICAoZ3JhcGhp
Y3NMYXllckFjdG9yTmV3KToKKyAgICAgICAgKGdyYXBoaWNzTGF5ZXJBY3RvclJlbW92ZUFsbCk6
CisgICAgICAgIChncmFwaGljc0xheWVyQWN0b3JJbnZhbGlkYXRlUmVjdGFuZ2xlKToKKyAgICAg
ICAgKGdyYXBoaWNzTGF5ZXJBY3Rvckluc2VydFN1YmxheWVyKToKKyAgICAgICAgKGdyYXBoaWNz
TGF5ZXJBY3RvclNldFN1YmxheWVycyk6CisKIDIwMTMtMDEtMjUgIEd1c3Rhdm8gTm9yb25oYSBT
aWx2YSAgPGduc0Bnbm9tZS5vcmc+CiAKICAgICAgICAgW1NvdXBdIFN0cmVhbWxpbmUgY2FuY2Vs
bGF0aW9uIGFuZCBjbGllbnQgY2hlY2tzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2d0ay9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2d0ay9DaGFuZ2VMb2cKaW5kZXggODcyOTYyZTQwNTVk
N2JhZDYxODY0MGZhYjI4YWI4ZWIyOTZhMWQ0Mi4uN2VhZjkxYmYwNWE2N2VjMjE3ZjU3MmQ0N2Y3
NmVhMWQ1NGQxNDM0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9ndGsvQ2hhbmdlTG9nCisr
KyBiL1NvdXJjZS9XZWJLaXQvZ3RrL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEzLTAx
LTI0ICBKb29uZSBIdXIgIDxqb29uZS5odXJAaW50ZWwuY29tPgorCisgICAgICAgIFtHVEtdW0FD
XSBVc2UgbmV3IENsdXR0ZXIgQVBJcyBpbnN0ZWFkIG9mIGRlcHJlY2F0ZWQgQVBJcworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA1NzM2CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgR3VzdGF2byBOb3JvbmhhIFNpbHZhLgorCisgICAgICAgIFVzZSBjbHV0
dGVyX2FjdG9yX3NldF9iYWNrZ3JvdW5kX2NvbG9yIGluc3RlYWQgb2YgY2x1dHRlcl9zdGFnZV9z
ZXRfY29sb3IuCisgICAgICAgIFVzZSBjbHV0dGVyX2FjdG9yX2FkZF9jaGlsZCBpbnN0ZWFkIG9m
IGNsdXR0ZXJfY29udGFpbmVyX2FkZF9hY3Rvci4KKyAgICAgICAgUmVtb3ZlIGNsdXR0ZXJfYWN0
b3Jfc2hvd19hbGwgYmVjYXVzZSBBY3RvcnMgYXJlIHZpc2libGUgYnkgZGVmYXVsdC4KKworICAg
ICAgICAqIFdlYkNvcmVTdXBwb3J0L0FjY2VsZXJhdGVkQ29tcG9zaXRpbmdDb250ZXh0Q2x1dHRl
ci5jcHA6CisgICAgICAgIChXZWJLaXQ6OkFjY2VsZXJhdGVkQ29tcG9zaXRpbmdDb250ZXh0Ojpz
ZXRSb290Q29tcG9zaXRpbmdMYXllcik6CisKIDIwMTMtMDEtMjUgIE1hcnRpbiBSb2JpbnNvbiAg
PG1yb2JpbnNvbkBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHVEtdIExERkxBR1MgYXJlIGJlaW5n
IGluY29ycmVjdGx5IHVzZWQgYXQgY29tcGlsZSB0aW1lIChyYXRoZXIgdGhhbiBsaW5raW5nKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2x1dHRlci9HcmFw
aGljc0xheWVyQWN0b3IuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2x1
dHRlci9HcmFwaGljc0xheWVyQWN0b3IuY3BwCmluZGV4IDg5YTcxZDdjZDY0MGQ4ZjlmODlhN2Fl
YmE0YmZhNWQ4NTJhZDM5NzUuLmQ5ZDQ0MzI3N2VhZjdhYjEyNzc4NGFhMDI3ODI3OWZiNjBmOTZi
NjEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NsdXR0ZXIv
R3JhcGhpY3NMYXllckFjdG9yLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jbHV0dGVyL0dyYXBoaWNzTGF5ZXJBY3Rvci5jcHAKQEAgLTMxLDcgKzMxLDcgQEAKIAog
dXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7CiAKLUdfREVGSU5FX1RZUEUoR3JhcGhpY3NMYXllckFj
dG9yLCBncmFwaGljc19sYXllcl9hY3RvciwgQ0xVVFRFUl9UWVBFX1JFQ1RBTkdMRSkKK0dfREVG
SU5FX1RZUEUoR3JhcGhpY3NMYXllckFjdG9yLCBncmFwaGljc19sYXllcl9hY3RvciwgQ0xVVFRF
Ul9UWVBFX0FDVE9SKQogCiAjZGVmaW5lIEdSQVBISUNTX0xBWUVSX0FDVE9SX0dFVF9QUklWQVRF
KG9iaikgKEdfVFlQRV9JTlNUQU5DRV9HRVRfUFJJVkFURSgob2JqKSwgR1JBUEhJQ1NfTEFZRVJf
VFlQRV9BQ1RPUiwgR3JhcGhpY3NMYXllckFjdG9yUHJpdmF0ZSkpCiAKQEAgLTM5LDcgKzM5LDYg
QEAgc3RydWN0IF9HcmFwaGljc0xheWVyQWN0b3JQcml2YXRlIHsKICAgICBHcmFwaGljc0xheWVy
Q2x1dHRlcjo6TGF5ZXJUeXBlIGxheWVyVHlwZTsKICAgICBnYm9vbGVhbiBhbGxvY2F0aW5nOwog
Ci0gICAgQ2x1dHRlckFjdG9yKiB0ZXh0dXJlOwogICAgIFJlZlB0cjxjYWlyb19zdXJmYWNlX3Q+
IHN1cmZhY2U7CiAgICAgQ29nbE1hdHJpeCogbWF0cml4OwogCkBAIC03MywxMSArNzIsMTAgQEAg
c3RhdGljIHZvaWQgZ3JhcGhpY3NMYXllckFjdG9yRGlzcG9zZShHT2JqZWN0Kik7CiBzdGF0aWMg
dm9pZCBncmFwaGljc0xheWVyQWN0b3JHZXRQcm9wZXJ0eShHT2JqZWN0KiwgZ3VpbnQgcHJvcElE
LCBHVmFsdWUqLCBHUGFyYW1TcGVjKik7CiBzdGF0aWMgdm9pZCBncmFwaGljc0xheWVyQWN0b3JT
ZXRQcm9wZXJ0eShHT2JqZWN0KiwgZ3VpbnQgcHJvcElELCBjb25zdCBHVmFsdWUqLCBHUGFyYW1T
cGVjKik7CiBzdGF0aWMgdm9pZCBncmFwaGljc0xheWVyQWN0b3JQYWludChDbHV0dGVyQWN0b3Iq
KTsKLXN0YXRpYyB2b2lkIGdyYXBoaWNzTGF5ZXJBY3RvclBpY2soQ2x1dHRlckFjdG9yKiwgY29u
c3QgQ2x1dHRlckNvbG9yKik7CiAKIHN0YXRpYyB2b2lkIGdyYXBoaWNzTGF5ZXJBY3RvckFkZGVk
KENsdXR0ZXJDb250YWluZXIqLCBDbHV0dGVyQWN0b3IqLCBncG9pbnRlciBkYXRhKTsKIHN0YXRp
YyB2b2lkIGdyYXBoaWNzTGF5ZXJBY3RvclJlbW92ZWQoQ2x1dHRlckNvbnRhaW5lciosIENsdXR0
ZXJBY3RvciosIGdwb2ludGVyIGRhdGEpOwotc3RhdGljIGdib29sZWFuIGdyYXBoaWNzTGF5ZXJB
Y3RvckRyYXcoQ2x1dHRlckNhaXJvVGV4dHVyZSosIGNhaXJvX3QqLCBHcmFwaGljc0xheWVyQWN0
b3IqKTsKK3N0YXRpYyBnYm9vbGVhbiBncmFwaGljc0xheWVyQWN0b3JEcmF3KENsdXR0ZXJDYW52
YXMqLCBjYWlyb190KiwgZ2ludCB3aWR0aCwgZ2ludCBoZWlnaHQsIEdyYXBoaWNzTGF5ZXJBY3Rv
ciopOwogc3RhdGljIHZvaWQgZ3JhcGhpY3NMYXllckFjdG9yVXBkYXRlVGV4dHVyZShHcmFwaGlj
c0xheWVyQWN0b3IqKTsKIHN0YXRpYyB2b2lkIGRyYXdMYXllckNvbnRlbnRzKENsdXR0ZXJBY3Rv
ciosIEdyYXBoaWNzQ29udGV4dCYpOwogCkBAIC0xMDQsNyArMTAyLDcgQEAgc3RhdGljIHZvaWQg
Z3JhcGhpY3NfbGF5ZXJfYWN0b3JfY2xhc3NfaW5pdChHcmFwaGljc0xheWVyQWN0b3JDbGFzcyog
a2xhc3MpCiAKIHN0YXRpYyB2b2lkIGdyYXBoaWNzX2xheWVyX2FjdG9yX2luaXQoR3JhcGhpY3NM
YXllckFjdG9yKiBzZWxmKQogewotICAgIEdyYXBoaWNzTGF5ZXJBY3RvclByaXZhdGUqIHByaXYg
PSBzZWxmLT5wcml2ID0gR1JBUEhJQ1NfTEFZRVJfQUNUT1JfR0VUX1BSSVZBVEUoc2VsZik7Cisg
ICAgc2VsZi0+cHJpdiA9IEdSQVBISUNTX0xBWUVSX0FDVE9SX0dFVF9QUklWQVRFKHNlbGYpOwog
CiAgICAgY2x1dHRlcl9hY3Rvcl9zZXRfcmVhY3RpdmUoQ0xVVFRFUl9BQ1RPUihzZWxmKSwgRkFM
U0UpOwogCkBAIC0xNTMsMTEgKzE1MSw2IEBAIHN0YXRpYyB2b2lkIGdyYXBoaWNzTGF5ZXJBY3Rv
ckRpc3Bvc2UoR09iamVjdCogb2JqZWN0KQogICAgIEdyYXBoaWNzTGF5ZXJBY3RvciogbGF5ZXIg
PSBHUkFQSElDU19MQVlFUl9BQ1RPUihvYmplY3QpOwogICAgIEdyYXBoaWNzTGF5ZXJBY3RvclBy
aXZhdGUqIHByaXYgPSBsYXllci0+cHJpdjsKIAotICAgIGlmIChwcml2LT50ZXh0dXJlKSB7Ci0g
ICAgICAgIGNsdXR0ZXJfYWN0b3JfZGVzdHJveShwcml2LT50ZXh0dXJlKTsKLSAgICAgICAgcHJp
di0+dGV4dHVyZSA9IDA7Ci0gICAgfQotCiAgICAgcHJpdi0+c3VyZmFjZS5jbGVhcigpOwogCiAg
ICAgaWYgKHByaXYtPm1hdHJpeCkKQEAgLTE3OCwyMCArMTcxLDkgQEAgc3RhdGljIHZvaWQgZ3Jh
cGhpY3NMYXllckFjdG9yQWxsb2NhdGUoQ2x1dHRlckFjdG9yKiBzZWxmLCBjb25zdCBDbHV0dGVy
QWN0b3JCb3gKIAogICAgIENMVVRURVJfQUNUT1JfQ0xBU1MoZ3JhcGhpY3NfbGF5ZXJfYWN0b3Jf
cGFyZW50X2NsYXNzKS0+YWxsb2NhdGUoc2VsZiwgYm94LCBmbGFncyk7CiAKLSAgICBpZiAocHJp
di0+dGV4dHVyZSkgewotICAgICAgICAvLyBUaGUgdGV4dHVyZSBvY2N1cGllcyB0aGUgd2hvbGUg
YXJlYSwgYnV0IGlzIHBvc2l0aW9uZWQgYXQgMCwwCi0gICAgICAgIC8vIHJlbGF0aXZlIHRvIHRo
ZSBsYXllciBhY3Rvci4KLSAgICAgICAgQ2x1dHRlckFjdG9yQm94IHRleHR1cmVCb3ggPSB7IDAu
MCwgMC4wLCBib3gtPngyIC0gYm94LT54MSwgYm94LT55MiAtIGJveC0+eTEgfTsKLQotICAgICAg
ICAvLyBwcm90ZWN0IGFnYWluc3QgMHgwCi0gICAgICAgIGlmICghdGV4dHVyZUJveC54MikKLSAg
ICAgICAgICAgIHRleHR1cmVCb3gueDIgPSAxOwotCi0gICAgICAgIGlmICghdGV4dHVyZUJveC55
MikKLSAgICAgICAgICAgIHRleHR1cmVCb3gueTIgPSAxOwotCi0gICAgICAgIGNsdXR0ZXJfYWN0
b3JfYWxsb2NhdGUocHJpdi0+dGV4dHVyZSwgJnRleHR1cmVCb3gsIGZsYWdzKTsKLSAgICB9Cisg
ICAgQ2x1dHRlckNvbnRlbnQqIGNhbnZhcyA9IGNsdXR0ZXJfYWN0b3JfZ2V0X2NvbnRlbnQoc2Vs
Zik7CisgICAgaWYgKGNhbnZhcykKKyAgICAgICAgY2x1dHRlcl9jYW52YXNfc2V0X3NpemUoQ0xV
VFRFUl9DQU5WQVMoY2FudmFzKSwgY2x1dHRlcl9hY3Rvcl9nZXRfd2lkdGgoc2VsZiksIGNsdXR0
ZXJfYWN0b3JfZ2V0X2hlaWdodChzZWxmKSk7CiAKICAgICAvLyBGSVhNRTogbWF5YmUgd2UgY2Fu
IGNhY2hlIGNoaWxkcmVuIGFsbG9jYXRpb24gYW5kIG5vdCBjYWxsCiAgICAgLy8gYWxsb2NhdGUg
b24gdGhlbSB0aGlzIG9mdGVuPwpAQCAtMjU0LDEyICsyMzYsNiBAQCBzdGF0aWMgdm9pZCBncmFw
aGljc0xheWVyQWN0b3JBcHBseVRyYW5zZm9ybShDbHV0dGVyQWN0b3IqIGFjdG9yLCBDb2dsTWF0
cml4KiBtYQogc3RhdGljIHZvaWQgZ3JhcGhpY3NMYXllckFjdG9yUGFpbnQoQ2x1dHRlckFjdG9y
KiBhY3RvcikKIHsKICAgICBHcmFwaGljc0xheWVyQWN0b3IqIGdyYXBoaWNzTGF5ZXIgPSBHUkFQ
SElDU19MQVlFUl9BQ1RPUihhY3Rvcik7Ci0gICAgR3JhcGhpY3NMYXllckFjdG9yUHJpdmF0ZSog
cHJpdiA9IEdSQVBISUNTX0xBWUVSX0FDVE9SKGFjdG9yKS0+cHJpdjsKLQotICAgIC8vIFBhaW50
IHRoZSB0ZXh0dXJlIGluIGNhc2Ugd2UgaGF2ZSBhIGJvcmRlci4gVGhpcyB3aWxsIGJlIHRoZSBj
YXNlIHdoZW4gZGVidWdnaW5nIGJvcmRlcnMKLSAgICAvLyBhcmUgdHVybmVkIG9uIHRoYXQgd2Ug
d2FudCB0byBzZWUuCi0gICAgaWYgKHByaXYtPnRleHR1cmUpCi0gICAgICAgIGNsdXR0ZXJfYWN0
b3JfcGFpbnQocHJpdi0+dGV4dHVyZSk7CiAKICAgICBHTGlzdCogbGlzdDsKICAgICBmb3IgKGxp
c3QgPSBncmFwaGljc0xheWVyLT5jaGlsZHJlbjsgbGlzdDsgbGlzdCA9IGxpc3QtPm5leHQpIHsK
QEAgLTI2OCwxOSArMjQ0LDE2IEBAIHN0YXRpYyB2b2lkIGdyYXBoaWNzTGF5ZXJBY3RvclBhaW50
KENsdXR0ZXJBY3RvciogYWN0b3IpCiAgICAgfQogfQogCi1zdGF0aWMgZ2Jvb2xlYW4gZ3JhcGhp
Y3NMYXllckFjdG9yRHJhdyhDbHV0dGVyQ2Fpcm9UZXh0dXJlKiB0ZXh0dXJlLCBjYWlyb190KiBj
ciwgR3JhcGhpY3NMYXllckFjdG9yKiBsYXllcikKK3N0YXRpYyBnYm9vbGVhbiBncmFwaGljc0xh
eWVyQWN0b3JEcmF3KENsdXR0ZXJDYW52YXMqIHRleHR1cmUsIGNhaXJvX3QqIGNyLCBnaW50IHdp
ZHRoLCBnaW50IGhlaWdodCwgR3JhcGhpY3NMYXllckFjdG9yKiBsYXllcikKIHsKICAgICBDbHV0
dGVyQWN0b3IqIGFjdG9yID0gQ0xVVFRFUl9BQ1RPUihsYXllcik7Ci0gICAgZmxvYXQgd2lkdGgg
PSBjbHV0dGVyX2FjdG9yX2dldF93aWR0aChhY3Rvcik7Ci0gICAgZmxvYXQgaGVpZ2h0ID0gY2x1
dHRlcl9hY3Rvcl9nZXRfaGVpZ2h0KGFjdG9yKTsKIAogICAgIGlmICghd2lkdGggfHwgIWhlaWdo
dCkKICAgICAgICAgcmV0dXJuIEZBTFNFOwogCiAgICAgR3JhcGhpY3NMYXllckFjdG9yUHJpdmF0
ZSogcHJpdiA9IGxheWVyLT5wcml2OwogICAgIEdyYXBoaWNzQ29udGV4dCBjb250ZXh0KGNyKTsK
LQotICAgIGNsdXR0ZXJfY2Fpcm9fdGV4dHVyZV9jbGVhcih0ZXh0dXJlKTsKKyAgICBjb250ZXh0
LmNsZWFyUmVjdChGbG9hdFJlY3QoMCwgMCwgd2lkdGgsIGhlaWdodCkpOwogCiAgICAgaWYgKHBy
aXYtPnN1cmZhY2UpIHsKICAgICAgICAgZ2ludCBzdXJmYWNlV2lkdGggPSBjYWlyb19pbWFnZV9z
dXJmYWNlX2dldF93aWR0aChwcml2LT5zdXJmYWNlLmdldCgpKTsKQEAgLTMxMywyMCArMjg2LDIx
IEBAIHN0YXRpYyB2b2lkIGdyYXBoaWNzTGF5ZXJBY3RvclVwZGF0ZVRleHR1cmUoR3JhcGhpY3NM
YXllckFjdG9yKiBsYXllcikKIHsKICAgICBHcmFwaGljc0xheWVyQWN0b3JQcml2YXRlKiBwcml2
ID0gbGF5ZXItPnByaXY7CiAgICAgQVNTRVJUKHByaXYtPmxheWVyVHlwZSAhPSBHcmFwaGljc0xh
eWVyQ2x1dHRlcjo6TGF5ZXJUeXBlVmlkZW9MYXllcik7CisgICAgQ2x1dHRlckNvbnRlbnQqIGNh
bnZhczsKKyAgICBjYW52YXMgPSBjbHV0dGVyX2FjdG9yX2dldF9jb250ZW50KENMVVRURVJfQUNU
T1IobGF5ZXIpKTsKIAogICAgIC8vIE5vdGhpbmcgbmVlZHMgYSB0ZXh0dXJlLCByZW1vdmUgdGhl
IG9uZSB3ZSBoYXZlLCBpZiBhbnkuCiAgICAgaWYgKCFwcml2LT5kcmF3c0NvbnRlbnQgJiYgIXBy
aXYtPnN1cmZhY2UpIHsKLSAgICAgICAgaWYgKCFwcml2LT50ZXh0dXJlKQorICAgICAgICBpZiAo
IWNhbnZhcykKICAgICAgICAgICAgIHJldHVybjsKIAotICAgICAgICBnX3NpZ25hbF9oYW5kbGVy
c19kaXNjb25uZWN0X2J5X2Z1bmMocHJpdi0+dGV4dHVyZSwgcmVpbnRlcnByZXRfY2FzdDx2b2lk
Kj4oZ3JhcGhpY3NMYXllckFjdG9yRHJhdyksIGxheWVyKTsKLSAgICAgICAgY2x1dHRlcl9hY3Rv
cl91bnBhcmVudChwcml2LT50ZXh0dXJlKTsKLSAgICAgICAgcHJpdi0+dGV4dHVyZSA9IDA7Cisg
ICAgICAgIGdfc2lnbmFsX2hhbmRsZXJzX2Rpc2Nvbm5lY3RfYnlfZnVuYyhjYW52YXMsIHJlaW50
ZXJwcmV0X2Nhc3Q8dm9pZCo+KGdyYXBoaWNzTGF5ZXJBY3RvckRyYXcpLCBsYXllcik7CisgICAg
ICAgIGdfb2JqZWN0X3VucmVmKGNhbnZhcyk7CiAgICAgICAgIHJldHVybjsKICAgICB9CiAKICAg
ICAvLyBXZSBuZWVkIGEgdGV4dHVyZSwgYnV0IGFscmVhZHkgaGF2ZSBvbmUhCi0gICAgaWYgKHBy
aXYtPnRleHR1cmUpCisgICAgaWYgKGNhbnZhcykKICAgICAgICAgcmV0dXJuOwogCiAgICAgLy8g
V2UgbmVlZCBhIHRleHR1cmUsIHNvIGNyZWF0ZSBpdC4KQEAgLTMzNCwxMSArMzA4LDEyIEBAIHN0
YXRpYyB2b2lkIGdyYXBoaWNzTGF5ZXJBY3RvclVwZGF0ZVRleHR1cmUoR3JhcGhpY3NMYXllckFj
dG9yKiBsYXllcikKICAgICBpbnQgd2lkdGggPSBjZWlsZihjbHV0dGVyX2FjdG9yX2dldF93aWR0
aChhY3RvcikpOwogICAgIGludCBoZWlnaHQgPSBjZWlsZihjbHV0dGVyX2FjdG9yX2dldF9oZWln
aHQoYWN0b3IpKTsKIAotICAgIHByaXYtPnRleHR1cmUgPSBjbHV0dGVyX2NhaXJvX3RleHR1cmVf
bmV3KHdpZHRoID4gMCA/IHdpZHRoIDogMSwgaGVpZ2h0ID4gMCA/IGhlaWdodCA6IDEpOwotICAg
IGNsdXR0ZXJfY2Fpcm9fdGV4dHVyZV9zZXRfYXV0b19yZXNpemUoQ0xVVFRFUl9DQUlST19URVhU
VVJFKHByaXYtPnRleHR1cmUpLCBUUlVFKTsKLSAgICBjbHV0dGVyX2FjdG9yX3NldF9wYXJlbnQo
cHJpdi0+dGV4dHVyZSwgYWN0b3IpOwotCi0gICAgZ19zaWduYWxfY29ubmVjdChwcml2LT50ZXh0
dXJlLCAiZHJhdyIsIEdfQ0FMTEJBQ0soZ3JhcGhpY3NMYXllckFjdG9yRHJhdyksIGxheWVyKTsK
KyAgICBjYW52YXMgPSBjbHV0dGVyX2NhbnZhc19uZXcoKTsKKyAgICBjbHV0dGVyX2FjdG9yX3Nl
dF9jb250ZW50KGFjdG9yLCBjYW52YXMpOworICAgIGNsdXR0ZXJfY2FudmFzX3NldF9zaXplKENM
VVRURVJfQ0FOVkFTKGNhbnZhcyksIHdpZHRoID4gMCA/IHdpZHRoIDogMSwgaGVpZ2h0ID4gMCA/
IGhlaWdodCA6IDEpOworICAgIGdfb2JqZWN0X3VucmVmKGNhbnZhcyk7CisgICAgCisgICAgZ19z
aWduYWxfY29ubmVjdChjYW52YXMsICJkcmF3IiwgR19DQUxMQkFDSyhncmFwaGljc0xheWVyQWN0
b3JEcmF3KSwgbGF5ZXIpOwogfQogCiAvLyBEcmF3IGNvbnRlbnQgaW50byB0aGUgbGF5ZXIuCkBA
IC0zNjUsMTIgKzM0MCw2IEBAIEdyYXBoaWNzTGF5ZXJBY3RvciogZ3JhcGhpY3NMYXllckFjdG9y
TmV3KEdyYXBoaWNzTGF5ZXJDbHV0dGVyOjpMYXllclR5cGUgdHlwZSkKIAogICAgIHByaXYtPmxh
eWVyVHlwZSA9IHR5cGU7CiAKLSAgICAvLyBGb3IgdmlkZW8gbGF5ZXJzIHdlIGRvbid0IHdhbnQg
dGhlIGNhaXJvIHRleHR1cmUsIGJ1dCBhIHJlZ3VsYXIgb25lLgotICAgIGlmIChwcml2LT5sYXll
clR5cGUgPT0gR3JhcGhpY3NMYXllckNsdXR0ZXI6OkxheWVyVHlwZVZpZGVvTGF5ZXIpIHsKLSAg
ICAgICAgcHJpdi0+dGV4dHVyZSA9IGNsdXR0ZXJfdGV4dHVyZV9uZXcoKTsKLSAgICAgICAgY2x1
dHRlcl9hY3Rvcl9zZXRfcGFyZW50KHByaXYtPnRleHR1cmUsIENMVVRURVJfQUNUT1IobGF5ZXIp
KTsKLSAgICB9Ci0KICAgICByZXR1cm4gbGF5ZXI7CiB9CiAKQEAgLTM5NywxMyArMzY2LDggQEAg
dm9pZCBncmFwaGljc0xheWVyQWN0b3JSZW1vdmVBbGwoR3JhcGhpY3NMYXllckFjdG9yKiBsYXll
cikKICAgICBnX3JldHVybl9pZl9mYWlsKEdSQVBISUNTX0xBWUVSX0lTX0FDVE9SKGxheWVyKSk7
CiAKICAgICBHTGlzdCogY2hpbGRyZW4gPSBjbHV0dGVyX2FjdG9yX2dldF9jaGlsZHJlbihDTFVU
VEVSX0FDVE9SKGxheWVyKSk7Ci0gICAgZm9yICg7IGNoaWxkcmVuOyBjaGlsZHJlbiA9IGNoaWxk
cmVuLT5uZXh0KSB7Ci0gICAgICAgIC8vIFdlIG9ubHkgd2FudCB0byByZW1vdmUgc3VibGF5ZXJz
LCBub3Qgb3VyIG93biBjb21wb3NpdGUgYWN0b3JzLgotICAgICAgICBpZiAoY2hpbGRyZW4tPmRh
dGEgPT0gbGF5ZXItPnByaXYtPnRleHR1cmUpCi0gICAgICAgICAgICBjb250aW51ZTsKLQorICAg
IGZvciAoOyBjaGlsZHJlbjsgY2hpbGRyZW4gPSBjaGlsZHJlbi0+bmV4dCkKICAgICAgICAgY2x1
dHRlcl9hY3Rvcl9yZW1vdmVfY2hpbGQoQ0xVVFRFUl9BQ1RPUihsYXllciksIENMVVRURVJfQUNU
T1IoY2hpbGRyZW4tPmRhdGEpKTsKLSAgICB9CiB9CiAKIGNhaXJvX3N1cmZhY2VfdCogZ3JhcGhp
Y3NMYXllckFjdG9yR2V0U3VyZmFjZShHcmFwaGljc0xheWVyQWN0b3IqIGxheWVyKQpAQCAtNDIy
LDEzICszODYsMTMgQEAgdm9pZCBncmFwaGljc0xheWVyQWN0b3JTZXRTdXJmYWNlKEdyYXBoaWNz
TGF5ZXJBY3RvciogbGF5ZXIsIGNhaXJvX3N1cmZhY2VfdCogc3UKIAogdm9pZCBncmFwaGljc0xh
eWVyQWN0b3JJbnZhbGlkYXRlUmVjdGFuZ2xlKEdyYXBoaWNzTGF5ZXJBY3RvciogbGF5ZXIsIGNv
bnN0IEZsb2F0UmVjdCYgZGlydHlSZWN0KQogewotICAgIEdyYXBoaWNzTGF5ZXJBY3RvclByaXZh
dGUqIHByaXYgPSBsYXllci0+cHJpdjsKLQotICAgIGlmICghcHJpdi0+dGV4dHVyZSkKKyAgICBD
bHV0dGVyQ29udGVudCogY2FudmFzOworICAgIGNhbnZhcyA9IGNsdXR0ZXJfYWN0b3JfZ2V0X2Nv
bnRlbnQoQ0xVVFRFUl9BQ1RPUihsYXllcikpOworICAgIGlmICghY2FudmFzKQogICAgICAgICBy
ZXR1cm47CiAKLSAgICBjYWlyb19yZWN0YW5nbGVfaW50X3QgcmVjdChlbmNsb3NpbmdJbnRSZWN0
KGRpcnR5UmVjdCkpOwotICAgIGNsdXR0ZXJfY2Fpcm9fdGV4dHVyZV9pbnZhbGlkYXRlX3JlY3Rh
bmdsZShDTFVUVEVSX0NBSVJPX1RFWFRVUkUocHJpdi0+dGV4dHVyZSksICZyZWN0KTsKKyAgICAv
LyBGSVhNRTogTmVlZCB0byBpbnZhbGlkYXRlIGEgc3BlY2lmaWMgYXJlYT8KKyAgICBjbHV0dGVy
X2NvbnRlbnRfaW52YWxpZGF0ZShjYW52YXMpOwogfQogCiB2b2lkIGdyYXBoaWNzTGF5ZXJBY3Rv
clNldFRyYW5zZm9ybShHcmFwaGljc0xheWVyQWN0b3IqIGxheWVyLCBjb25zdCBDb2dsTWF0cml4
KiBtYXRyaXgpIApAQCAtNTIwLDcgKzQ4NCw3IEBAIHZvaWQgZ3JhcGhpY3NMYXllckFjdG9ySW5z
ZXJ0U3VibGF5ZXIoR3JhcGhpY3NMYXllckFjdG9yKiBsYXllciwgQ2x1dHRlckFjdG9yKiBjCiAK
ICAgICBsYXllci0+Y2hpbGRyZW4gPSBnX2xpc3RfaW5zZXJ0KGxheWVyLT5jaGlsZHJlbiwgY2hp
bGRMYXllciwgaW5kZXgpOwogICAgIEFTU0VSVCghY2x1dHRlcl9hY3Rvcl9nZXRfcGFyZW50KGNo
aWxkTGF5ZXIpKTsKLSAgICBjbHV0dGVyX2FjdG9yX3NldF9wYXJlbnQoY2hpbGRMYXllciwgQ0xV
VFRFUl9BQ1RPUihsYXllcikpOworICAgIGNsdXR0ZXJfYWN0b3JfYWRkX2NoaWxkKENMVVRURVJf
QUNUT1IobGF5ZXIpLCBjaGlsZExheWVyKTsKICAgICBjbHV0dGVyX2FjdG9yX3F1ZXVlX3JlbGF5
b3V0KENMVVRURVJfQUNUT1IobGF5ZXIpKTsKIAogICAgIGdfb2JqZWN0X3VucmVmKGNoaWxkTGF5
ZXIpOwpAQCAtNTM1LDcgKzQ5OSw3IEBAIHZvaWQgZ3JhcGhpY3NMYXllckFjdG9yU2V0U3VibGF5
ZXJzKEdyYXBoaWNzTGF5ZXJBY3RvciogbGF5ZXIsIEdyYXBoaWNzTGF5ZXJBY3RvCiAKICAgICBm
b3IgKHNpemVfdCBpID0gMDsgaSA8IHN1YkxheWVycy5zaXplKCk7ICsraSkgewogICAgICAgICBD
bHV0dGVyQWN0b3IqIGxheWVyQWN0b3IgPSBDTFVUVEVSX0FDVE9SKHN1YkxheWVyc1tpXS5nZXQo
KSk7Ci0gICAgICAgIGNsdXR0ZXJfY29udGFpbmVyX2FkZF9hY3RvcihDTFVUVEVSX0NPTlRBSU5F
UihsYXllciksIGxheWVyQWN0b3IpOworICAgICAgICBjbHV0dGVyX2FjdG9yX2FkZF9jaGlsZChD
TFVUVEVSX0FDVE9SKGxheWVyKSwgbGF5ZXJBY3Rvcik7CiAgICAgfQogfQogCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9BY2NlbGVyYXRlZENvbXBvc2l0aW5n
Q29udGV4dENsdXR0ZXIuY3BwIGIvU291cmNlL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvQWNj
ZWxlcmF0ZWRDb21wb3NpdGluZ0NvbnRleHRDbHV0dGVyLmNwcAppbmRleCBiMTA4MDkxZDJjMjFk
ODg1NGZmMDU0ODIxNWIzOWU4NWIyNGM4ZDAzLi4yOGRmMjFkOTZkZjJkYzZhMmI5YTdmMzdlNWJj
Njg5YWQwZjRhN2YxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9y
dC9BY2NlbGVyYXRlZENvbXBvc2l0aW5nQ29udGV4dENsdXR0ZXIuY3BwCisrKyBiL1NvdXJjZS9X
ZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0FjY2VsZXJhdGVkQ29tcG9zaXRpbmdDb250ZXh0Q2x1
dHRlci5jcHAKQEAgLTEyMyw5ICsxMjMsOCBAQCB2b2lkIEFjY2VsZXJhdGVkQ29tcG9zaXRpbmdD
b250ZXh0OjpzZXRSb290Q29tcG9zaXRpbmdMYXllcihHcmFwaGljc0xheWVyKiBncmFwaAogICAg
IGlmIChncmFwaGljc0xheWVyKSB7CiAgICAgICAgIENsdXR0ZXJDb2xvciBzdGFnZUNvbG9yID0g
eyAweEZGLCAweEZGLCAweEZGLCAweEZGIH07CiAgICAgICAgIENsdXR0ZXJBY3Rvciogc3RhZ2Ug
PSBndGtfY2x1dHRlcl9lbWJlZF9nZXRfc3RhZ2UoR1RLX0NMVVRURVJfRU1CRUQobV9yb290TGF5
ZXJFbWJlZGRlcikpOwotICAgICAgICBjbHV0dGVyX3N0YWdlX3NldF9jb2xvcihDTFVUVEVSX1NU
QUdFKHN0YWdlKSwgJnN0YWdlQ29sb3IpOwotICAgICAgICBjbHV0dGVyX2NvbnRhaW5lcl9hZGRf
YWN0b3IoQ0xVVFRFUl9DT05UQUlORVIoc3RhZ2UpLCBtX3Jvb3RMYXllci0+cGxhdGZvcm1MYXll
cigpKTsKLSAgICAgICAgY2x1dHRlcl9hY3Rvcl9zaG93X2FsbChzdGFnZSk7CisgICAgICAgIGNs
dXR0ZXJfYWN0b3Jfc2V0X2JhY2tncm91bmRfY29sb3Ioc3RhZ2UsICZzdGFnZUNvbG9yKTsKKyAg
ICAgICAgY2x1dHRlcl9hY3Rvcl9hZGRfY2hpbGQoc3RhZ2UsIG1fcm9vdExheWVyLT5wbGF0Zm9y
bUxheWVyKCkpOwogICAgIH0KIAogICAgIHNjaGVkdWxlTGF5ZXJGbHVzaCgpOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>