<?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>69284</bug_id>
          
          <creation_ts>2011-10-03 13:04:11 -0700</creation_ts>
          <short_desc>Null dereference in SVGDocumentExtensions::removePendingResource when updating &lt;use&gt;&apos;s href</short_desc>
          <delta_ts>2012-01-21 02:00:55 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>SVG</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Tim Horton">thorton</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>fmalita</cc>
    
    <cc>krit</cc>
    
    <cc>schenney</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>477172</commentid>
    <comment_count>0</comment_count>
      <attachid>109513</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2011-10-03 13:04:11 -0700</bug_when>
    <thetext>Created attachment 109513
reduced repro

&lt;rdar://problem/10213035&gt;

Most likely candidate for regression is http://trac.webkit.org/changeset/85413 but I&apos;m not 100% on that.

Hits the assert in StringImpl::existingHash if in debug mode.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>477173</commentid>
    <comment_count>1</comment_count>
      <attachid>109514</attachid>
    <who name="Tim Horton">thorton</who>
    <bug_when>2011-10-03 13:06:32 -0700</bug_when>
    <thetext>Created attachment 109514
backtrace

Err, actually I&apos;m not seeing that assert get hit. Attaching backtrace.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>505075</commentid>
    <comment_count>2</comment_count>
    <who name="Florin Malita">fmalita</who>
    <bug_when>2011-11-17 12:10:02 -0800</bug_when>
    <thetext>Here&apos;s what appears to be going on:

* because the href target doesn&apos;t have a valid fragment (no &apos;#&apos;), SVGUseElement::buildPendingResource() doesn&apos;t set m_resourceId (nor does it mark the element as having pending resources)
* the filter attribute OTOH does have a valid (missing) target, and it marks the element as having a pending resources on attach
* then SVGUseElement::svgAttributeChanged() only checks whether there are pending resources (appears to assume that the only pending resource can be its href target), and proceeds to attempting to remove the uninitialized m_resourceId from the pending resources list

This simple guard takes care of the crash:

--- a/Source/WebCore/svg/SVGUseElement.cpp
+++ b/Source/WebCore/svg/SVGUseElement.cpp
@@ -198,7 +198,7 @@ void SVGUseElement::svgAttributeChanged(const QualifiedName&amp; attrName)
         return;
 
     if (SVGURIReference::isKnownAttribute(attrName)) {
-        if (hasPendingResources()) {
+        if (hasPendingResources() &amp;&amp; !m_resourceId.isEmpty()) {
             OwnPtr&lt;SVGDocumentExtensions::SVGPendingElements&gt; clients(document()-&gt;accessSVGExtensions()-&gt;re
             ASSERT(!clients-&gt;isEmpty());


But there seems to be a more fundamental problem: unless I&apos;m missing something, SVGUseElement assumes that it has only one possible pending resource (xlink:href) - which is not the case. 

Can someone more familiar with the area weigh in? Also, do you think it&apos;s worth submitting the immediate fix (plus a todo note maybe) at this point?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>539774</commentid>
    <comment_count>3</comment_count>
      <attachid>123373</attachid>
    <who name="Florin Malita">fmalita</who>
    <bug_when>2012-01-20 14:03:44 -0800</bug_when>
    <thetext>Created attachment 123373
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>540095</commentid>
    <comment_count>4</comment_count>
      <attachid>123373</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2012-01-21 00:44:24 -0800</bug_when>
    <thetext>Comment on attachment 123373
Patch

Hairy patch, but looks good. r=me!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>540110</commentid>
    <comment_count>5</comment_count>
      <attachid>123373</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-21 02:00:51 -0800</bug_when>
    <thetext>Comment on attachment 123373
Patch

Clearing flags on attachment: 123373

Committed r105573: &lt;http://trac.webkit.org/changeset/105573&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>540111</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-21 02:00:55 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>109513</attachid>
            <date>2011-10-03 13:04:11 -0700</date>
            <delta_ts>2011-10-03 13:04:11 -0700</delta_ts>
            <desc>reduced repro</desc>
            <filename>4-reduced.svg</filename>
            <type>image/svg+xml</type>
            <size>225</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRw
Oi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KPHVzZSBpZD0idSIgeGxpbms6aHJlZj0iI3UiIGZp
bHRlcj0idXJsKCNmaWx0ZXIxKSIvPgo8c2NyaXB0Pgpkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgi
dSIpLnNldEF0dHJpYnV0ZSgieGxpbms6aHJlZiIsICJhIik7Cjwvc2NyaXB0Pgo8L3N2Zz4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>109514</attachid>
            <date>2011-10-03 13:06:32 -0700</date>
            <delta_ts>2011-10-03 13:06:32 -0700</delta_ts>
            <desc>backtrace</desc>
            <filename>crash.log</filename>
            <type>text/plain</type>
            <size>8331</size>
            <attacher name="Tim Horton">thorton</attacher>
            
              <data encoding="base64">UHJvZ3JhbSByZWNlaXZlZCBzaWduYWwgRVhDX0JBRF9BQ0NFU1MsIENvdWxkIG5vdCBhY2Nlc3Mg
bWVtb3J5LgpSZWFzb246IEtFUk5fSU5WQUxJRF9BRERSRVNTIGF0IGFkZHJlc3M6IDB4MDAwMDAw
MDAwMDAwMDAxOAoweDAwMDAwMDAxMDE2M2RmNDggaW4gV1RGOjpTdHJpbmdJbXBsOjpleGlzdGlu
Z0hhc2ggKHRoaXM9MHgwKSBhdCBTdHJpbmdJbXBsLmg6MjQwCjI0MAkgICAgdW5zaWduZWQgZXhp
c3RpbmdIYXNoKCkgY29uc3QgeyBBU1NFUlQobV9oYXNoKTsgcmV0dXJuIG1faGFzaDsgfQooZ2Ri
KSBidAojMCAgMHgwMDAwMDAwMTAxNjNkZjQ4IGluIFdURjo6U3RyaW5nSW1wbDo6ZXhpc3RpbmdI
YXNoICh0aGlzPTB4MCkgYXQgU3RyaW5nSW1wbC5oOjI0MAojMSAgMHgwMDAwMDAwMTAxNjRmYjRk
IGluIFdURjo6QXRvbWljU3RyaW5nSGFzaDo6aGFzaCAoa2V5PUAweDdmZmY1ZmJmYjYzMCkgYXQg
QXRvbWljU3RyaW5nSGFzaC5oOjQwCiMyICAweDAwMDAwMDAxMDI0ZDU1YzUgaW4gV1RGOjpJZGVu
dGl0eUhhc2hUcmFuc2xhdG9yPFdURjo6QXRvbWljU3RyaW5nLCBzdGQ6OnBhaXI8V1RGOjpBdG9t
aWNTdHJpbmcsIFdURjo6SGFzaFNldDxXZWJDb3JlOjpTVkdTdHlsZWRFbGVtZW50KiwgV1RGOjpQ
dHJIYXNoPFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQqPiwgV1RGOjpIYXNoVHJhaXRzPFdlYkNv
cmU6OlNWR1N0eWxlZEVsZW1lbnQqPiA+Kj4sIFdURjo6QXRvbWljU3RyaW5nSGFzaD46Omhhc2gg
KGtleT1AMHg3ZmZmNWZiZmI2MzApIGF0IEhhc2hUYWJsZS5oOjI4MQojMyAgMHgwMDAwMDAwMTAy
NGQ1MjEwIGluIFdURjo6SGFzaFRhYmxlPFdURjo6QXRvbWljU3RyaW5nLCBzdGQ6OnBhaXI8V1RG
OjpBdG9taWNTdHJpbmcsIFdURjo6SGFzaFNldDxXZWJDb3JlOjpTVkdTdHlsZWRFbGVtZW50Kiwg
V1RGOjpQdHJIYXNoPFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQqPiwgV1RGOjpIYXNoVHJhaXRz
PFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQqPiA+Kj4sIFdURjo6UGFpckZpcnN0RXh0cmFjdG9y
PHN0ZDo6cGFpcjxXVEY6OkF0b21pY1N0cmluZywgV1RGOjpIYXNoU2V0PFdlYkNvcmU6OlNWR1N0
eWxlZEVsZW1lbnQqLCBXVEY6OlB0ckhhc2g8V2ViQ29yZTo6U1ZHU3R5bGVkRWxlbWVudCo+LCBX
VEY6Okhhc2hUcmFpdHM8V2ViQ29yZTo6U1ZHU3R5bGVkRWxlbWVudCo+ID4qPiA+LCBXVEY6OkF0
b21pY1N0cmluZ0hhc2gsIFdURjo6UGFpckhhc2hUcmFpdHM8V1RGOjpIYXNoVHJhaXRzPFdURjo6
QXRvbWljU3RyaW5nPiwgV1RGOjpIYXNoVHJhaXRzPFdURjo6SGFzaFNldDxXZWJDb3JlOjpTVkdT
dHlsZWRFbGVtZW50KiwgV1RGOjpQdHJIYXNoPFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQqPiwg
V1RGOjpIYXNoVHJhaXRzPFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQqPiA+Kj4gPiwgV1RGOjpI
YXNoVHJhaXRzPFdURjo6QXRvbWljU3RyaW5nPiA+Ojpsb29rdXA8V1RGOjpBdG9taWNTdHJpbmcs
IFdURjo6SWRlbnRpdHlIYXNoVHJhbnNsYXRvcjxXVEY6OkF0b21pY1N0cmluZywgc3RkOjpwYWly
PFdURjo6QXRvbWljU3RyaW5nLCBXVEY6Okhhc2hTZXQ8V2ViQ29yZTo6U1ZHU3R5bGVkRWxlbWVu
dCosIFdURjo6UHRySGFzaDxXZWJDb3JlOjpTVkdTdHlsZWRFbGVtZW50Kj4sIFdURjo6SGFzaFRy
YWl0czxXZWJDb3JlOjpTVkdTdHlsZWRFbGVtZW50Kj4gPio+LCBXVEY6OkF0b21pY1N0cmluZ0hh
c2g+ID4gKHRoaXM9MHgxMGMyMTc3MzgsIGtleT1AMHg3ZmZmNWZiZmI2MzApIGF0IEhhc2hUYWJs
ZS5oOjQ4NQojNCAgMHgwMDAwMDAwMTAyNGQ4YTJiIGluIFdURjo6SGFzaFRhYmxlPFdURjo6QXRv
bWljU3RyaW5nLCBzdGQ6OnBhaXI8V1RGOjpBdG9taWNTdHJpbmcsIFdURjo6SGFzaFNldDxXZWJD
b3JlOjpTVkdTdHlsZWRFbGVtZW50KiwgV1RGOjpQdHJIYXNoPFdlYkNvcmU6OlNWR1N0eWxlZEVs
ZW1lbnQqPiwgV1RGOjpIYXNoVHJhaXRzPFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQqPiA+Kj4s
IFdURjo6UGFpckZpcnN0RXh0cmFjdG9yPHN0ZDo6cGFpcjxXVEY6OkF0b21pY1N0cmluZywgV1RG
OjpIYXNoU2V0PFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQqLCBXVEY6OlB0ckhhc2g8V2ViQ29y
ZTo6U1ZHU3R5bGVkRWxlbWVudCo+LCBXVEY6Okhhc2hUcmFpdHM8V2ViQ29yZTo6U1ZHU3R5bGVk
RWxlbWVudCo+ID4qPiA+LCBXVEY6OkF0b21pY1N0cmluZ0hhc2gsIFdURjo6UGFpckhhc2hUcmFp
dHM8V1RGOjpIYXNoVHJhaXRzPFdURjo6QXRvbWljU3RyaW5nPiwgV1RGOjpIYXNoVHJhaXRzPFdU
Rjo6SGFzaFNldDxXZWJDb3JlOjpTVkdTdHlsZWRFbGVtZW50KiwgV1RGOjpQdHJIYXNoPFdlYkNv
cmU6OlNWR1N0eWxlZEVsZW1lbnQqPiwgV1RGOjpIYXNoVHJhaXRzPFdlYkNvcmU6OlNWR1N0eWxl
ZEVsZW1lbnQqPiA+Kj4gPiwgV1RGOjpIYXNoVHJhaXRzPFdURjo6QXRvbWljU3RyaW5nPiA+Ojpj
b250YWluczxXVEY6OkF0b21pY1N0cmluZywgV1RGOjpJZGVudGl0eUhhc2hUcmFuc2xhdG9yPFdU
Rjo6QXRvbWljU3RyaW5nLCBzdGQ6OnBhaXI8V1RGOjpBdG9taWNTdHJpbmcsIFdURjo6SGFzaFNl
dDxXZWJDb3JlOjpTVkdTdHlsZWRFbGVtZW50KiwgV1RGOjpQdHJIYXNoPFdlYkNvcmU6OlNWR1N0
eWxlZEVsZW1lbnQqPiwgV1RGOjpIYXNoVHJhaXRzPFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQq
PiA+Kj4sIFdURjo6QXRvbWljU3RyaW5nSGFzaD4gPiAodGhpcz0weDEwYzIxNzczOCwga2V5PUAw
eDdmZmY1ZmJmYjYzMCkgYXQgSGFzaFRhYmxlLmg6ODA1CiM1ICAweDAwMDAwMDAxMDI0ZDg5ZGQg
aW4gV1RGOjpIYXNoVGFibGU8V1RGOjpBdG9taWNTdHJpbmcsIHN0ZDo6cGFpcjxXVEY6OkF0b21p
Y1N0cmluZywgV1RGOjpIYXNoU2V0PFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQqLCBXVEY6OlB0
ckhhc2g8V2ViQ29yZTo6U1ZHU3R5bGVkRWxlbWVudCo+LCBXVEY6Okhhc2hUcmFpdHM8V2ViQ29y
ZTo6U1ZHU3R5bGVkRWxlbWVudCo+ID4qPiwgV1RGOjpQYWlyRmlyc3RFeHRyYWN0b3I8c3RkOjpw
YWlyPFdURjo6QXRvbWljU3RyaW5nLCBXVEY6Okhhc2hTZXQ8V2ViQ29yZTo6U1ZHU3R5bGVkRWxl
bWVudCosIFdURjo6UHRySGFzaDxXZWJDb3JlOjpTVkdTdHlsZWRFbGVtZW50Kj4sIFdURjo6SGFz
aFRyYWl0czxXZWJDb3JlOjpTVkdTdHlsZWRFbGVtZW50Kj4gPio+ID4sIFdURjo6QXRvbWljU3Ry
aW5nSGFzaCwgV1RGOjpQYWlySGFzaFRyYWl0czxXVEY6Okhhc2hUcmFpdHM8V1RGOjpBdG9taWNT
dHJpbmc+LCBXVEY6Okhhc2hUcmFpdHM8V1RGOjpIYXNoU2V0PFdlYkNvcmU6OlNWR1N0eWxlZEVs
ZW1lbnQqLCBXVEY6OlB0ckhhc2g8V2ViQ29yZTo6U1ZHU3R5bGVkRWxlbWVudCo+LCBXVEY6Okhh
c2hUcmFpdHM8V2ViQ29yZTo6U1ZHU3R5bGVkRWxlbWVudCo+ID4qPiA+LCBXVEY6Okhhc2hUcmFp
dHM8V1RGOjpBdG9taWNTdHJpbmc+ID46OmNvbnRhaW5zICh0aGlzPTB4MTBjMjE3NzM4LCBrZXk9
QDB4N2ZmZjVmYmZiNjMwKSBhdCBIYXNoVGFibGUuaDozMjkKIzYgIDB4MDAwMDAwMDEwMjRkNDY1
ZCBpbiBXVEY6Okhhc2hNYXA8V1RGOjpBdG9taWNTdHJpbmcsIFdURjo6SGFzaFNldDxXZWJDb3Jl
OjpTVkdTdHlsZWRFbGVtZW50KiwgV1RGOjpQdHJIYXNoPFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1l
bnQqPiwgV1RGOjpIYXNoVHJhaXRzPFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQqPiA+KiwgV1RG
OjpBdG9taWNTdHJpbmdIYXNoLCBXVEY6Okhhc2hUcmFpdHM8V1RGOjpBdG9taWNTdHJpbmc+LCBX
VEY6Okhhc2hUcmFpdHM8V1RGOjpIYXNoU2V0PFdlYkNvcmU6OlNWR1N0eWxlZEVsZW1lbnQqLCBX
VEY6OlB0ckhhc2g8V2ViQ29yZTo6U1ZHU3R5bGVkRWxlbWVudCo+LCBXVEY6Okhhc2hUcmFpdHM8
V2ViQ29yZTo6U1ZHU3R5bGVkRWxlbWVudCo+ID4qPiA+Ojpjb250YWlucyAodGhpcz0weDEwYzIx
NzczOCwga2V5PUAweDdmZmY1ZmJmYjYzMCkgYXQgSGFzaE1hcC5oOjIwNwojNyAgMHgwMDAwMDAw
MTAyNGQzOGM3IGluIFdlYkNvcmU6OlNWR0RvY3VtZW50RXh0ZW5zaW9uczo6cmVtb3ZlUGVuZGlu
Z1Jlc291cmNlICh0aGlzPTB4MTBjMjE3NjEwLCBpZD1AMHg3ZmZmNWZiZmI2MzApIGF0IC9Wb2x1
bWVzL0RhdGEvU2hhcmVkL3NyYy9XZWJLaXQvT3BlblNvdXJjZS9Tb3VyY2UvV2ViQ29yZS9zdmcv
U1ZHRG9jdW1lbnRFeHRlbnNpb25zLmNwcDoyNzgKIzggIDB4MDAwMDAwMDEwMjViZDU1ZiBpbiBX
ZWJDb3JlOjpTVkdVc2VFbGVtZW50OjpzdmdBdHRyaWJ1dGVDaGFuZ2VkICh0aGlzPTB4MTBjMjNj
YzcwLCBhdHRyTmFtZT1AMHgxMGMyM2MwZDApIGF0IC9Wb2x1bWVzL0RhdGEvU2hhcmVkL3NyYy9X
ZWJLaXQvT3BlblNvdXJjZS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVXNlRWxlbWVudC5jcHA6MjAz
CiM5ICAweDAwMDAwMDAxMDI0ZTJhYTQgaW4gV2ViQ29yZTo6U1ZHRWxlbWVudDo6YXR0cmlidXRl
Q2hhbmdlZCAodGhpcz0weDEwYzIzY2M3MCwgYXR0cj0weDEwYzIzYzBhMCwgcHJlc2VydmVEZWNs
cz1mYWxzZSkgYXQgL1ZvbHVtZXMvRGF0YS9TaGFyZWQvc3JjL1dlYktpdC9PcGVuU291cmNlL1Nv
dXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGVtZW50LmNwcDozODQKIzEwIDB4MDAwMDAwMDEwMTc1MjFi
YiBpbiBXZWJDb3JlOjpFbGVtZW50OjpzZXRBdHRyaWJ1dGUgKHRoaXM9MHgxMGMyM2NjNzAsIG5h
bWU9QDB4N2ZmZjVmYmZiODM4LCB2YWx1ZT1AMHg3ZmZmNWZiZmI4MzAsIGVjPUAweDdmZmY1ZmJm
Yjg5YykgYXQgL1ZvbHVtZXMvRGF0YS9TaGFyZWQvc3JjL1dlYktpdC9PcGVuU291cmNlL1NvdXJj
ZS9XZWJDb3JlL2RvbS9FbGVtZW50LmNwcDo2NDQKIzExIDB4MDAwMDAwMDEwMWMzMTZjOCBpbiBX
ZWJDb3JlOjpqc0VsZW1lbnRQcm90b3R5cGVGdW5jdGlvblNldEF0dHJpYnV0ZSAoZXhlYz0weDEx
MDQ4MzA4OCkgYXQgL1ZvbHVtZXMvRGF0YS9TaGFyZWQvc3JjL1dlYktpdC9PcGVuU291cmNlL1dl
YktpdEJ1aWxkL0RlYnVnL0Rlcml2ZWRTb3VyY2VzL1dlYkNvcmUvSlNFbGVtZW50LmNwcDoxNjU3
CiMxMiAweDAwMDAzMzQ5ZGJhMDExZjggaW4gPz8gKCkKIzEzIDB4MDAwMDAwMDEwMDJlNWZmOSBp
biBKU0M6OkpJVENvZGU6OmV4ZWN1dGUgKHRoaXM9MHgxMDY3ZmZmMzgsIHJlZ2lzdGVyRmlsZT0w
eDEwYzIxM2UyOCwgY2FsbEZyYW1lPTB4MTEwNDgzMDM4LCBnbG9iYWxEYXRhPTB4MTBlMDBjODAw
KSBhdCBKSVRDb2RlLmg6MTAzCiMxNCAweDAwMDAwMDAxMDAyZTFlNmQgaW4gSlNDOjpJbnRlcnBy
ZXRlcjo6ZXhlY3V0ZSAodGhpcz0weDEwYzIxM2UxMCwgcHJvZ3JhbT0weDEwNjdmZmYyMCwgY2Fs
bEZyYW1lPTB4MTA2N2ZiOTI4LCBzY29wZUNoYWluPTB4MTA2N2Y3ZjIwLCB0aGlzT2JqPTB4MTA2
N2Y3ZmEwKSBhdCAvVm9sdW1lcy9EYXRhL1NoYXJlZC9zcmMvV2ViS2l0L09wZW5Tb3VyY2UvU291
cmNlL0phdmFTY3JpcHRDb3JlL2ludGVycHJldGVyL0ludGVycHJldGVyLmNwcDo4OTcKIzE1IDB4
MDAwMDAwMDEwMDI2NTczYSBpbiBKU0M6OmV2YWx1YXRlIChleGVjPTB4MTA2N2ZiOTI4LCBzY29w
ZUNoYWluPTB4MTA2N2Y3ZjIwLCBzb3VyY2U9QDB4N2ZmZjVmYmZjYzAwLCB0aGlzVmFsdWU9e3Ug
PSB7YXNJbnQ2NCA9IDQ0MDM5ODYzMzYsIHB0ciA9IDB4MTA2N2Y3ZmEwLCBhc0JpdHMgPSB7cGF5
bG9hZCA9IDEwOTAxOTA0MCwgdGFnID0gMX19fSwgcmV0dXJuZWRFeGNlcHRpb249MHg3ZmZmNWZi
ZmNhMDApIGF0IC9Wb2x1bWVzL0RhdGEvU2hhcmVkL3NyYy9XZWJLaXQvT3BlblNvdXJjZS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9Db21wbGV0aW9uLmNwcDo3MAojMTYgMHgwMDAwMDAw
MTAxZDNkODMxIGluIFdlYkNvcmU6OkpTTWFpblRocmVhZEV4ZWNTdGF0ZTo6ZXZhbHVhdGUgKGV4
ZWM9MHgxMDY3ZmI5MjgsIGNoYWluPTB4MTA2N2Y3ZjIwLCBzb3VyY2U9QDB4N2ZmZjVmYmZjYzAw
LCB0aGlzVmFsdWU9e3UgPSB7YXNJbnQ2NCA9IDQ0MDM5ODYzMzYsIHB0ciA9IDB4MTA2N2Y3ZmEw
LCBhc0JpdHMgPSB7cGF5bG9hZCA9IDEwOTAxOTA0MCwgdGFnID0gMX19fSwgZXhjZXB0aW9uPTB4
N2ZmZjVmYmZjYTAwKSBhdCBKU01haW5UaHJlYWRFeGVjU3RhdGUuaDo1OAojMTcgMHgwMDAwMDAw
MTAyM2I3NzBmIGluIFdlYkNvcmU6OlNjcmlwdENvbnRyb2xsZXI6OmV2YWx1YXRlSW5Xb3JsZCAo
dGhpcz0weDEwZDgwYjE2MCwgc291cmNlQ29kZT1AMHg3ZmZmNWZiZmNiZjgsIHdvcmxkPTB4MTBj
MjE0NDMwKSBhdCAvVm9sdW1lcy9EYXRhL1NoYXJlZC9zcmMvV2ViS2l0L09wZW5Tb3VyY2UvU291
cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvU2NyaXB0Q29udHJvbGxlci5jcHA6MTQ1CiMxOCAweDAw
MDAwMDAxMDIzYjc4NzQgaW4gV2ViQ29yZTo6U2NyaXB0Q29udHJvbGxlcjo6ZXZhbHVhdGUgKHRo
aXM9MHgxMGQ4MGIxNjAsIHNvdXJjZUNvZGU9QDB4N2ZmZjVmYmZjYmY4KSBhdCAvVm9sdW1lcy9E
YXRhL1NoYXJlZC9zcmMvV2ViS2l0L09wZW5Tb3VyY2UvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mv
anMvU2NyaXB0Q29udHJvbGxlci5jcHA6MTYyCiMxOSAweDAwMDAwMDAxMDIzY2NkMzMgaW4gV2Vi
Q29yZTo6U2NyaXB0RWxlbWVudDo6ZXhlY3V0ZVNjcmlwdCAodGhpcz0weDEwYzIzMTE1MCwgc291
cmNlQ29kZT1AMHg3ZmZmNWZiZmNiZjgpIGF0IC9Wb2x1bWVzL0RhdGEvU2hhcmVkL3NyYy9XZWJL
aXQvT3BlblNvdXJjZS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5jcHA6MjkyCiMy
MCAweDAwMDAwMDAxMDIzY2I5ZWMgaW4gV2ViQ29yZTo6U2NyaXB0RWxlbWVudDo6cHJlcGFyZVNj
cmlwdCAodGhpcz0weDEwYzIzMTE1MCwgc2NyaXB0U3RhcnRQb3NpdGlvbj1AMHgxMGMyMDQ1NzAs
IHN1cHBvcnRMZWdhY3lUeXBlcz1XZWJDb3JlOjpTY3JpcHRFbGVtZW50OjpBbGxvd0xlZ2FjeVR5
cGVJblR5cGVBdHRyaWJ1dGUpIGF0IC9Wb2x1bWVzL0RhdGEvU2hhcmVkL3NyYy9XZWJLaXQvT3Bl
blNvdXJjZS9Tb3VyY2UvV2ViQ29yZS9kb20vU2NyaXB0RWxlbWVudC5jcHA6MjQ0CiMyMSAweDAw
MDAwMDAxMDI2YjUzMzQgaW4gV2ViQ29yZTo6WE1MRG9jdW1lbnRQYXJzZXI6OmVuZEVsZW1lbnRO
cyAodGhpcz0weDEwYzIwNDQ3MCkgYXQgL1ZvbHVtZXMvRGF0YS9TaGFyZWQvc3JjL1dlYktpdC9P
cGVuU291cmNlL1NvdXJjZS9XZWJDb3JlL3htbC9wYXJzZXIvWE1MRG9jdW1lbnRQYXJzZXJMaWJ4
bWwyLmNwcDo4OTAKIzIyIDB4MDAwMDAwMDEwMjZiNjdjNCBpbiBlbmRFbGVtZW50TnNIYW5kbGVy
IChjbG9zdXJlPTB4MTBjMjE1NmUwKSBhdCAvVm9sdW1lcy9EYXRhL1NoYXJlZC9zcmMvV2ViS2l0
L09wZW5Tb3VyY2UvU291cmNlL1dlYkNvcmUveG1sL3BhcnNlci9YTUxEb2N1bWVudFBhcnNlckxp
YnhtbDIuY3BwOjExMTgKIzIzIDB4MDAwMDdmZmY5NGExOWQ5ZiBpbiB4bWxQYXJzZU5tdG9rZW4g
KCkKIzI0IDB4MDAwMDdmZmY5NGEyNTZmMCBpbiB4bWxQYXJzZUNodW5rICgpCiMyNSAweDAwMDAw
MDAxMDI2YjQwMDEgaW4gV2ViQ29yZTo6WE1MRG9jdW1lbnRQYXJzZXI6OmRvV3JpdGUgKHRoaXM9
MHgxMGMyMDQ0NzAsIHBhcnNlU3RyaW5nPUAweDdmZmY1ZmJmZDA5OCkgYXQgL1ZvbHVtZXMvRGF0
YS9TaGFyZWQvc3JjL1dlYktpdC9PcGVuU291cmNlL1NvdXJjZS9XZWJDb3JlL3htbC9wYXJzZXIv
WE1MRG9jdW1lbnRQYXJzZXJMaWJ4bWwyLmNwcDo2NjYKIzI2IDB4MDAwMDAwMDEwMjZiMWE4NCBp
biBXZWJDb3JlOjpYTUxEb2N1bWVudFBhcnNlcjo6YXBwZW5kICh0aGlzPTB4MTBjMjA0NDcwLCBz
PUAweDdmZmY1ZmJmZDEwMCkgYXQgL1ZvbHVtZXMvRGF0YS9TaGFyZWQvc3JjL1dlYktpdC9PcGVu
U291cmNlL1NvdXJjZS9XZWJDb3JlL3htbC9wYXJzZXIvWE1MRG9jdW1lbnRQYXJzZXIuY3BwOjEz
MAojMjcgMHgwMDAwMDAwMTAxNTVhYjZkIGluIFdlYkNvcmU6OkRlY29kZWREYXRhRG9jdW1lbnRQ
YXJzZXI6OmFwcGVuZEJ5dGVzICh0aGlzPTB4MTBjMjA0NDcwLCB3cml0ZXI9MHgxMGQ4MWZmNzAs
IGRhdGE9MHgxMGE1MDBhYjAgIjxzdmcgeG1sbnM9XCJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2
Z1wiIHhtbG5zOnhsaW5rPVwiaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGlua1wiPlxuPHVzZSBp
ZD1cInVcIiB4bGluazpocmVmPVwiI3VcIiBmaWx0ZXI9XCJ1cmwoI2ZpbHRlcjEpXCIvPlxuPHNj
cmlwdD5cbmRvY3VtZW50LmdldEVsZW1lbnRCeUlkKFwidVwiKS5zZXRBdHRyaWJ1dGUoXCJ4bGlu
azpocmVmXCIiLi4uLCBsZW5ndGg9MjI1KSBhdCAvVm9sdW1lcy9EYXRhL1NoYXJlZC9zcmMvV2Vi
S2l0L09wZW5Tb3VyY2UvU291cmNlL1dlYkNvcmUvZG9tL0RlY29kZWREYXRhRG9jdW1lbnRQYXJz
ZXIuY3BwOjUw
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>123373</attachid>
            <date>2012-01-20 14:03:44 -0800</date>
            <delta_ts>2012-01-21 02:00:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-69284-20120120170343.patch</filename>
            <type>text/plain</type>
            <size>11994</size>
            <attacher name="Florin Malita">fmalita</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA1NTA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzM5ZTliNWIyNDZhZmMy
MDZmOGZhZmYyNTQ5ZTdmYjA0M2VkZTgxNS4uZDg0NzkzN2FmOTZmZDc1YzY0ZDQ0YjU2ZDI2Yjhk
MjhiZjc5ZDIzMSAxMDA3NTUKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDEyLTAxLTIwICBGbG9y
aW4gTWFsaXRhICA8Zm1hbGl0YUBnb29nbGUuY29tPgorCisgICAgICAgIE51bGwgZGVyZWZlcmVu
Y2UgaW4gU1ZHRG9jdW1lbnRFeHRlbnNpb25zOjpyZW1vdmVQZW5kaW5nUmVzb3VyY2Ugd2hlbiB1
cGRhdGluZyA8dXNlPidzIGhyZWYKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTY5Mjg0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgVGVzdDogc3ZnL2N1c3RvbS91c2UtY3Jhc2gtcGVuZGluZy1yZXNvdXJjZS5z
dmcKKworICAgICAgICBUaGUgY3Jhc2ggaXMgY2F1c2VkIGJ5IGFzc3VtcHRpb25zIGluIFNWR1Vz
ZUVsZW1lbnQgdGhhdCB4bGluazpocmVmIGlzIHRoZSBvbmx5CisgICAgICAgIHBlbmRpbmcgcmVz
b3VyY2UuIFRoaXMgcGF0Y2ggYWRkcyBzdXBwb3J0IGZvciBkZWFsaW5nIHdpdGggbXVsdGlwbGUg
cGVuZGluZyByZXNvdXJjZXMuCisKKyAgICAgICAgKiByZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1Jl
c291cmNlQ29udGFpbmVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlclNWR1Jlc291cmNl
Q29udGFpbmVyOjpyZWdpc3RlclJlc291cmNlKToKKyAgICAgICAgKiBzdmcvU1ZHRG9jdW1lbnRF
eHRlbnNpb25zLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlNWR0RvY3VtZW50RXh0ZW5zaW9uczo6
aGFzUGVuZGluZ1Jlc291cmNlKToKKyAgICAgICAgKFdlYkNvcmU6OlNWR0RvY3VtZW50RXh0ZW5z
aW9uczo6aXNFbGVtZW50UGVuZGluZ1Jlc291cmNlcyk6CisgICAgICAgIChXZWJDb3JlOjpTVkdE
b2N1bWVudEV4dGVuc2lvbnM6OmlzRWxlbWVudFBlbmRpbmdSZXNvdXJjZSk6CisgICAgICAgIChX
ZWJDb3JlOjpTVkdEb2N1bWVudEV4dGVuc2lvbnM6OnJlbW92ZVBlbmRpbmdSZXNvdXJjZUZvckVs
ZW1lbnQpOgorICAgICAgICAqIHN2Zy9TVkdEb2N1bWVudEV4dGVuc2lvbnMuaDoKKyAgICAgICAg
KiBzdmcvU1ZHU3R5bGVkRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdTdHlsZWRF
bGVtZW50OjpidWlsZFBlbmRpbmdSZXNvdXJjZXNJZk5lZWRlZCk6CisgICAgICAgIChXZWJDb3Jl
OjpTVkdTdHlsZWRFbGVtZW50OjpjbGVhckhhc1BlbmRpbmdSZXNvdXJjZXNJZlBvc3NpYmxlKToK
KyAgICAgICAgUmVuYW1lZCBTVkdEb2N1bWVudEV4dGVuc2lvbnM6Omhhc1BlbmRpbmdSZXNvdXJj
ZXMgLT4gUmVuYW1lZCBTVkdEb2N1bWVudEV4dGVuc2lvbnM6Omhhc1BlbmRpbmdSZXNvdXJjZS4K
KyAgICAgICAgUmVuYW1lZCBTVkdEb2N1bWVudEV4dGVuc2lvbnM6OmlzRWxlbWVudEluUGVuZGlu
Z1Jlc291cmNlcyAtPiBTVkdEb2N1bWVudEV4dGVuc2lvbnM6OmlzRWxlbWVudFBlbmRpbmdSZXNv
dXJjZXMuCisgICAgICAgIEFkZGVkIHN1cHBvcnQgZm9yIHF1ZXJ5aW5nIGFuZCByZW1vdmluZyBw
ZW5kaW5nIHJlc291cmNlcyBmb3IgYSBzcGVjaWZpYyBlbGVtZW50LgorCisgICAgICAgICogc3Zn
L1NWR1VzZUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6U1ZHVXNlRWxlbWVudDo6c3Zn
QXR0cmlidXRlQ2hhbmdlZCk6CisgICAgICAgIChXZWJDb3JlOjpTVkdVc2VFbGVtZW50OjpidWls
ZFBlbmRpbmdSZXNvdXJjZSk6CisgICAgICAgIFJlZmFjdG9yZWQgdG8gc3VwcG9ydCBtdWx0aXBs
ZSBwZW5kaW5nIHJlc291cmNlcy4KKwogMjAxMi0wMS0yMCAgS2ludWtvIFlhc3VkYSAgPGtpbnVr
b0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgQWRkIERhdGFUcmFuc2Zlckl0ZW1zIHN1cHBvcnQg
Zm9yIGRyYWctYW5kLWRyb3AnZWQgZmlsZXMgYW5kIHRleHRzCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvc3ZnL1JlbmRlclNWR1Jlc291cmNlQ29udGFpbmVyLmNwcCBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHUmVzb3VyY2VDb250YWluZXIuY3Bw
CmluZGV4IDY4ZTYwZWE3OGJkOWZiYjMxYTcxMDUzOWU3ODFkZTg5ZGE1NGZiZDAuLjVhZGIyOTk1
MDBmZTYzMTM1YjVjYmFiNDU5ZjllOTk1MzdkNzU2YzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJD
b3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHUmVzb3VyY2VDb250YWluZXIuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3JlbmRlcmluZy9zdmcvUmVuZGVyU1ZHUmVzb3VyY2VDb250YWluZXIuY3Bw
CkBAIC0xNDcsNyArMTQ3LDcgQEAgdm9pZCBSZW5kZXJTVkdSZXNvdXJjZUNvbnRhaW5lcjo6cmVt
b3ZlQ2xpZW50KFJlbmRlck9iamVjdCogY2xpZW50KQogdm9pZCBSZW5kZXJTVkdSZXNvdXJjZUNv
bnRhaW5lcjo6cmVnaXN0ZXJSZXNvdXJjZSgpCiB7CiAgICAgU1ZHRG9jdW1lbnRFeHRlbnNpb25z
KiBleHRlbnNpb25zID0gc3ZnRXh0ZW5zaW9uc0Zyb21Ob2RlKG5vZGUoKSk7Ci0gICAgaWYgKCFl
eHRlbnNpb25zLT5oYXNQZW5kaW5nUmVzb3VyY2VzKG1faWQpKSB7CisgICAgaWYgKCFleHRlbnNp
b25zLT5oYXNQZW5kaW5nUmVzb3VyY2UobV9pZCkpIHsKICAgICAgICAgZXh0ZW5zaW9ucy0+YWRk
UmVzb3VyY2UobV9pZCwgdGhpcyk7CiAgICAgICAgIHJldHVybjsKICAgICB9CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRG9jdW1lbnRFeHRlbnNpb25zLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3N2Zy9TVkdEb2N1bWVudEV4dGVuc2lvbnMuY3BwCmluZGV4IGQwNmZlYWFiMzc5OTIy
ZWQxNTNhNzM3NjkzM2Y1Y2RjNzUyMTg0NzYuLjFkZDYxNjA4Y2FhNTQwZjNiN2Q3NmYxNGVkYWRi
OTEwZWJjZDc5MzUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdEb2N1bWVudEV4
dGVuc2lvbnMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdEb2N1bWVudEV4dGVuc2lv
bnMuY3BwCkBAIC0yMTgsNyArMjE4LDcgQEAgdm9pZCBTVkdEb2N1bWVudEV4dGVuc2lvbnM6OmFk
ZFBlbmRpbmdSZXNvdXJjZShjb25zdCBBdG9taWNTdHJpbmcmIGlkLCBTVkdTdHlsZWQKICAgICBl
bGVtZW50LT5zZXRIYXNQZW5kaW5nUmVzb3VyY2VzKCk7CiB9CiAKLWJvb2wgU1ZHRG9jdW1lbnRF
eHRlbnNpb25zOjpoYXNQZW5kaW5nUmVzb3VyY2VzKGNvbnN0IEF0b21pY1N0cmluZyYgaWQpIGNv
bnN0Citib29sIFNWR0RvY3VtZW50RXh0ZW5zaW9uczo6aGFzUGVuZGluZ1Jlc291cmNlKGNvbnN0
IEF0b21pY1N0cmluZyYgaWQpIGNvbnN0CiB7CiAgICAgaWYgKGlkLmlzRW1wdHkoKSkKICAgICAg
ICAgcmV0dXJuIGZhbHNlOwpAQCAtMjI2LDcgKzIyNiw3IEBAIGJvb2wgU1ZHRG9jdW1lbnRFeHRl
bnNpb25zOjpoYXNQZW5kaW5nUmVzb3VyY2VzKGNvbnN0IEF0b21pY1N0cmluZyYgaWQpIGNvbnN0
CiAgICAgcmV0dXJuIG1fcGVuZGluZ1Jlc291cmNlcy5jb250YWlucyhpZCk7CiB9CiAKLWJvb2wg
U1ZHRG9jdW1lbnRFeHRlbnNpb25zOjppc0VsZW1lbnRJblBlbmRpbmdSZXNvdXJjZXMoU1ZHU3R5
bGVkRWxlbWVudCogZWxlbWVudCkgY29uc3QKK2Jvb2wgU1ZHRG9jdW1lbnRFeHRlbnNpb25zOjpp
c0VsZW1lbnRQZW5kaW5nUmVzb3VyY2VzKFNWR1N0eWxlZEVsZW1lbnQqIGVsZW1lbnQpIGNvbnN0
CiB7CiAgICAgLy8gVGhpcyBhbGdvcml0aG0gdGFrZXMgdGltZSBwcm9wb3J0aW9uYWwgdG8gdGhl
IG51bWJlciBvZiBwZW5kaW5nIHJlc291cmNlcyBhbmQgbmVlZCBub3QuCiAgICAgLy8gSWYgcGVy
Zm9ybWFuY2UgYmVjb21lcyBhbiBpc3N1ZSB3ZSBjYW4ga2VlcCBhIGNvdW50ZWQgc2V0IG9mIGVs
ZW1lbnRzIGFuZCBhbnN3ZXIgdGhlIHF1ZXN0aW9uIGVmZmljaWVudGx5LgpAQCAtMjQ0LDYgKzI0
NCwxNiBAQCBib29sIFNWR0RvY3VtZW50RXh0ZW5zaW9uczo6aXNFbGVtZW50SW5QZW5kaW5nUmVz
b3VyY2VzKFNWR1N0eWxlZEVsZW1lbnQqIGVsZW1lbgogICAgIHJldHVybiBmYWxzZTsKIH0KIAor
Ym9vbCBTVkdEb2N1bWVudEV4dGVuc2lvbnM6OmlzRWxlbWVudFBlbmRpbmdSZXNvdXJjZShTVkdT
dHlsZWRFbGVtZW50KiBlbGVtZW50LCBjb25zdCBBdG9taWNTdHJpbmcmIGlkKSBjb25zdAorewor
ICAgIEFTU0VSVChlbGVtZW50KTsKKworICAgIGlmICghaGFzUGVuZGluZ1Jlc291cmNlKGlkKSkK
KyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgcmV0dXJuIG1fcGVuZGluZ1Jlc291cmNlcy5n
ZXQoaWQpLT5jb250YWlucyhlbGVtZW50KTsKK30KKwogdm9pZCBTVkdEb2N1bWVudEV4dGVuc2lv
bnM6OnJlbW92ZUVsZW1lbnRGcm9tUGVuZGluZ1Jlc291cmNlcyhTVkdTdHlsZWRFbGVtZW50KiBl
bGVtZW50KQogewogICAgIEFTU0VSVChlbGVtZW50KTsKQEAgLTI3Nyw2ICsyODcsMTkgQEAgUGFz
c093blB0cjxTVkdEb2N1bWVudEV4dGVuc2lvbnM6OlNWR1BlbmRpbmdFbGVtZW50cz4gU1ZHRG9j
dW1lbnRFeHRlbnNpb25zOjpyZW0KICAgICByZXR1cm4gYWRvcHRQdHIobV9wZW5kaW5nUmVzb3Vy
Y2VzLnRha2UoaWQpKTsKIH0KIAordm9pZCBTVkdEb2N1bWVudEV4dGVuc2lvbnM6OnJlbW92ZVBl
bmRpbmdSZXNvdXJjZUZvckVsZW1lbnQoY29uc3QgQXRvbWljU3RyaW5nJiBpZCwgU1ZHU3R5bGVk
RWxlbWVudCogZWxlbWVudCkKK3sKKyAgICBBU1NFUlQoZWxlbWVudCk7CisgICAgQVNTRVJUKG1f
cGVuZGluZ1Jlc291cmNlcy5jb250YWlucyhpZCkpOworCisgICAgU1ZHUGVuZGluZ0VsZW1lbnRz
KiBlbGVtZW50cyA9IG1fcGVuZGluZ1Jlc291cmNlcy5nZXQoaWQpOworICAgIGVsZW1lbnRzLT5y
ZW1vdmUoZWxlbWVudCk7CisgICAgaWYgKGVsZW1lbnRzLT5pc0VtcHR5KCkpCisgICAgICAgIHJl
bW92ZVBlbmRpbmdSZXNvdXJjZShpZCk7CisKKyAgICBlbGVtZW50LT5jbGVhckhhc1BlbmRpbmdS
ZXNvdXJjZXNJZlBvc3NpYmxlKCk7Cit9CisKIH0KIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9zdmcvU1ZHRG9jdW1lbnRFeHRlbnNpb25zLmggYi9Tb3VyY2UvV2ViQ29yZS9z
dmcvU1ZHRG9jdW1lbnRFeHRlbnNpb25zLmgKaW5kZXggNGFiNWYxNGUwNGIzMGM5NzM0ZTQ0YWY3
MGU0NTczNWM4MjYzNTg2ZS4uNDU5ZmYwNjQ3NTE1ZmVhY2M5MTRhMjNjYmUyM2FhN2MzYTAyMTY4
NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3ZnL1NWR0RvY3VtZW50RXh0ZW5zaW9ucy5o
CisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdEb2N1bWVudEV4dGVuc2lvbnMuaApAQCAtODAs
MTAgKzgwLDEyIEBAIHB1YmxpYzoKICAgICAvLyB3aGljaCBhcmUgcmVmZXJlbmNlZCBieSBhbnkg
b2JqZWN0IGluIHRoZSBTVkcgZG9jdW1lbnQsIGJ1dCBkbyBOT1QgZXhpc3QgeWV0LgogICAgIC8v
IEZvciBpbnN0YW5jZSwgZHluYW1pY2FsbHkgYnVpbGQgZ3JhZGllbnRzIC8gcGF0dGVybnMgLyBj
bGlwcGVycy4uLgogICAgIHZvaWQgYWRkUGVuZGluZ1Jlc291cmNlKGNvbnN0IEF0b21pY1N0cmlu
ZyYgaWQsIFNWR1N0eWxlZEVsZW1lbnQqKTsKLSAgICBib29sIGhhc1BlbmRpbmdSZXNvdXJjZXMo
Y29uc3QgQXRvbWljU3RyaW5nJiBpZCkgY29uc3Q7Ci0gICAgYm9vbCBpc0VsZW1lbnRJblBlbmRp
bmdSZXNvdXJjZXMoU1ZHU3R5bGVkRWxlbWVudCopIGNvbnN0OworICAgIGJvb2wgaGFzUGVuZGlu
Z1Jlc291cmNlKGNvbnN0IEF0b21pY1N0cmluZyYgaWQpIGNvbnN0OworICAgIGJvb2wgaXNFbGVt
ZW50UGVuZGluZ1Jlc291cmNlcyhTVkdTdHlsZWRFbGVtZW50KikgY29uc3Q7CisgICAgYm9vbCBp
c0VsZW1lbnRQZW5kaW5nUmVzb3VyY2UoU1ZHU3R5bGVkRWxlbWVudCosIGNvbnN0IEF0b21pY1N0
cmluZyYgaWQpIGNvbnN0OwogICAgIHZvaWQgcmVtb3ZlRWxlbWVudEZyb21QZW5kaW5nUmVzb3Vy
Y2VzKFNWR1N0eWxlZEVsZW1lbnQqKTsKICAgICBQYXNzT3duUHRyPFNWR1BlbmRpbmdFbGVtZW50
cz4gcmVtb3ZlUGVuZGluZ1Jlc291cmNlKGNvbnN0IEF0b21pY1N0cmluZyYgaWQpOworICAgIHZv
aWQgcmVtb3ZlUGVuZGluZ1Jlc291cmNlRm9yRWxlbWVudChjb25zdCBBdG9taWNTdHJpbmcmIGlk
LCBTVkdTdHlsZWRFbGVtZW50Kik7CiB9OwogCiB9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9zdmcvU1ZHU3R5bGVkRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHU3R5bGVk
RWxlbWVudC5jcHAKaW5kZXggMTQ4MDM0MDFjODdhNDIyMGU2MTcxMDk5ZmQxNmM0MDg3MDAzMGEx
OC4uOTY4OTlmNDkyMTE4MGMyYTQ3MmI4YWNlMTA2NzNhYTQyMTQxYjFhMCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvc3ZnL1NWR1N0eWxlZEVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3N2Zy9TVkdTdHlsZWRFbGVtZW50LmNwcApAQCAtMzc5LDcgKzM3OSw3IEBAIHZvaWQgU1ZH
U3R5bGVkRWxlbWVudDo6YnVpbGRQZW5kaW5nUmVzb3VyY2VzSWZOZWVkZWQoKQogCiAgICAgU1ZH
RG9jdW1lbnRFeHRlbnNpb25zKiBleHRlbnNpb25zID0gZG9jdW1lbnQtPmFjY2Vzc1NWR0V4dGVu
c2lvbnMoKTsKICAgICBTdHJpbmcgcmVzb3VyY2VJZCA9IGdldElkQXR0cmlidXRlKCk7Ci0gICAg
aWYgKCFleHRlbnNpb25zLT5oYXNQZW5kaW5nUmVzb3VyY2VzKHJlc291cmNlSWQpKQorICAgIGlm
ICghZXh0ZW5zaW9ucy0+aGFzUGVuZGluZ1Jlc291cmNlKHJlc291cmNlSWQpKQogICAgICAgICBy
ZXR1cm47CiAKICAgICBPd25QdHI8U1ZHRG9jdW1lbnRFeHRlbnNpb25zOjpTVkdQZW5kaW5nRWxl
bWVudHM+IGNsaWVudHMoZXh0ZW5zaW9ucy0+cmVtb3ZlUGVuZGluZ1Jlc291cmNlKHJlc291cmNl
SWQpKTsKQEAgLTQ2Myw3ICs0NjMsNyBAQCB2b2lkIFNWR1N0eWxlZEVsZW1lbnQ6OnNldEhhc1Bl
bmRpbmdSZXNvdXJjZXMoKQogCiB2b2lkIFNWR1N0eWxlZEVsZW1lbnQ6OmNsZWFySGFzUGVuZGlu
Z1Jlc291cmNlc0lmUG9zc2libGUoKQogewotICAgIGlmICghZG9jdW1lbnQoKS0+YWNjZXNzU1ZH
RXh0ZW5zaW9ucygpLT5pc0VsZW1lbnRJblBlbmRpbmdSZXNvdXJjZXModGhpcykpCisgICAgaWYg
KCFkb2N1bWVudCgpLT5hY2Nlc3NTVkdFeHRlbnNpb25zKCktPmlzRWxlbWVudFBlbmRpbmdSZXNv
dXJjZXModGhpcykpCiAgICAgICAgIGVuc3VyZVJhcmVTVkdEYXRhKCktPnNldEhhc1BlbmRpbmdS
ZXNvdXJjZXMoZmFsc2UpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZH
VXNlRWxlbWVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdmcvU1ZHVXNlRWxlbWVudC5jcHAKaW5k
ZXggNTVmNzBmNDUzMWQyYTg0YTA4NDJjNTBmNmZmNjg3ODYyZGNlNDQyZS4uMjcyZTAxZDM4ZjQ5
YmY5N2I0OTc3NmQ2ZTI2ZWQzNjM2ZTEzYTRmZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
c3ZnL1NWR1VzZUVsZW1lbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N2Zy9TVkdVc2VFbGVt
ZW50LmNwcApAQCAtMTk4LDE4ICsxOTgsMTAgQEAgdm9pZCBTVkdVc2VFbGVtZW50OjpzdmdBdHRy
aWJ1dGVDaGFuZ2VkKGNvbnN0IFF1YWxpZmllZE5hbWUmIGF0dHJOYW1lKQogICAgICAgICByZXR1
cm47CiAKICAgICBpZiAoU1ZHVVJJUmVmZXJlbmNlOjppc0tub3duQXR0cmlidXRlKGF0dHJOYW1l
KSkgewotICAgICAgICBpZiAoaGFzUGVuZGluZ1Jlc291cmNlcygpKSB7Ci0gICAgICAgICAgICBP
d25QdHI8U1ZHRG9jdW1lbnRFeHRlbnNpb25zOjpTVkdQZW5kaW5nRWxlbWVudHM+IGNsaWVudHMo
ZG9jdW1lbnQoKS0+YWNjZXNzU1ZHRXh0ZW5zaW9ucygpLT5yZW1vdmVQZW5kaW5nUmVzb3VyY2Uo
bV9yZXNvdXJjZUlkKSk7Ci0gICAgICAgICAgICBBU1NFUlQoIWNsaWVudHMtPmlzRW1wdHkoKSk7
Ci0KLSAgICAgICAgICAgIGNvbnN0IFNWR0RvY3VtZW50RXh0ZW5zaW9uczo6U1ZHUGVuZGluZ0Vs
ZW1lbnRzOjpjb25zdF9pdGVyYXRvciBlbmQgPSBjbGllbnRzLT5lbmQoKTsKLSAgICAgICAgICAg
IGZvciAoU1ZHRG9jdW1lbnRFeHRlbnNpb25zOjpTVkdQZW5kaW5nRWxlbWVudHM6OmNvbnN0X2l0
ZXJhdG9yIGl0ID0gY2xpZW50cy0+YmVnaW4oKTsgaXQgIT0gZW5kOyArK2l0KSB7Ci0gICAgICAg
ICAgICAgICAgQVNTRVJUKCgqaXQpLT5oYXNQZW5kaW5nUmVzb3VyY2VzKCkpOwotICAgICAgICAg
ICAgICAgICgqaXQpLT5jbGVhckhhc1BlbmRpbmdSZXNvdXJjZXNJZlBvc3NpYmxlKCk7Ci0gICAg
ICAgICAgICB9Ci0KKyAgICAgICAgU1ZHRG9jdW1lbnRFeHRlbnNpb25zKiBleHRlbnNpb25zID0g
ZG9jdW1lbnQoKS0+YWNjZXNzU1ZHRXh0ZW5zaW9ucygpOworICAgICAgICBpZiAoaGFzUGVuZGlu
Z1Jlc291cmNlcygpICYmIGV4dGVuc2lvbnMtPmlzRWxlbWVudFBlbmRpbmdSZXNvdXJjZSh0aGlz
LCBtX3Jlc291cmNlSWQpKSB7CisgICAgICAgICAgICBleHRlbnNpb25zLT5yZW1vdmVQZW5kaW5n
UmVzb3VyY2VGb3JFbGVtZW50KG1fcmVzb3VyY2VJZCwgdGhpcyk7CiAgICAgICAgICAgICBtX3Jl
c291cmNlSWQgPSBTdHJpbmcoKTsKLSAgICAgICAgICAgIGNsZWFySGFzUGVuZGluZ1Jlc291cmNl
c0lmUG9zc2libGUoKTsKICAgICAgICAgfQogCiAgICAgICAgIG1fdGFyZ2V0RWxlbWVudEluc3Rh
bmNlID0gMDsKQEAgLTQ2MCwxOSArNDUyLDE4IEBAIHZvaWQgU1ZHVXNlRWxlbWVudDo6YnVpbGRQ
ZW5kaW5nUmVzb3VyY2UoKQogICAgIFN0cmluZyBpZDsKICAgICBFbGVtZW50KiB0YXJnZXRFbGVt
ZW50ID0gU1ZHVVJJUmVmZXJlbmNlOjp0YXJnZXRFbGVtZW50RnJvbUlSSVN0cmluZyhocmVmKCks
IGRvY3VtZW50KCksICZpZCk7CiAgICAgQVNTRVJUKCFtX3RhcmdldEVsZW1lbnRJbnN0YW5jZSk7
CisgICAgU1ZHRG9jdW1lbnRFeHRlbnNpb25zKiBleHRlbnNpb25zID0gZG9jdW1lbnQoKS0+YWNj
ZXNzU1ZHRXh0ZW5zaW9ucygpOwogCiAgICAgaWYgKCF0YXJnZXRFbGVtZW50KSB7Ci0gICAgICAg
IGlmIChoYXNQZW5kaW5nUmVzb3VyY2VzKCkgfHwgaWQuaXNFbXB0eSgpKQorICAgICAgICBpZiAo
KGhhc1BlbmRpbmdSZXNvdXJjZXMoKSAmJiBleHRlbnNpb25zLT5pc0VsZW1lbnRQZW5kaW5nUmVz
b3VyY2UodGhpcywgaWQpKSB8fCBpZC5pc0VtcHR5KCkpCiAgICAgICAgICAgICByZXR1cm47CiAK
ICAgICAgICAgbV9yZXNvdXJjZUlkID0gaWQ7Ci0gICAgICAgIEFTU0VSVCghaGFzUGVuZGluZ1Jl
c291cmNlcygpKTsKLSAgICAgICAgZG9jdW1lbnQoKS0+YWNjZXNzU1ZHRXh0ZW5zaW9ucygpLT5h
ZGRQZW5kaW5nUmVzb3VyY2UoaWQsIHRoaXMpOworICAgICAgICBleHRlbnNpb25zLT5hZGRQZW5k
aW5nUmVzb3VyY2UoaWQsIHRoaXMpOwogICAgICAgICBBU1NFUlQoaGFzUGVuZGluZ1Jlc291cmNl
cygpKTsKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotCiAgICAgaWYgKGhhc1BlbmRpbmdSZXNv
dXJjZXMoKSkgewogICAgICAgICBBU1NFUlQoIW1fdGFyZ2V0RWxlbWVudEluc3RhbmNlKTsKICAg
ICAgICAgbV9yZXNvdXJjZUlkID0gU3RyaW5nKCk7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggYTgzYTZiY2JjNDE4YmI2MjBk
ODI5OGZmODRmZTM4OTlkYTQxYWJkNC4uNTJhOWEyMDRmZTUzMTg5MDNiZjNlY2M4MTExNzE0NGZk
NTg2NTU2MSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRl
c3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEzIEBACisyMDEyLTAxLTIwICBGbG9yaW4gTWFsaXRh
ICA8Zm1hbGl0YUBnb29nbGUuY29tPgorCisgICAgICAgIE51bGwgZGVyZWZlcmVuY2UgaW4gU1ZH
RG9jdW1lbnRFeHRlbnNpb25zOjpyZW1vdmVQZW5kaW5nUmVzb3VyY2Ugd2hlbiB1cGRhdGluZyA8
dXNlPidzIGhyZWYKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTY5Mjg0CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBzdmcvY3VzdG9tL3VzZS1jcmFzaC1wZW5kaW5nLXJlc291cmNlLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogc3ZnL2N1c3RvbS91c2UtY3Jhc2gtcGVuZGluZy1yZXNvdXJjZS5z
dmc6IEFkZGVkLgorCiAyMDEyLTAxLTIwICBDc2FiYSBPc3p0cm9nb27DoWMgIDxvc3N5QHdlYmtp
dC5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZCBnYXJkZW5pbmcuIFNraXAgZmFpbGluZyB0ZXN0
cy4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vdXNlLWNyYXNoLXBlbmRpbmct
cmVzb3VyY2UtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3ZnL2N1c3RvbS91c2UtY3Jhc2gt
cGVuZGluZy1yZXNvdXJjZS1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXgg
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uNjljZmM1YTk4ZGI3NGZi
ZTMyYWM5YjY3OGE2MTM0YWY5NzM2ZGQ1OQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3Rz
L3N2Zy9jdXN0b20vdXNlLWNyYXNoLXBlbmRpbmctcmVzb3VyY2UtZXhwZWN0ZWQudHh0CkBAIC0w
LDAgKzEsMiBAQAorUEFTUworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdmcvY3VzdG9tL3Vz
ZS1jcmFzaC1wZW5kaW5nLXJlc291cmNlLnN2ZyBiL0xheW91dFRlc3RzL3N2Zy9jdXN0b20vdXNl
LWNyYXNoLXBlbmRpbmctcmVzb3VyY2Uuc3ZnCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjE3ZmQyYmNjNmEyY2M3MWZi
ZDhjODg5YTc5NDAyZTg0NWUzODQ4M2IKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9z
dmcvY3VzdG9tL3VzZS1jcmFzaC1wZW5kaW5nLXJlc291cmNlLnN2ZwpAQCAtMCwwICsxLDI3IEBA
Cis8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0
dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiPgorICA8ZGVmcz4KKyAgICA8dGV4dCBpZD0idGV4
dDEiIGZvbnQtc2l6ZT0iMjAiIGZpbGw9InllbGxvdyI+UEFTUzwvdGV4dD4KKyAgPC9kZWZzPgor
CisgIDwhLS0gRG9uJ3QgY3Jhc2ggd2hlbiBzZXR0aW5nIHRoZSBocmVmIGF0dHJpYnV0ZSB3aGls
ZSBhIGZpbHRlciByZXNvdXJjZSBpcyBwZW5kaW5nLiAtLT4KKyAgPHVzZSBpZD0iY3Jhc2hlciIg
eGxpbms6aHJlZj0iZm9vIiBmaWx0ZXI9InVybCgjbm9zdWNoZmlsdGVyKSIvPgorCisgIDwhLS0g
VGVzdCBib3RoIHVwZGF0aW5nIHRoZSBocmVmIGF0dHJpYnV0ZSBhbmQgcGlja2luZyB1cCB0aGUg
cGVuZGluZyBmaWx0ZXIuIC0tPgorICA8dXNlIGlkPSJ0ZXh0X3VzZSIgeT0iMjAiIHhsaW5rOmhy
ZWY9IiNmb28iIGZpbHRlcj0idXJsKCNmaWx0ZXIyKSIvPgorCisgIDxmaWx0ZXIgaWQ9ImZpbHRl
cjIiPgorICAgIDwhLS0gR3JlZW4gZmlsdGVyIC0tPgorICAgIDxmZUNvbG9yTWF0cml4IHR5cGU9
Im1hdHJpeCIgdmFsdWVzPSIwIDAgMCAwIDAgMCAxIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAxIDAi
Lz4KKyAgPC9maWx0ZXI+CisKKyAgPHNjcmlwdD4KKyAgICA8IS0tIFNob3VsZCBub3QgY3Jhc2gu
IC0tPgorICAgIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCJjcmFzaGVyIikuc2V0QXR0cmlidXRl
KCJ4bGluazpocmVmIiwgImJhciIpOworCisgICAgPCEtLSBTaG91bGQgeWllbGQgdGhlIGZpbHRl
cmVkIHRleHQgLS0+CisgICAgZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoInRleHRfdXNlIikuc2V0
QXR0cmlidXRlKCJ4bGluazpocmVmIiwgIiN0ZXh0MSIpOworCisgICAgaWYgKHdpbmRvdy5sYXlv
dXRUZXN0Q29udHJvbGxlcikKKyAgICAgIGxheW91dFRlc3RDb250cm9sbGVyLmR1bXBBc1RleHQo
KTsKKyAgPC9zY3JpcHQ+Cis8L3N2Zz4K
</data>

          </attachment>
      

    </bug>

</bugzilla>