<?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>84373</bug_id>
          
          <creation_ts>2012-04-19 12:58:13 -0700</creation_ts>
          <short_desc>[chromium] Some filters require inflating damage rect in CCDamageTracker</short_desc>
          <delta_ts>2012-04-20 10:57:51 -0700</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>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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Dana Jansens">danakj</reporter>
          <assigned_to name="Dana Jansens">danakj</assigned_to>
          <cc>backer</cc>
    
    <cc>cc-bugs</cc>
    
    <cc>enne</cc>
    
    <cc>jamesr</cc>
    
    <cc>piman</cc>
    
    <cc>shawnsingh</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>605805</commentid>
    <comment_count>0</comment_count>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-04-19 12:58:13 -0700</bug_when>
    <thetext>[chromium] Blur should move damage around in the blurred layer</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>605808</commentid>
    <comment_count>1</comment_count>
      <attachid>137956</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-04-19 13:03:11 -0700</bug_when>
    <thetext>Created attachment 137956
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606305</commentid>
    <comment_count>2</comment_count>
      <attachid>137956</attachid>
    <who name="Shawn Singh">shawnsingh</who>
    <bug_when>2012-04-19 19:41:39 -0700</bug_when>
    <thetext>Comment on attachment 137956
Patch


Just a few trivial nits on my part.

Otherwise it LGTM.


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

&gt; Source/WebCore/ChangeLog:3
&gt; +        [chromium] Blur should move damage around in the blurred layer

Could we re-title this to &quot;Filters may need to inflate damage rect in CCDamageTracker&quot;

&gt; Source/WebCore/ChangeLog:9
&gt; +        and their damage should be moved along with them.

perhaps  s/moved along with them/expanded to include total blurred region  ??

&gt; Source/WebCore/platform/graphics/chromium/cc/CCDamageTracker.cpp:147
&gt; +        // Filters can spread damage around in the surface.
&gt; +        if (filters.hasFilterThatMovesPixels()) {
&gt; +            int top, right, bottom, left;
&gt; +            filters.getOutsets(top, right, bottom, left);
&gt; +            m_currentDamageRect.move(-left, -top);
&gt; +            m_currentDamageRect.expand(left + right, top + bottom);
&gt; +        }

Can we make this into a helper function like  &quot;expandDamageRectIfNeeded()&quot;

&gt; Source/WebKit/chromium/tests/CCDamageTrackerTest.cpp:336
&gt; +    // Damage position on the surface should be: position of updateRect (10, 11) relative to the child (100, 100), but blurred out by the blur outsets.

s/blurred out/expanded</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606352</commentid>
    <comment_count>3</comment_count>
      <attachid>137956</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-04-19 22:13:25 -0700</bug_when>
    <thetext>Comment on attachment 137956
Patch

Thanks for looking at this Shawn. Will update the patch in the morning.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606595</commentid>
    <comment_count>4</comment_count>
      <attachid>138099</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-04-20 08:51:25 -0700</bug_when>
    <thetext>Created attachment 138099
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606706</commentid>
    <comment_count>5</comment_count>
      <attachid>138099</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-20 10:57:38 -0700</bug_when>
    <thetext>Comment on attachment 138099
Patch

Clearing flags on attachment: 138099

Committed r114763: &lt;http://trac.webkit.org/changeset/114763&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>606707</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-04-20 10:57:51 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>137956</attachid>
            <date>2012-04-19 13:03:11 -0700</date>
            <delta_ts>2012-04-20 08:51:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-84373-20120419160310.patch</filename>
            <type>text/plain</type>
            <size>10102</size>
            <attacher name="Dana Jansens">danakj</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE0NjA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTcxYjcwOTdiM2UyMzg0
ZWU1NGJmMmVhNGU4MmRjNzhiZTZjZWZhOS4uNjc2MDMyYTk3MzllY2Q0YmQ2N2Q2MjI2M2E4ZGZh
MjIxMTQ5M2FiMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEyLTA0LTE5ICBEYW5h
IEphbnNlbnMgIDxkYW5ha2pAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1bV0gQmx1
ciBzaG91bGQgbW92ZSBkYW1hZ2UgYXJvdW5kIGluIHRoZSBibHVycmVkIGxheWVyCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NDM3MworCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFdoZW4gYSBsYXllciBpcyBi
bHVycmVkLCBkYW1hZ2VkIHBpeGVscyBhcmUgYmx1cnJlZCBvdXQgaW50byBhIHJhZGl1cworICAg
ICAgICBhbmQgdGhlaXIgZGFtYWdlIHNob3VsZCBiZSBtb3ZlZCBhbG9uZyB3aXRoIHRoZW0uCisK
KyAgICAgICAgVW5pdCB0ZXN0OiBDQ0RhbWFnZVRyYWNrZXJUZXN0LnZlcmlmeURhbWFnZUZvckJs
dXJyZWRTdXJmYWNlCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9D
Q0RhbWFnZVRyYWNrZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q0NEYW1hZ2VUcmFja2VyOjp1
cGRhdGVEYW1hZ2VUcmFja2luZ1N0YXRlKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9j
aHJvbWl1bS9jYy9DQ0RhbWFnZVRyYWNrZXIuaDoKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAg
ICAoQ0NEYW1hZ2VUcmFja2VyKToKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1
bS9jYy9DQ0xheWVyVHJlZUhvc3RJbXBsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkNDTGF5ZXJU
cmVlSG9zdEltcGw6OnRyYWNrRGFtYWdlRm9yQWxsU3VyZmFjZXMpOgorCiAyMDEyLTA0LTE4ICBB
ZHJpZW5uZSBXYWxrZXIgIDxlbm5lQGdvb2dsZS5jb20+CiAKICAgICAgICAgW2Nocm9taXVtXSBD
b25zb2xpZGF0ZSBhZGp1c3RUZXh0UmVuZGVyTW9kZSBjb3B5cGFzdGEgaW50byBTa2lhIGNvbnRl
eHQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nIGIvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggMDQ0MDllYTI4ZWRjNDY3YTk5NjA3ZDg4
MzE4ODI1YTI1YzE0NmYzZS4uOTU3M2E0ZWMyZGM3NzJlZWU1YWMwYTBjNzZmZjg3MWE4NmVjZWJk
OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvU291
cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMi0wNC0x
OSAgRGFuYSBKYW5zZW5zICA8ZGFuYWtqQGNocm9taXVtLm9yZz4KKworICAgICAgICBbY2hyb21p
dW1dIEJsdXIgc2hvdWxkIG1vdmUgZGFtYWdlIGFyb3VuZCBpbiB0aGUgYmx1cnJlZCBsYXllcgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODQzNzMKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHRlc3RzL0ND
RGFtYWdlVHJhY2tlclRlc3QuY3BwOgorICAgICAgICAoV2ViS2l0VGVzdHM6OmVtdWxhdGVEcmF3
aW5nT25lRnJhbWUpOgorICAgICAgICAoV2ViS2l0VGVzdHM6OlRFU1RfRik6CisgICAgICAgIChX
ZWJLaXRUZXN0cyk6CisKIDIwMTItMDQtMTggIE5pY28gV2ViZXIgIDx0aGFraXNAY2hyb21pdW0u
b3JnPgogCiAgICAgICAgIFtjaHJvbWl1bS9tYWNdIEZpeCBidWlsZC4KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDRGFtYWdlVHJhY2tl
ci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0Rh
bWFnZVRyYWNrZXIuY3BwCmluZGV4IGQ0YjRjZjkxNmIxMmIxM2FmN2RmYTYyYWRlNTMyNjMwMWZm
YjljMTYuLjc4ODg2MGIxZGQ4YWM5ZDU2NjY1ZTA0MzgwODU2ODQ1YTQ0ZDY1NTQgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDRGFtYWdl
VHJhY2tlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21p
dW0vY2MvQ0NEYW1hZ2VUcmFja2VyLmNwcApAQCAtMzQsNiArMzQsNyBAQAogCiAjaW5jbHVkZSAi
Y2MvQ0NEYW1hZ2VUcmFja2VyLmgiCiAKKyNpbmNsdWRlICJGaWx0ZXJPcGVyYXRpb25zLmgiCiAj
aW5jbHVkZSAiY2MvQ0NMYXllckltcGwuaCIKICNpbmNsdWRlICJjYy9DQ0xheWVyVHJlZUhvc3RD
b21tb24uaCIKICNpbmNsdWRlICJjYy9DQ1JlbmRlclN1cmZhY2UuaCIKQEAgLTU2LDcgKzU3LDcg
QEAgQ0NEYW1hZ2VUcmFja2VyOjp+Q0NEYW1hZ2VUcmFja2VyKCkKIHsKIH0KIAotdm9pZCBDQ0Rh
bWFnZVRyYWNrZXI6OnVwZGF0ZURhbWFnZVRyYWNraW5nU3RhdGUoY29uc3QgVmVjdG9yPENDTGF5
ZXJJbXBsKj4mIGxheWVyTGlzdCwgaW50IHRhcmdldFN1cmZhY2VMYXllcklELCBib29sIHRhcmdl
dFN1cmZhY2VQcm9wZXJ0eUNoYW5nZWRPbmx5RnJvbURlc2NlbmRhbnQsIGNvbnN0IEludFJlY3Qm
IHRhcmdldFN1cmZhY2VDb250ZW50UmVjdCwgQ0NMYXllckltcGwqIHRhcmdldFN1cmZhY2VNYXNr
TGF5ZXIpCit2b2lkIENDRGFtYWdlVHJhY2tlcjo6dXBkYXRlRGFtYWdlVHJhY2tpbmdTdGF0ZShj
b25zdCBWZWN0b3I8Q0NMYXllckltcGwqPiYgbGF5ZXJMaXN0LCBpbnQgdGFyZ2V0U3VyZmFjZUxh
eWVySUQsIGJvb2wgdGFyZ2V0U3VyZmFjZVByb3BlcnR5Q2hhbmdlZE9ubHlGcm9tRGVzY2VuZGFu
dCwgY29uc3QgSW50UmVjdCYgdGFyZ2V0U3VyZmFjZUNvbnRlbnRSZWN0LCBDQ0xheWVySW1wbCog
dGFyZ2V0U3VyZmFjZU1hc2tMYXllciwgY29uc3QgRmlsdGVyT3BlcmF0aW9ucyYgZmlsdGVycykK
IHsKICAgICAvLwogICAgIC8vIFRoaXMgZnVuY3Rpb24gY29tcHV0ZXMgdGhlICJkYW1hZ2UgcmVj
dCIgb2YgYSB0YXJnZXQgc3VyZmFjZSwgYW5kIHVwZGF0ZXMgdGhlIHN0YXRlCkBAIC0xMzYsNiAr
MTM3LDE0IEBAIHZvaWQgQ0NEYW1hZ2VUcmFja2VyOjp1cGRhdGVEYW1hZ2VUcmFja2luZ1N0YXRl
KGNvbnN0IFZlY3RvcjxDQ0xheWVySW1wbCo+JiBsYXllCiAgICAgICAgIG1fY3VycmVudERhbWFn
ZVJlY3QgPSBkYW1hZ2VGcm9tQWN0aXZlTGF5ZXJzOwogICAgICAgICBtX2N1cnJlbnREYW1hZ2VS
ZWN0LnVuaXRlSWZOb25aZXJvKGRhbWFnZUZyb21TdXJmYWNlTWFzayk7CiAgICAgICAgIG1fY3Vy
cmVudERhbWFnZVJlY3QudW5pdGVJZk5vblplcm8oZGFtYWdlRnJvbUxlZnRvdmVyUmVjdHMpOwor
CisgICAgICAgIC8vIEZpbHRlcnMgY2FuIHNwcmVhZCBkYW1hZ2UgYXJvdW5kIGluIHRoZSBzdXJm
YWNlLgorICAgICAgICBpZiAoZmlsdGVycy5oYXNGaWx0ZXJUaGF0TW92ZXNQaXhlbHMoKSkgewor
ICAgICAgICAgICAgaW50IHRvcCwgcmlnaHQsIGJvdHRvbSwgbGVmdDsKKyAgICAgICAgICAgIGZp
bHRlcnMuZ2V0T3V0c2V0cyh0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQpOworICAgICAgICAgICAg
bV9jdXJyZW50RGFtYWdlUmVjdC5tb3ZlKC1sZWZ0LCAtdG9wKTsKKyAgICAgICAgICAgIG1fY3Vy
cmVudERhbWFnZVJlY3QuZXhwYW5kKGxlZnQgKyByaWdodCwgdG9wICsgYm90dG9tKTsKKyAgICAg
ICAgfQogICAgIH0KIAogICAgIC8vIFRoZSBuZXh0IGhpc3RvcnkgbWFwIGJlY29tZXMgdGhlIGN1
cnJlbnQgbWFwIGZvciB0aGUgbmV4dCBmcmFtZS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDRGFtYWdlVHJhY2tlci5oIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NEYW1hZ2VUcmFja2VyLmgK
aW5kZXggNGEzZTMwYTY2ODc2ZTg5NmQ1Njg4YTM4YWFhMDFiMzQwNmE5MWM2Ny4uZmFkZThjZGZm
MzZjNmFkMWU1MTczODUwN2IwZDdjYWZjMzA3ZDI1OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NEYW1hZ2VUcmFja2VyLmgKKysrIGIv
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NEYW1hZ2VUcmFj
a2VyLmgKQEAgLTM1LDYgKzM1LDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBDQ0xh
eWVySW1wbDsKIGNsYXNzIENDUmVuZGVyU3VyZmFjZTsKK2NsYXNzIEZpbHRlck9wZXJhdGlvbnM7
CiAKIC8vIENvbXB1dGVzIHRoZSByZWdpb24gd2hlcmUgcGl4ZWxzIGhhdmUgYWN0dWFsbHkgY2hh
bmdlZCBvbiBhIFJlbmRlclN1cmZhY2UuIFRoaXMgcmVnaW9uIGlzIHVzZWQKIC8vIHRvIHNjaXNz
b3Igd2hhdCBpcyBhY3R1YWxseSBkcmF3biB0byB0aGUgc2NyZWVuIHRvIHNhdmUgR1BVIGNvbXB1
dGF0aW9uIGFuZCBiYW5kd2lkdGguCkBAIC00NCw3ICs0NSw3IEBAIHB1YmxpYzoKICAgICB+Q0NE
YW1hZ2VUcmFja2VyKCk7CiAKICAgICB2b2lkIGZvcmNlRnVsbERhbWFnZU5leHRVcGRhdGUoKSB7
IG1fZm9yY2VGdWxsRGFtYWdlTmV4dFVwZGF0ZSA9IHRydWU7IH0KLSAgICB2b2lkIHVwZGF0ZURh
bWFnZVRyYWNraW5nU3RhdGUoY29uc3QgVmVjdG9yPENDTGF5ZXJJbXBsKj4mIGxheWVyTGlzdCwg
aW50IHRhcmdldFN1cmZhY2VMYXllcklELCBib29sIHRhcmdldFN1cmZhY2VQcm9wZXJ0eUNoYW5n
ZWRPbmx5RnJvbURlc2NlbmRhbnQsIGNvbnN0IEludFJlY3QmIHRhcmdldFN1cmZhY2VDb250ZW50
UmVjdCwgQ0NMYXllckltcGwqIHRhcmdldFN1cmZhY2VNYXNrTGF5ZXIpOworICAgIHZvaWQgdXBk
YXRlRGFtYWdlVHJhY2tpbmdTdGF0ZShjb25zdCBWZWN0b3I8Q0NMYXllckltcGwqPiYgbGF5ZXJM
aXN0LCBpbnQgdGFyZ2V0U3VyZmFjZUxheWVySUQsIGJvb2wgdGFyZ2V0U3VyZmFjZVByb3BlcnR5
Q2hhbmdlZE9ubHlGcm9tRGVzY2VuZGFudCwgY29uc3QgSW50UmVjdCYgdGFyZ2V0U3VyZmFjZUNv
bnRlbnRSZWN0LCBDQ0xheWVySW1wbCogdGFyZ2V0U3VyZmFjZU1hc2tMYXllciwgY29uc3QgRmls
dGVyT3BlcmF0aW9ucyYpOwogICAgIGNvbnN0IEZsb2F0UmVjdCYgY3VycmVudERhbWFnZVJlY3Qo
KSB7IHJldHVybiBtX2N1cnJlbnREYW1hZ2VSZWN0OyB9CiAKIHByaXZhdGU6CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9jYy9DQ0xheWVyVHJl
ZUhvc3RJbXBsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVt
L2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuY3BwCmluZGV4IGZiN2FiZTViMzNhZThlZTI4MTljODcx
Mzk2NjI1MmRkNTIxMWNlODEuLmI5MTdkOGFjZTdkZDY4YzI2YjU5ZTBkYTg3MzYzOGEyM2QyMjNh
YmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVt
L2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuY3BwCkBAIC0yMTAsNyAr
MjEwLDcgQEAgdm9pZCBDQ0xheWVyVHJlZUhvc3RJbXBsOjp0cmFja0RhbWFnZUZvckFsbFN1cmZh
Y2VzKENDTGF5ZXJJbXBsKiByb290RHJhd0xheWVyLAogICAgICAgICBDQ0xheWVySW1wbCogcmVu
ZGVyU3VyZmFjZUxheWVyID0gcmVuZGVyU3VyZmFjZUxheWVyTGlzdFtzdXJmYWNlSW5kZXhdOwog
ICAgICAgICBDQ1JlbmRlclN1cmZhY2UqIHJlbmRlclN1cmZhY2UgPSByZW5kZXJTdXJmYWNlTGF5
ZXItPnJlbmRlclN1cmZhY2UoKTsKICAgICAgICAgQVNTRVJUKHJlbmRlclN1cmZhY2UpOwotICAg
ICAgICByZW5kZXJTdXJmYWNlLT5kYW1hZ2VUcmFja2VyKCktPnVwZGF0ZURhbWFnZVRyYWNraW5n
U3RhdGUocmVuZGVyU3VyZmFjZS0+bGF5ZXJMaXN0KCksIHJlbmRlclN1cmZhY2VMYXllci0+aWQo
KSwgcmVuZGVyU3VyZmFjZS0+c3VyZmFjZVByb3BlcnR5Q2hhbmdlZE9ubHlGcm9tRGVzY2VuZGFu
dCgpLCByZW5kZXJTdXJmYWNlLT5jb250ZW50UmVjdCgpLCByZW5kZXJTdXJmYWNlTGF5ZXItPm1h
c2tMYXllcigpKTsKKyAgICAgICAgcmVuZGVyU3VyZmFjZS0+ZGFtYWdlVHJhY2tlcigpLT51cGRh
dGVEYW1hZ2VUcmFja2luZ1N0YXRlKHJlbmRlclN1cmZhY2UtPmxheWVyTGlzdCgpLCByZW5kZXJT
dXJmYWNlTGF5ZXItPmlkKCksIHJlbmRlclN1cmZhY2UtPnN1cmZhY2VQcm9wZXJ0eUNoYW5nZWRP
bmx5RnJvbURlc2NlbmRhbnQoKSwgcmVuZGVyU3VyZmFjZS0+Y29udGVudFJlY3QoKSwgcmVuZGVy
U3VyZmFjZUxheWVyLT5tYXNrTGF5ZXIoKSwgcmVuZGVyU3VyZmFjZUxheWVyLT5maWx0ZXJzKCkp
OwogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9D
Q0RhbWFnZVRyYWNrZXJUZXN0LmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvQ0NE
YW1hZ2VUcmFja2VyVGVzdC5jcHAKaW5kZXggMGZjMGE5Zjg0Yzk1MTY4ZjA4YzgyNjYzZDU5OGYx
OTY1YjM1Y2ZhYy4uMGIzMzQzMzFiNTU0YjAzZjVlNmRiZDE1ZDc4YmU1MzU3N2ExNmMwYyAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9DQ0RhbWFnZVRyYWNrZXJUZXN0
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL0NDRGFtYWdlVHJhY2tlclRl
c3QuY3BwCkBAIC03MCw3ICs3MCw3IEBAIHZvaWQgZW11bGF0ZURyYXdpbmdPbmVGcmFtZShDQ0xh
eWVySW1wbCogcm9vdCkKICAgICAvLyBJdGVyYXRlIGJhY2stdG8tZnJvbnQsIHNvIHRoYXQgZGFt
YWdlIGNvcnJlY3RseSBwcm9wYWdhdGVzIGZyb20gZGVzY2VuZGFudCBzdXJmYWNlcyB0byBhbmNl
c3RvcnMuCiAgICAgZm9yIChpbnQgaSA9IHJlbmRlclN1cmZhY2VMYXllckxpc3Quc2l6ZSgpIC0g
MTsgaSA+PSAwOyAtLWkpIHsKICAgICAgICAgQ0NSZW5kZXJTdXJmYWNlKiB0YXJnZXRTdXJmYWNl
ID0gcmVuZGVyU3VyZmFjZUxheWVyTGlzdFtpXS0+cmVuZGVyU3VyZmFjZSgpOwotICAgICAgICB0
YXJnZXRTdXJmYWNlLT5kYW1hZ2VUcmFja2VyKCktPnVwZGF0ZURhbWFnZVRyYWNraW5nU3RhdGUo
dGFyZ2V0U3VyZmFjZS0+bGF5ZXJMaXN0KCksIHRhcmdldFN1cmZhY2UtPm93bmluZ0xheWVySWQo
KSwgdGFyZ2V0U3VyZmFjZS0+c3VyZmFjZVByb3BlcnR5Q2hhbmdlZE9ubHlGcm9tRGVzY2VuZGFu
dCgpLCB0YXJnZXRTdXJmYWNlLT5jb250ZW50UmVjdCgpLCByZW5kZXJTdXJmYWNlTGF5ZXJMaXN0
W2ldLT5tYXNrTGF5ZXIoKSk7CisgICAgICAgIHRhcmdldFN1cmZhY2UtPmRhbWFnZVRyYWNrZXIo
KS0+dXBkYXRlRGFtYWdlVHJhY2tpbmdTdGF0ZSh0YXJnZXRTdXJmYWNlLT5sYXllckxpc3QoKSwg
dGFyZ2V0U3VyZmFjZS0+b3duaW5nTGF5ZXJJZCgpLCB0YXJnZXRTdXJmYWNlLT5zdXJmYWNlUHJv
cGVydHlDaGFuZ2VkT25seUZyb21EZXNjZW5kYW50KCksIHRhcmdldFN1cmZhY2UtPmNvbnRlbnRS
ZWN0KCksIHJlbmRlclN1cmZhY2VMYXllckxpc3RbaV0tPm1hc2tMYXllcigpLCByZW5kZXJTdXJm
YWNlTGF5ZXJMaXN0W2ldLT5maWx0ZXJzKCkpOwogICAgIH0KIAogICAgIHJvb3QtPnJlc2V0QWxs
Q2hhbmdlVHJhY2tpbmdGb3JTdWJ0cmVlKCk7CkBAIC0zMTUsNiArMzE1LDMyIEBAIFRFU1RfRihD
Q0RhbWFnZVRyYWNrZXJUZXN0LCB2ZXJpZnlEYW1hZ2VGb3JUcmFuc2Zvcm1lZExheWVyKQogICAg
IEVYUEVDVF9GTE9BVF9SRUNUX0VRKGV4cGVjdGVkUmVjdCwgcm9vdERhbWFnZVJlY3QpOwogfQog
CitURVNUX0YoQ0NEYW1hZ2VUcmFja2VyVGVzdCwgdmVyaWZ5RGFtYWdlRm9yQmx1cnJlZFN1cmZh
Y2UpCit7CisgICAgT3duUHRyPENDTGF5ZXJJbXBsPiByb290ID0gY3JlYXRlQW5kU2V0VXBUZXN0
VHJlZVdpdGhPbmVTdXJmYWNlKCk7CisgICAgQ0NMYXllckltcGwqIGNoaWxkID0gcm9vdC0+Y2hp
bGRyZW4oKVswXS5nZXQoKTsKKworICAgIEZpbHRlck9wZXJhdGlvbnMgZmlsdGVyczsKKyAgICBm
aWx0ZXJzLm9wZXJhdGlvbnMoKS5hcHBlbmQoQmx1ckZpbHRlck9wZXJhdGlvbjo6Y3JlYXRlKExl
bmd0aCg1LCBXZWJDb3JlOjpQZXJjZW50KSwgRmlsdGVyT3BlcmF0aW9uOjpCTFVSKSk7CisgICAg
aW50IG91dHNldFRvcCwgb3V0c2V0UmlnaHQsIG91dHNldEJvdHRvbSwgb3V0c2V0TGVmdDsKKyAg
ICBmaWx0ZXJzLmdldE91dHNldHMob3V0c2V0VG9wLCBvdXRzZXRSaWdodCwgb3V0c2V0Qm90dG9t
LCBvdXRzZXRMZWZ0KTsKKyAgICByb290LT5zZXRGaWx0ZXJzKGZpbHRlcnMpOworCisgICAgLy8g
U2V0dGluZyB0aGUgZmlsdGVyIHdpbGwgZGFtYWdlIHRoZSB3aG9sZSBzdXJmYWNlLgorICAgIGVt
dWxhdGVEcmF3aW5nT25lRnJhbWUocm9vdC5nZXQoKSk7CisKKyAgICAvLyBTZXR0aW5nIHRoZSB1
cGRhdGUgcmVjdCBzaG91bGQgY2F1c2UgdGhlIGNvcnJlc3BvbmRpbmcgZGFtYWdlIHRvIHRoZSBz
dXJmYWNlLCBibHVycmVkIGJhc2VkIG9uIHRoZSBzaXplIG9mIHRoZSBibHVyIGZpbHRlci4KKyAg
ICBjaGlsZC0+c2V0VXBkYXRlUmVjdChGbG9hdFJlY3QoMTAsIDExLCAxMiwgMTMpKTsKKyAgICBl
bXVsYXRlRHJhd2luZ09uZUZyYW1lKHJvb3QuZ2V0KCkpOworCisgICAgLy8gRGFtYWdlIHBvc2l0
aW9uIG9uIHRoZSBzdXJmYWNlIHNob3VsZCBiZTogcG9zaXRpb24gb2YgdXBkYXRlUmVjdCAoMTAs
IDExKSByZWxhdGl2ZSB0byB0aGUgY2hpbGQgKDEwMCwgMTAwKSwgYnV0IGJsdXJyZWQgb3V0IGJ5
IHRoZSBibHVyIG91dHNldHMuCisgICAgRmxvYXRSZWN0IHJvb3REYW1hZ2VSZWN0ID0gcm9vdC0+
cmVuZGVyU3VyZmFjZSgpLT5kYW1hZ2VUcmFja2VyKCktPmN1cnJlbnREYW1hZ2VSZWN0KCk7Cisg
ICAgRmxvYXRSZWN0IGV4cGVjdGVkRGFtYWdlUmVjdCA9IEZsb2F0UmVjdCgxMTAsIDExMSwgMTIs
IDEzKTsKKyAgICBleHBlY3RlZERhbWFnZVJlY3QubW92ZSgtb3V0c2V0TGVmdCwgLW91dHNldFRv
cCk7CisgICAgZXhwZWN0ZWREYW1hZ2VSZWN0LmV4cGFuZChvdXRzZXRMZWZ0ICsgb3V0c2V0Umln
aHQsIG91dHNldFRvcCArIG91dHNldEJvdHRvbSk7CisgICAgRVhQRUNUX0ZMT0FUX1JFQ1RfRVEo
ZXhwZWN0ZWREYW1hZ2VSZWN0LCByb290RGFtYWdlUmVjdCk7Cit9CisKIFRFU1RfRihDQ0RhbWFn
ZVRyYWNrZXJUZXN0LCB2ZXJpZnlEYW1hZ2VGb3JBZGRpbmdBbmRSZW1vdmluZ0xheWVyKQogewog
ICAgIE93blB0cjxDQ0xheWVySW1wbD4gcm9vdCA9IGNyZWF0ZUFuZFNldFVwVGVzdFRyZWVXaXRo
T25lU3VyZmFjZSgpOwpAQCAtODc3LDcgKzkwMyw3IEBAIFRFU1RfRihDQ0RhbWFnZVRyYWNrZXJU
ZXN0LCB2ZXJpZnlEYW1hZ2VGb3JFbXB0eUxheWVyTGlzdCkKICAgICBBU1NFUlRfVFJVRShyb290
LT5yZW5kZXJTdXJmYWNlKCkgPT0gcm9vdC0+dGFyZ2V0UmVuZGVyU3VyZmFjZSgpKTsKICAgICBD
Q1JlbmRlclN1cmZhY2UqIHRhcmdldFN1cmZhY2UgPSByb290LT5yZW5kZXJTdXJmYWNlKCk7CiAg
ICAgdGFyZ2V0U3VyZmFjZS0+Y2xlYXJMYXllckxpc3QoKTsKLSAgICB0YXJnZXRTdXJmYWNlLT5k
YW1hZ2VUcmFja2VyKCktPnVwZGF0ZURhbWFnZVRyYWNraW5nU3RhdGUodGFyZ2V0U3VyZmFjZS0+
bGF5ZXJMaXN0KCksIHRhcmdldFN1cmZhY2UtPm93bmluZ0xheWVySWQoKSwgZmFsc2UsIEludFJl
Y3QoKSwgMCk7CisgICAgdGFyZ2V0U3VyZmFjZS0+ZGFtYWdlVHJhY2tlcigpLT51cGRhdGVEYW1h
Z2VUcmFja2luZ1N0YXRlKHRhcmdldFN1cmZhY2UtPmxheWVyTGlzdCgpLCB0YXJnZXRTdXJmYWNl
LT5vd25pbmdMYXllcklkKCksIGZhbHNlLCBJbnRSZWN0KCksIDAsIEZpbHRlck9wZXJhdGlvbnMo
KSk7CiAKICAgICBGbG9hdFJlY3QgZGFtYWdlUmVjdCA9IHRhcmdldFN1cmZhY2UtPmRhbWFnZVRy
YWNrZXIoKS0+Y3VycmVudERhbWFnZVJlY3QoKTsKICAgICBFWFBFQ1RfVFJVRShkYW1hZ2VSZWN0
LmlzRW1wdHkoKSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>138099</attachid>
            <date>2012-04-20 08:51:25 -0700</date>
            <delta_ts>2012-04-20 10:57:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-84373-20120420115123.patch</filename>
            <type>text/plain</type>
            <size>11067</size>
            <attacher name="Dana Jansens">danakj</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE0NjA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTcxYjcwOTdiM2UyMzg0
ZWU1NGJmMmVhNGU4MmRjNzhiZTZjZWZhOS4uNzJiZTkzYjdlM2Y5M2MzOWVjOTRiMzc1MGM2ZmJi
MGQxNzZhM2MzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDEyLTA0LTIwICBEYW5h
IEphbnNlbnMgIDxkYW5ha2pAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFtjaHJvbWl1bV0gU29t
ZSBmaWx0ZXJzIHJlcXVpcmUgaW5mbGF0aW5nIGRhbWFnZSByZWN0IGluIENDRGFtYWdlVHJhY2tl
cgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODQzNzMK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuIGEg
bGF5ZXIgaXMgYmx1cnJlZCwgZGFtYWdlZCBwaXhlbHMgYXJlIGJsdXJyZWQgb3V0IGludG8gYSBy
YWRpdXMKKyAgICAgICAgYW5kIHRoZWlyIGRhbWFnZSBzaG91bGQgYmUgZXhwYW5kZWQgdG8gaW5j
bHVkZSB0b3RhbCBibHVycmVkIHJlZ2lvbi4KKworICAgICAgICBVbml0IHRlc3Q6IENDRGFtYWdl
VHJhY2tlclRlc3QudmVyaWZ5RGFtYWdlRm9yQmx1cnJlZFN1cmZhY2UKKworICAgICAgICAqIHBs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDRGFtYWdlVHJhY2tlci5jcHA6CisgICAgICAg
IChXZWJDb3JlOjpDQ0RhbWFnZVRyYWNrZXI6OnVwZGF0ZURhbWFnZVRyYWNraW5nU3RhdGUpOgor
ICAgICAgICAoV2ViQ29yZTo6Q0NEYW1hZ2VUcmFja2VyOjpleHBhbmREYW1hZ2VSZWN0V2l0aEZv
cmVncm91bmRGaWx0ZXJzKToKKyAgICAgICAgKFdlYkNvcmUpOgorICAgICAgICAqIHBsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDRGFtYWdlVHJhY2tlci5oOgorICAgICAgICAoV2ViQ29y
ZSk6CisgICAgICAgIChDQ0RhbWFnZVRyYWNrZXIpOgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVlSG9zdEltcGwuY3BwOgorICAgICAgICAoV2ViQ29y
ZTo6Q0NMYXllclRyZWVIb3N0SW1wbDo6dHJhY2tEYW1hZ2VGb3JBbGxTdXJmYWNlcyk6CisKIDIw
MTItMDQtMTggIEFkcmllbm5lIFdhbGtlciAgPGVubmVAZ29vZ2xlLmNvbT4KIAogICAgICAgICBb
Y2hyb21pdW1dIENvbnNvbGlkYXRlIGFkanVzdFRleHRSZW5kZXJNb2RlIGNvcHlwYXN0YSBpbnRv
IFNraWEgY29udGV4dApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VM
b2cgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwppbmRleCAwNDQwOWVhMjhlZGM0
NjdhOTk2MDdkODgzMTg4MjVhMjVjMTQ2ZjNlLi5lMGQxODkzYzQzY2I1MGI4YjRhMjJhMDI1ZDU1
ZDRhNTI1MTkyNjA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBA
CisyMDEyLTA0LTIwICBEYW5hIEphbnNlbnMgIDxkYW5ha2pAY2hyb21pdW0ub3JnPgorCisgICAg
ICAgIFtjaHJvbWl1bV0gU29tZSBmaWx0ZXJzIHJlcXVpcmUgaW5mbGF0aW5nIGRhbWFnZSByZWN0
IGluIENDRGFtYWdlVHJhY2tlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9ODQzNzMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIHRlc3RzL0NDRGFtYWdlVHJhY2tlclRlc3QuY3BwOgorICAgICAgICAoV2Vi
S2l0VGVzdHM6OmVtdWxhdGVEcmF3aW5nT25lRnJhbWUpOgorICAgICAgICAoV2ViS2l0VGVzdHM6
OlRFU1RfRik6CisgICAgICAgIChXZWJLaXRUZXN0cyk6CisKIDIwMTItMDQtMTggIE5pY28gV2Vi
ZXIgIDx0aGFraXNAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFtjaHJvbWl1bS9tYWNdIEZpeCBi
dWlsZC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL2NjL0NDRGFtYWdlVHJhY2tlci5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFw
aGljcy9jaHJvbWl1bS9jYy9DQ0RhbWFnZVRyYWNrZXIuY3BwCmluZGV4IGQ0YjRjZjkxNmIxMmIx
M2FmN2RmYTYyYWRlNTMyNjMwMWZmYjljMTYuLjExZTdiNDE1MjVkZDliZmJjNDY5Njk3OTU4ZGVm
ZTk2NDg4NDJlYTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2Nocm9taXVtL2NjL0NDRGFtYWdlVHJhY2tlci5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NEYW1hZ2VUcmFja2VyLmNwcApAQCAtMzQsNiAr
MzQsNyBAQAogCiAjaW5jbHVkZSAiY2MvQ0NEYW1hZ2VUcmFja2VyLmgiCiAKKyNpbmNsdWRlICJG
aWx0ZXJPcGVyYXRpb25zLmgiCiAjaW5jbHVkZSAiY2MvQ0NMYXllckltcGwuaCIKICNpbmNsdWRl
ICJjYy9DQ0xheWVyVHJlZUhvc3RDb21tb24uaCIKICNpbmNsdWRlICJjYy9DQ1JlbmRlclN1cmZh
Y2UuaCIKQEAgLTU2LDcgKzU3LDcgQEAgQ0NEYW1hZ2VUcmFja2VyOjp+Q0NEYW1hZ2VUcmFja2Vy
KCkKIHsKIH0KIAotdm9pZCBDQ0RhbWFnZVRyYWNrZXI6OnVwZGF0ZURhbWFnZVRyYWNraW5nU3Rh
dGUoY29uc3QgVmVjdG9yPENDTGF5ZXJJbXBsKj4mIGxheWVyTGlzdCwgaW50IHRhcmdldFN1cmZh
Y2VMYXllcklELCBib29sIHRhcmdldFN1cmZhY2VQcm9wZXJ0eUNoYW5nZWRPbmx5RnJvbURlc2Nl
bmRhbnQsIGNvbnN0IEludFJlY3QmIHRhcmdldFN1cmZhY2VDb250ZW50UmVjdCwgQ0NMYXllcklt
cGwqIHRhcmdldFN1cmZhY2VNYXNrTGF5ZXIpCit2b2lkIENDRGFtYWdlVHJhY2tlcjo6dXBkYXRl
RGFtYWdlVHJhY2tpbmdTdGF0ZShjb25zdCBWZWN0b3I8Q0NMYXllckltcGwqPiYgbGF5ZXJMaXN0
LCBpbnQgdGFyZ2V0U3VyZmFjZUxheWVySUQsIGJvb2wgdGFyZ2V0U3VyZmFjZVByb3BlcnR5Q2hh
bmdlZE9ubHlGcm9tRGVzY2VuZGFudCwgY29uc3QgSW50UmVjdCYgdGFyZ2V0U3VyZmFjZUNvbnRl
bnRSZWN0LCBDQ0xheWVySW1wbCogdGFyZ2V0U3VyZmFjZU1hc2tMYXllciwgY29uc3QgRmlsdGVy
T3BlcmF0aW9ucyYgZmlsdGVycykKIHsKICAgICAvLwogICAgIC8vIFRoaXMgZnVuY3Rpb24gY29t
cHV0ZXMgdGhlICJkYW1hZ2UgcmVjdCIgb2YgYSB0YXJnZXQgc3VyZmFjZSwgYW5kIHVwZGF0ZXMg
dGhlIHN0YXRlCkBAIC0xMzYsNiArMTM3LDggQEAgdm9pZCBDQ0RhbWFnZVRyYWNrZXI6OnVwZGF0
ZURhbWFnZVRyYWNraW5nU3RhdGUoY29uc3QgVmVjdG9yPENDTGF5ZXJJbXBsKj4mIGxheWUKICAg
ICAgICAgbV9jdXJyZW50RGFtYWdlUmVjdCA9IGRhbWFnZUZyb21BY3RpdmVMYXllcnM7CiAgICAg
ICAgIG1fY3VycmVudERhbWFnZVJlY3QudW5pdGVJZk5vblplcm8oZGFtYWdlRnJvbVN1cmZhY2VN
YXNrKTsKICAgICAgICAgbV9jdXJyZW50RGFtYWdlUmVjdC51bml0ZUlmTm9uWmVybyhkYW1hZ2VG
cm9tTGVmdG92ZXJSZWN0cyk7CisKKyAgICAgICAgZXhwYW5kRGFtYWdlUmVjdFdpdGhGb3JlZ3Jv
dW5kRmlsdGVycyhmaWx0ZXJzKTsKICAgICB9CiAKICAgICAvLyBUaGUgbmV4dCBoaXN0b3J5IG1h
cCBiZWNvbWVzIHRoZSBjdXJyZW50IG1hcCBmb3IgdGhlIG5leHQgZnJhbWUuCkBAIC0zMDcsNiAr
MzEwLDE3IEBAIHZvaWQgQ0NEYW1hZ2VUcmFja2VyOjpleHRlbmREYW1hZ2VGb3JSZW5kZXJTdXJm
YWNlKENDTGF5ZXJJbXBsKiBsYXllciwgRmxvYXRSZWN0CiAgICAgfQogfQogCit2b2lkIENDRGFt
YWdlVHJhY2tlcjo6ZXhwYW5kRGFtYWdlUmVjdFdpdGhGb3JlZ3JvdW5kRmlsdGVycyhjb25zdCBG
aWx0ZXJPcGVyYXRpb25zJiBmaWx0ZXJzKQoreworICAgIC8vIEZpbHRlcnMgY2FuIHNwcmVhZCBk
YW1hZ2UgYXJvdW5kIGluIHRoZSBzdXJmYWNlLgorICAgIGlmIChmaWx0ZXJzLmhhc0ZpbHRlclRo
YXRNb3Zlc1BpeGVscygpKSB7CisgICAgICAgIGludCB0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQ7
CisgICAgICAgIGZpbHRlcnMuZ2V0T3V0c2V0cyh0b3AsIHJpZ2h0LCBib3R0b20sIGxlZnQpOwor
ICAgICAgICBtX2N1cnJlbnREYW1hZ2VSZWN0Lm1vdmUoLWxlZnQsIC10b3ApOworICAgICAgICBt
X2N1cnJlbnREYW1hZ2VSZWN0LmV4cGFuZChsZWZ0ICsgcmlnaHQsIHRvcCArIGJvdHRvbSk7Cisg
ICAgfQorfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCiAKICNlbmRpZiAvLyBVU0UoQUNDRUxF
UkFURURfQ09NUE9TSVRJTkcpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9n
cmFwaGljcy9jaHJvbWl1bS9jYy9DQ0RhbWFnZVRyYWNrZXIuaCBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDRGFtYWdlVHJhY2tlci5oCmluZGV4IDRhM2Uz
MGE2Njg3NmU4OTZkNTY4OGEzOGFhYTAxYjM0MDZhOTFjNjcuLjJjZjAwZjg5OTk4M2E5MmVhMDZk
MzJiNmM2MzVkNGNkZjcwNmEwY2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDRGFtYWdlVHJhY2tlci5oCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDRGFtYWdlVHJhY2tlci5oCkBAIC0z
NSw2ICszNSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogY2xhc3MgQ0NMYXllckltcGw7CiBj
bGFzcyBDQ1JlbmRlclN1cmZhY2U7CitjbGFzcyBGaWx0ZXJPcGVyYXRpb25zOwogCiAvLyBDb21w
dXRlcyB0aGUgcmVnaW9uIHdoZXJlIHBpeGVscyBoYXZlIGFjdHVhbGx5IGNoYW5nZWQgb24gYSBS
ZW5kZXJTdXJmYWNlLiBUaGlzIHJlZ2lvbiBpcyB1c2VkCiAvLyB0byBzY2lzc29yIHdoYXQgaXMg
YWN0dWFsbHkgZHJhd24gdG8gdGhlIHNjcmVlbiB0byBzYXZlIEdQVSBjb21wdXRhdGlvbiBhbmQg
YmFuZHdpZHRoLgpAQCAtNDQsNyArNDUsNyBAQCBwdWJsaWM6CiAgICAgfkNDRGFtYWdlVHJhY2tl
cigpOwogCiAgICAgdm9pZCBmb3JjZUZ1bGxEYW1hZ2VOZXh0VXBkYXRlKCkgeyBtX2ZvcmNlRnVs
bERhbWFnZU5leHRVcGRhdGUgPSB0cnVlOyB9Ci0gICAgdm9pZCB1cGRhdGVEYW1hZ2VUcmFja2lu
Z1N0YXRlKGNvbnN0IFZlY3RvcjxDQ0xheWVySW1wbCo+JiBsYXllckxpc3QsIGludCB0YXJnZXRT
dXJmYWNlTGF5ZXJJRCwgYm9vbCB0YXJnZXRTdXJmYWNlUHJvcGVydHlDaGFuZ2VkT25seUZyb21E
ZXNjZW5kYW50LCBjb25zdCBJbnRSZWN0JiB0YXJnZXRTdXJmYWNlQ29udGVudFJlY3QsIENDTGF5
ZXJJbXBsKiB0YXJnZXRTdXJmYWNlTWFza0xheWVyKTsKKyAgICB2b2lkIHVwZGF0ZURhbWFnZVRy
YWNraW5nU3RhdGUoY29uc3QgVmVjdG9yPENDTGF5ZXJJbXBsKj4mIGxheWVyTGlzdCwgaW50IHRh
cmdldFN1cmZhY2VMYXllcklELCBib29sIHRhcmdldFN1cmZhY2VQcm9wZXJ0eUNoYW5nZWRPbmx5
RnJvbURlc2NlbmRhbnQsIGNvbnN0IEludFJlY3QmIHRhcmdldFN1cmZhY2VDb250ZW50UmVjdCwg
Q0NMYXllckltcGwqIHRhcmdldFN1cmZhY2VNYXNrTGF5ZXIsIGNvbnN0IEZpbHRlck9wZXJhdGlv
bnMmKTsKICAgICBjb25zdCBGbG9hdFJlY3QmIGN1cnJlbnREYW1hZ2VSZWN0KCkgeyByZXR1cm4g
bV9jdXJyZW50RGFtYWdlUmVjdDsgfQogCiBwcml2YXRlOgpAQCAtNjEsNiArNjIsOCBAQCBwcml2
YXRlOgogICAgIHZvaWQgZXh0ZW5kRGFtYWdlRm9yTGF5ZXIoQ0NMYXllckltcGwqLCBGbG9hdFJl
Y3QmIHRhcmdldERhbWFnZVJlY3QpOwogICAgIHZvaWQgZXh0ZW5kRGFtYWdlRm9yUmVuZGVyU3Vy
ZmFjZShDQ0xheWVySW1wbCosIEZsb2F0UmVjdCYgdGFyZ2V0RGFtYWdlUmVjdCk7CiAKKyAgICB2
b2lkIGV4cGFuZERhbWFnZVJlY3RXaXRoRm9yZWdyb3VuZEZpbHRlcnMoY29uc3QgRmlsdGVyT3Bl
cmF0aW9ucyYpOworCiAgICAgLy8gVG8gY29ycmVjdGx5IHRyYWNrIGV4cG9zZWQgcmVnaW9ucywg
dHdvIGhhc2h0YWJsZXMgb2YgcmVjdHMgYXJlIG1haW50YWluZWQuCiAgICAgLy8gVGhlICJjdXJy
ZW50IiBtYXAgaXMgdXNlZCB0byBjb21wdXRlIGV4cG9zZWQgcmVnaW9ucyBvZiB0aGUgY3VycmVu
dCBmcmFtZSwgd2hpbGUKICAgICAvLyB0aGUgIm5leHQiIG1hcCBpcyB1c2VkIHRvIGNvbGxlY3Qg
bGF5ZXIgcmVjdHMgdGhhdCBhcmUgdXNlZCBpbiB0aGUgbmV4dCBmcmFtZS4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL2NjL0NDTGF5ZXJUcmVl
SG9zdEltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0v
Y2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHAKaW5kZXggZmI3YWJlNWIzM2FlOGVlMjgxOWM4NzEz
OTY2MjUyZGQ1MjExY2U4MS4uYjkxN2Q4YWNlN2RkNjhjMjZiNTllMGRhODczNjM4YTIzZDIyM2Fi
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0v
Y2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vY2MvQ0NMYXllclRyZWVIb3N0SW1wbC5jcHAKQEAgLTIxMCw3ICsy
MTAsNyBAQCB2b2lkIENDTGF5ZXJUcmVlSG9zdEltcGw6OnRyYWNrRGFtYWdlRm9yQWxsU3VyZmFj
ZXMoQ0NMYXllckltcGwqIHJvb3REcmF3TGF5ZXIsCiAgICAgICAgIENDTGF5ZXJJbXBsKiByZW5k
ZXJTdXJmYWNlTGF5ZXIgPSByZW5kZXJTdXJmYWNlTGF5ZXJMaXN0W3N1cmZhY2VJbmRleF07CiAg
ICAgICAgIENDUmVuZGVyU3VyZmFjZSogcmVuZGVyU3VyZmFjZSA9IHJlbmRlclN1cmZhY2VMYXll
ci0+cmVuZGVyU3VyZmFjZSgpOwogICAgICAgICBBU1NFUlQocmVuZGVyU3VyZmFjZSk7Ci0gICAg
ICAgIHJlbmRlclN1cmZhY2UtPmRhbWFnZVRyYWNrZXIoKS0+dXBkYXRlRGFtYWdlVHJhY2tpbmdT
dGF0ZShyZW5kZXJTdXJmYWNlLT5sYXllckxpc3QoKSwgcmVuZGVyU3VyZmFjZUxheWVyLT5pZCgp
LCByZW5kZXJTdXJmYWNlLT5zdXJmYWNlUHJvcGVydHlDaGFuZ2VkT25seUZyb21EZXNjZW5kYW50
KCksIHJlbmRlclN1cmZhY2UtPmNvbnRlbnRSZWN0KCksIHJlbmRlclN1cmZhY2VMYXllci0+bWFz
a0xheWVyKCkpOworICAgICAgICByZW5kZXJTdXJmYWNlLT5kYW1hZ2VUcmFja2VyKCktPnVwZGF0
ZURhbWFnZVRyYWNraW5nU3RhdGUocmVuZGVyU3VyZmFjZS0+bGF5ZXJMaXN0KCksIHJlbmRlclN1
cmZhY2VMYXllci0+aWQoKSwgcmVuZGVyU3VyZmFjZS0+c3VyZmFjZVByb3BlcnR5Q2hhbmdlZE9u
bHlGcm9tRGVzY2VuZGFudCgpLCByZW5kZXJTdXJmYWNlLT5jb250ZW50UmVjdCgpLCByZW5kZXJT
dXJmYWNlTGF5ZXItPm1hc2tMYXllcigpLCByZW5kZXJTdXJmYWNlTGF5ZXItPmZpbHRlcnMoKSk7
CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL0ND
RGFtYWdlVHJhY2tlclRlc3QuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9DQ0Rh
bWFnZVRyYWNrZXJUZXN0LmNwcAppbmRleCAwZmMwYTlmODRjOTUxNjhmMDhjODI2NjNkNTk4ZjE5
NjViMzVjZmFjLi45MmUyNDE3MmE4Y2Q2YjA3OTdmNDc1ODJkMTRjZTc2ODQwZDlhMDUzIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL0NDRGFtYWdlVHJhY2tlclRlc3Qu
Y3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvQ0NEYW1hZ2VUcmFja2VyVGVz
dC5jcHAKQEAgLTcwLDcgKzcwLDcgQEAgdm9pZCBlbXVsYXRlRHJhd2luZ09uZUZyYW1lKENDTGF5
ZXJJbXBsKiByb290KQogICAgIC8vIEl0ZXJhdGUgYmFjay10by1mcm9udCwgc28gdGhhdCBkYW1h
Z2UgY29ycmVjdGx5IHByb3BhZ2F0ZXMgZnJvbSBkZXNjZW5kYW50IHN1cmZhY2VzIHRvIGFuY2Vz
dG9ycy4KICAgICBmb3IgKGludCBpID0gcmVuZGVyU3VyZmFjZUxheWVyTGlzdC5zaXplKCkgLSAx
OyBpID49IDA7IC0taSkgewogICAgICAgICBDQ1JlbmRlclN1cmZhY2UqIHRhcmdldFN1cmZhY2Ug
PSByZW5kZXJTdXJmYWNlTGF5ZXJMaXN0W2ldLT5yZW5kZXJTdXJmYWNlKCk7Ci0gICAgICAgIHRh
cmdldFN1cmZhY2UtPmRhbWFnZVRyYWNrZXIoKS0+dXBkYXRlRGFtYWdlVHJhY2tpbmdTdGF0ZSh0
YXJnZXRTdXJmYWNlLT5sYXllckxpc3QoKSwgdGFyZ2V0U3VyZmFjZS0+b3duaW5nTGF5ZXJJZCgp
LCB0YXJnZXRTdXJmYWNlLT5zdXJmYWNlUHJvcGVydHlDaGFuZ2VkT25seUZyb21EZXNjZW5kYW50
KCksIHRhcmdldFN1cmZhY2UtPmNvbnRlbnRSZWN0KCksIHJlbmRlclN1cmZhY2VMYXllckxpc3Rb
aV0tPm1hc2tMYXllcigpKTsKKyAgICAgICAgdGFyZ2V0U3VyZmFjZS0+ZGFtYWdlVHJhY2tlcigp
LT51cGRhdGVEYW1hZ2VUcmFja2luZ1N0YXRlKHRhcmdldFN1cmZhY2UtPmxheWVyTGlzdCgpLCB0
YXJnZXRTdXJmYWNlLT5vd25pbmdMYXllcklkKCksIHRhcmdldFN1cmZhY2UtPnN1cmZhY2VQcm9w
ZXJ0eUNoYW5nZWRPbmx5RnJvbURlc2NlbmRhbnQoKSwgdGFyZ2V0U3VyZmFjZS0+Y29udGVudFJl
Y3QoKSwgcmVuZGVyU3VyZmFjZUxheWVyTGlzdFtpXS0+bWFza0xheWVyKCksIHJlbmRlclN1cmZh
Y2VMYXllckxpc3RbaV0tPmZpbHRlcnMoKSk7CiAgICAgfQogCiAgICAgcm9vdC0+cmVzZXRBbGxD
aGFuZ2VUcmFja2luZ0ZvclN1YnRyZWUoKTsKQEAgLTMxNSw2ICszMTUsMzIgQEAgVEVTVF9GKEND
RGFtYWdlVHJhY2tlclRlc3QsIHZlcmlmeURhbWFnZUZvclRyYW5zZm9ybWVkTGF5ZXIpCiAgICAg
RVhQRUNUX0ZMT0FUX1JFQ1RfRVEoZXhwZWN0ZWRSZWN0LCByb290RGFtYWdlUmVjdCk7CiB9CiAK
K1RFU1RfRihDQ0RhbWFnZVRyYWNrZXJUZXN0LCB2ZXJpZnlEYW1hZ2VGb3JCbHVycmVkU3VyZmFj
ZSkKK3sKKyAgICBPd25QdHI8Q0NMYXllckltcGw+IHJvb3QgPSBjcmVhdGVBbmRTZXRVcFRlc3RU
cmVlV2l0aE9uZVN1cmZhY2UoKTsKKyAgICBDQ0xheWVySW1wbCogY2hpbGQgPSByb290LT5jaGls
ZHJlbigpWzBdLmdldCgpOworCisgICAgRmlsdGVyT3BlcmF0aW9ucyBmaWx0ZXJzOworICAgIGZp
bHRlcnMub3BlcmF0aW9ucygpLmFwcGVuZChCbHVyRmlsdGVyT3BlcmF0aW9uOjpjcmVhdGUoTGVu
Z3RoKDUsIFdlYkNvcmU6OlBlcmNlbnQpLCBGaWx0ZXJPcGVyYXRpb246OkJMVVIpKTsKKyAgICBp
bnQgb3V0c2V0VG9wLCBvdXRzZXRSaWdodCwgb3V0c2V0Qm90dG9tLCBvdXRzZXRMZWZ0OworICAg
IGZpbHRlcnMuZ2V0T3V0c2V0cyhvdXRzZXRUb3AsIG91dHNldFJpZ2h0LCBvdXRzZXRCb3R0b20s
IG91dHNldExlZnQpOworICAgIHJvb3QtPnNldEZpbHRlcnMoZmlsdGVycyk7CisKKyAgICAvLyBT
ZXR0aW5nIHRoZSBmaWx0ZXIgd2lsbCBkYW1hZ2UgdGhlIHdob2xlIHN1cmZhY2UuCisgICAgZW11
bGF0ZURyYXdpbmdPbmVGcmFtZShyb290LmdldCgpKTsKKworICAgIC8vIFNldHRpbmcgdGhlIHVw
ZGF0ZSByZWN0IHNob3VsZCBjYXVzZSB0aGUgY29ycmVzcG9uZGluZyBkYW1hZ2UgdG8gdGhlIHN1
cmZhY2UsIGJsdXJyZWQgYmFzZWQgb24gdGhlIHNpemUgb2YgdGhlIGJsdXIgZmlsdGVyLgorICAg
IGNoaWxkLT5zZXRVcGRhdGVSZWN0KEZsb2F0UmVjdCgxMCwgMTEsIDEyLCAxMykpOworICAgIGVt
dWxhdGVEcmF3aW5nT25lRnJhbWUocm9vdC5nZXQoKSk7CisKKyAgICAvLyBEYW1hZ2UgcG9zaXRp
b24gb24gdGhlIHN1cmZhY2Ugc2hvdWxkIGJlOiBwb3NpdGlvbiBvZiB1cGRhdGVSZWN0ICgxMCwg
MTEpIHJlbGF0aXZlIHRvIHRoZSBjaGlsZCAoMTAwLCAxMDApLCBidXQgZXhwYW5kZWQgYnkgdGhl
IGJsdXIgb3V0c2V0cy4KKyAgICBGbG9hdFJlY3Qgcm9vdERhbWFnZVJlY3QgPSByb290LT5yZW5k
ZXJTdXJmYWNlKCktPmRhbWFnZVRyYWNrZXIoKS0+Y3VycmVudERhbWFnZVJlY3QoKTsKKyAgICBG
bG9hdFJlY3QgZXhwZWN0ZWREYW1hZ2VSZWN0ID0gRmxvYXRSZWN0KDExMCwgMTExLCAxMiwgMTMp
OworICAgIGV4cGVjdGVkRGFtYWdlUmVjdC5tb3ZlKC1vdXRzZXRMZWZ0LCAtb3V0c2V0VG9wKTsK
KyAgICBleHBlY3RlZERhbWFnZVJlY3QuZXhwYW5kKG91dHNldExlZnQgKyBvdXRzZXRSaWdodCwg
b3V0c2V0VG9wICsgb3V0c2V0Qm90dG9tKTsKKyAgICBFWFBFQ1RfRkxPQVRfUkVDVF9FUShleHBl
Y3RlZERhbWFnZVJlY3QsIHJvb3REYW1hZ2VSZWN0KTsKK30KKwogVEVTVF9GKENDRGFtYWdlVHJh
Y2tlclRlc3QsIHZlcmlmeURhbWFnZUZvckFkZGluZ0FuZFJlbW92aW5nTGF5ZXIpCiB7CiAgICAg
T3duUHRyPENDTGF5ZXJJbXBsPiByb290ID0gY3JlYXRlQW5kU2V0VXBUZXN0VHJlZVdpdGhPbmVT
dXJmYWNlKCk7CkBAIC04NzcsNyArOTAzLDcgQEAgVEVTVF9GKENDRGFtYWdlVHJhY2tlclRlc3Qs
IHZlcmlmeURhbWFnZUZvckVtcHR5TGF5ZXJMaXN0KQogICAgIEFTU0VSVF9UUlVFKHJvb3QtPnJl
bmRlclN1cmZhY2UoKSA9PSByb290LT50YXJnZXRSZW5kZXJTdXJmYWNlKCkpOwogICAgIENDUmVu
ZGVyU3VyZmFjZSogdGFyZ2V0U3VyZmFjZSA9IHJvb3QtPnJlbmRlclN1cmZhY2UoKTsKICAgICB0
YXJnZXRTdXJmYWNlLT5jbGVhckxheWVyTGlzdCgpOwotICAgIHRhcmdldFN1cmZhY2UtPmRhbWFn
ZVRyYWNrZXIoKS0+dXBkYXRlRGFtYWdlVHJhY2tpbmdTdGF0ZSh0YXJnZXRTdXJmYWNlLT5sYXll
ckxpc3QoKSwgdGFyZ2V0U3VyZmFjZS0+b3duaW5nTGF5ZXJJZCgpLCBmYWxzZSwgSW50UmVjdCgp
LCAwKTsKKyAgICB0YXJnZXRTdXJmYWNlLT5kYW1hZ2VUcmFja2VyKCktPnVwZGF0ZURhbWFnZVRy
YWNraW5nU3RhdGUodGFyZ2V0U3VyZmFjZS0+bGF5ZXJMaXN0KCksIHRhcmdldFN1cmZhY2UtPm93
bmluZ0xheWVySWQoKSwgZmFsc2UsIEludFJlY3QoKSwgMCwgRmlsdGVyT3BlcmF0aW9ucygpKTsK
IAogICAgIEZsb2F0UmVjdCBkYW1hZ2VSZWN0ID0gdGFyZ2V0U3VyZmFjZS0+ZGFtYWdlVHJhY2tl
cigpLT5jdXJyZW50RGFtYWdlUmVjdCgpOwogICAgIEVYUEVDVF9UUlVFKGRhbWFnZVJlY3QuaXNF
bXB0eSgpKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>