<?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>139451</bug_id>
          
          <creation_ts>2014-12-09 11:06:03 -0800</creation_ts>
          <short_desc>Only when the SVG is inline and only when a shape is referenced before it is defined, this shape will not be drawn</short_desc>
          <delta_ts>2014-12-19 10:36:42 -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="Said Abou-Hallawa">sabouhallawa</reporter>
          <assigned_to name="Said Abou-Hallawa">sabouhallawa</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dino</cc>
    
    <cc>d-r</cc>
    
    <cc>fmalita</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>pdr</cc>
    
    <cc>schenney</cc>
    
    <cc>sergio</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>zimmermann</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1053866</commentid>
    <comment_count>0</comment_count>
      <attachid>242942</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2014-12-09 11:06:03 -0800</bug_when>
    <thetext>Created attachment 242942
&lt;defs&gt; after &lt;use&gt; (inline)

Open the attached test cases in WebKit.

Result: When the SVG is inline (included in an HTML) and when a shape is referenced before it is defined, this shape will not be drawn.  When the same SVG (the one which has the &lt;defs&gt; comes after the &lt;use&gt;) is opened by itself in WebKit, everything is drawn as expected.
Expected: Regardless whether the SVG is inline or not and regardless whether the shapes are defined before they are referenced or after they are referenced, the shapes should be drawn.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1053868</commentid>
    <comment_count>1</comment_count>
      <attachid>242943</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2014-12-09 11:06:48 -0800</bug_when>
    <thetext>Created attachment 242943
&lt;defs&gt; after &lt;use&gt; (non inline)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1053869</commentid>
    <comment_count>2</comment_count>
      <attachid>242944</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2014-12-09 11:07:26 -0800</bug_when>
    <thetext>Created attachment 242944
&lt;defs&gt; before &lt;use&gt; (inline)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1053873</commentid>
    <comment_count>3</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2014-12-09 11:11:07 -0800</bug_when>
    <thetext>NOTE: FireFox and Chrome render the first test case as expected.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1053875</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2014-12-09 11:12:05 -0800</bug_when>
    <thetext>&lt;rdar://problem/19192678&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054574</commentid>
    <comment_count>5</comment_count>
      <attachid>243135</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2014-12-11 12:10:58 -0800</bug_when>
    <thetext>Created attachment 243135
&lt;defs&gt; after &lt;use&gt; (inline - xhtml)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054576</commentid>
    <comment_count>6</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2014-12-11 12:11:55 -0800</bug_when>
    <thetext>It looks like this bug is only related to the html parser. It does not happen if the file extension is xhtml</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054743</commentid>
    <comment_count>7</comment_count>
      <attachid>243173</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2014-12-11 19:14:11 -0800</bug_when>
    <thetext>Created attachment 243173
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054813</commentid>
    <comment_count>8</comment_count>
      <attachid>243173</attachid>
    <who name="Dirk Schulze">krit</who>
    <bug_when>2014-12-12 04:20:23 -0800</bug_when>
    <thetext>Comment on attachment 243173
Patch

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

&gt; Source/WebCore/ChangeLog:34
&gt; +        This actually might not be the most efficient solution here. This invalidate/
&gt; +        update mechanism is very aggressive. While parsing an inline SVG and with
&gt; +        every child gets appended to a target element we will invalidate/update all
&gt; +        shadow trees of the referencing elements till all the children elements get
&gt; +        inserted. If the target SVG element has an &apos;n&apos; children nodes and there &apos;m&apos;
&gt; +        other nodes referencing this target elment then invalidating and updating the
&gt; +        shadow tree nodes will be O(n*n*m).

I do not understand what that has to do with the characterData node?

&gt; Source/WebCore/svg/SVGElement.cpp:1099
&gt; +    if (hasID() || change.source != ChildChangeSourceParser)
&gt; +        SVGElementInstance::invalidateAllInstancesOfElement(this);

Ok, so if I understand this part and the comment above, we are invalidating more often. Every time a child changes and the element has an id we always mark all instance for invalidation and rebuild the trees, right?  To your comment above, this is one of the critical code paths. &lt;use&gt; element is specifically slow in WebKit.

If there is a difference between XML and HTML on characterData, why do we fix the issue here?

&gt; LayoutTests/svg/in-html/defs-after-use-expected.html:4
&gt; +    &lt;g transform=&quot;translate(10,10)&quot;&gt;

Is the transform needed? just putting x=&quot;10&quot; y=&quot;10&quot; should work for rectangles. (There might be AA issues on circles and curves though.)

&gt; LayoutTests/svg/in-html/defs-after-use.html:16
&gt; +    &lt;defs&gt;
&gt; +      &lt;g id=&quot;red-rect&quot;&gt;
&gt; +        &lt;rect x=&quot;0&quot; y=&quot;0&quot; width=&quot;100&quot; height=&quot;50&quot; fill=&quot;red&quot;/&gt;
&gt; +      &lt;/g&gt;
&gt; +    &lt;/defs&gt;
&gt; +    &lt;use x=&quot;10&quot; y=&quot;10&quot; xlink:href=&quot;#red-rect&quot;/&gt;

IMO this can just use the rect directly. If that actual test works we don&apos;t know if this referencing works. The second &lt;use&gt; overdraws this one.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054876</commentid>
    <comment_count>9</comment_count>
      <attachid>243209</attachid>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2014-12-12 12:11:06 -0800</bug_when>
    <thetext>Created attachment 243209
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054888</commentid>
    <comment_count>10</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2014-12-12 12:41:32 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; Comment on attachment 243173 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=243173&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:34
&gt; &gt; +        This actually might not be the most efficient solution here. This invalidate/
&gt; &gt; +        update mechanism is very aggressive. While parsing an inline SVG and with
&gt; &gt; +        every child gets appended to a target element we will invalidate/update all
&gt; &gt; +        shadow trees of the referencing elements till all the children elements get
&gt; &gt; +        inserted. If the target SVG element has an &apos;n&apos; children nodes and there &apos;m&apos;
&gt; &gt; +        other nodes referencing this target elment then invalidating and updating the
&gt; &gt; +        shadow tree nodes will be O(n*n*m).
&gt; 
&gt; I do not understand what that has to do with the characterData node?

When parsing the following SVG:

  &lt;svg xmlns=&quot;http://www.w3.org/2000/svg&quot;
  	  xmlns:xlink=&quot;http://www.w3.org/1999/xlink&quot;
  	  width=&quot;1000px&quot; height=&quot;1000px&quot;
  	  viewBox=&quot;0 0 1000 1000&quot;&gt;
    &lt;use x=&quot;425&quot; y=&quot;80&quot; xlink:href=&quot;#helmet&quot;/&gt;
    &lt;defs&gt;
      &lt;g id=&quot;helmet&quot;&gt;
        &lt;path d=&quot;M 0 0 L 150 0 A75,75 0 0,0 0 0 z&quot; fill=&quot;#6E808B&quot;/&gt;
        &lt;rect x=&quot;0&quot; y=&quot;0&quot; width=&quot;150&quot; height=&quot;20&quot; fill=&quot;#48565e&quot;/&gt;
      &lt;/g&gt;
    &lt;/defs&gt;
  &lt;/svg&gt;

We get the following DOM tree:

#document  0x116818600 (renderer 0x11650c7f0) (child needs style recalc)
  svg 0x119f02460 (renderer 0x10c171670) (child needs style recalc)
    #text  0x628000080190 &quot;\n &quot;
    use 0x111204e20 (renderer 0x640000180b60) 
      #document-fragment 0x6480001c0e10 (renderer 0x0) 
        g  0x111009000 (renderer 0x6400001809c0) 
          #text  0x640000080820 &quot;\n   &quot;
          path  0x111014500 (renderer 0x6400001e0100) 
          #text  0x640000080910 &quot;\n   &quot;
          rect  0x11100a190 (renderer 0x11100f170) 
          #text  0x640000080780 &quot;\n  &quot;
    #text  0x648000082670 &quot;\n &quot;
    defs  0x110705860 (renderer 0x600000105220) (child needs style recalc)
      #text  0x610000081ea0 &quot;\n  &quot;
      g  0x111311580 (renderer 0x600000185210) 
        #text  0x650000080f50 &quot;\n   &quot;
        path  0x10c176380 (renderer 0x6080001e2f00) 
        #text  0x60000008ef60 &quot;\n   &quot;
        rect  0x10c6259c0 (renderer 0x116517480) 
        #text  0x608000087940 &quot;\n  &quot;
      #text  0x640000080a50 &quot;\n &quot;
    #text  0x650000080ff0 &quot;\n&quot;

The HTML and the XML parsers create a Text element after each SVG element. In the XML code path and when we start processing a new tag, we append the buffered text to the leaf text element which is XMLDocumentParser::m_leafTextNode, see XMLDocumentParser::exitText().  This function causes the following stack of calls:

#0	WebCore::SVGElement::childrenChanged() 
#1	WebCore::CharacterData::dispatchModifiedEvent() 
#2	WebCore::CharacterData::setDataAndUpdate()
#3	WebCore::CharacterData::appendData() 
#4	WebCore::XMLDocumentParser::exitText() 
#5	WebCore::XMLDocumentParser::startElementNs()

WebCore::CharacterData::dispatchModifiedEvent() sends the source of change as ContainerNode::ChildChangeSourceAPI to SVGElement::childrenChanged() which considers this as a legitimate reason to invalidate the referencing elements because it assumes the children were changed by something but not the parser. This might be a bug but it should not be specific to the SVG shadow tree invalidate/update.

&gt; 
&gt; &gt; Source/WebCore/svg/SVGElement.cpp:1099
&gt; &gt; +    if (hasID() || change.source != ChildChangeSourceParser)
&gt; &gt; +        SVGElementInstance::invalidateAllInstancesOfElement(this);
&gt; 
&gt; Ok, so if I understand this part and the comment above, we are invalidating
&gt; more often. Every time a child changes and the element has an id we always
&gt; mark all instance for invalidation and rebuild the trees, right?  To your
&gt; comment above, this is one of the critical code paths. &lt;use&gt; element is
&gt; specifically slow in WebKit.
&gt; 
&gt; If there is a difference between XML and HTML on characterData, why do we
&gt; fix the issue here?
&gt; 

Fixed: I moved the invalidation to SVGElement::finishParsingChildren() which gets called when all the children are parsed. And for the difference between HTML and XML, I explained above why the bug was not repro in XML code path which, I think, happened accidentally. Although we are doing more invalidation for the XML with this change than we do for the HTML, I think this is the right place to have the invalidation. We should fix the XML Text element issue to not cause any update. But I think this problem should be addressed in a separate bug.

&gt; &gt; LayoutTests/svg/in-html/defs-after-use-expected.html:4
&gt; &gt; +    &lt;g transform=&quot;translate(10,10)&quot;&gt;
&gt; 
&gt; Is the transform needed? just putting x=&quot;10&quot; y=&quot;10&quot; should work for
&gt; rectangles. (There might be AA issues on circles and curves though.)
&gt; 

Done.

&gt; &gt; LayoutTests/svg/in-html/defs-after-use.html:16
&gt; &gt; +    &lt;defs&gt;
&gt; &gt; +      &lt;g id=&quot;red-rect&quot;&gt;
&gt; &gt; +        &lt;rect x=&quot;0&quot; y=&quot;0&quot; width=&quot;100&quot; height=&quot;50&quot; fill=&quot;red&quot;/&gt;
&gt; &gt; +      &lt;/g&gt;
&gt; &gt; +    &lt;/defs&gt;
&gt; &gt; +    &lt;use x=&quot;10&quot; y=&quot;10&quot; xlink:href=&quot;#red-rect&quot;/&gt;
&gt; 
&gt; IMO this can just use the rect directly. If that actual test works we don&apos;t
&gt; know if this referencing works. The second &lt;use&gt; overdraws this one.

Done. But I changed the test a little to include two &lt;use&gt; elements:
1st: references two &lt;rect&gt;s, the first &lt;rect&gt; comes before the user and the second &lt;rect&gt; comes after the &lt;use&gt;.
2nd: references two &lt;rect&gt;s, the two &lt;rect&gt;s come after the &lt;use&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054890</commentid>
    <comment_count>11</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2014-12-12 12:58:26 -0800</bug_when>
    <thetext>*** Bug 105257 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1054892</commentid>
    <comment_count>12</comment_count>
    <who name="Said Abou-Hallawa">sabouhallawa</who>
    <bug_when>2014-12-12 12:59:42 -0800</bug_when>
    <thetext>*** Bug 136128 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1057062</commentid>
    <comment_count>13</comment_count>
      <attachid>243209</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-12-19 10:36:36 -0800</bug_when>
    <thetext>Comment on attachment 243209
Patch

Clearing flags on attachment: 243209

Committed r177576: &lt;http://trac.webkit.org/changeset/177576&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1057063</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-12-19 10:36:42 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>242942</attachid>
            <date>2014-12-09 11:06:03 -0800</date>
            <delta_ts>2014-12-09 11:06:03 -0800</delta_ts>
            <desc>&lt;defs&gt; after &lt;use&gt; (inline)</desc>
            <filename>defs-after-use.html</filename>
            <type>text/html</type>
            <size>432</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">PGh0bWw+Cjxib2R5PgogIDxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgog
IAkgIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIgogIAkgIHdpZHRo
PSIxMDAwcHgiIGhlaWdodD0iMTAwMHB4IgogIAkgIHZpZXdCb3g9IjAgMCAxMDAwIDEwMDAiPiAg
ICA8dXNlIHg9IjQyNSIgeT0iODAiIHhsaW5rOmhyZWY9IiNoZWxtZXQiLz4KICAgIDxkZWZzPgog
ICAgICA8ZyBpZD0iaGVsbWV0Ij4KICAgICAgICA8cGF0aCBkPSJNIDAgMCBMIDE1MCAwIEE3NSw3
NSAwIDAsMCAwIDAgeiIgZmlsbD0iIzZFODA4QiIvPgogICAgICAgIDxyZWN0IHg9IjAiIHk9IjAi
IHdpZHRoPSIxNTAiIGhlaWdodD0iMjAiIGZpbGw9IiM0ODU2NWUiLz4KICAgICAgPC9nPgogICAg
PC9kZWZzPgogIDwvc3ZnPgo8L2JvZHk+CjwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>242943</attachid>
            <date>2014-12-09 11:06:48 -0800</date>
            <delta_ts>2014-12-09 11:06:48 -0800</delta_ts>
            <desc>&lt;defs&gt; after &lt;use&gt; (non inline)</desc>
            <filename>defs-after-use.svg</filename>
            <type>image/svg+xml</type>
            <size>376</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciCgkgeG1sbnM6eGxpbms9Imh0
dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiCgkgd2lkdGg9IjEwMDBweCIgaGVpZ2h0PSIxMDAw
cHgiCgkgdmlld0JveD0iMCAwIDEwMDAgMTAwMCI+CiAgPHVzZSB4PSI0MjUiIHk9IjgwIiB4bGlu
azpocmVmPSIjaGVsbWV0Ii8+CiAgPGRlZnM+CiAgICA8ZyBpZD0iaGVsbWV0Ij4KICAgICAgPHBh
dGggZD0iTSAwIDAgTCAxNTAgMCBBNzUsNzUgMCAwLDAgMCAwIHoiIGZpbGw9IiM2RTgwOEIiLz4K
ICAgICAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjE1MCIgaGVpZ2h0PSIyMCIgZmlsbD0iIzQ4
NTY1ZSIvPgogICAgPC9nPgogIDwvZGVmcz4KPC9zdmc+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>242944</attachid>
            <date>2014-12-09 11:07:26 -0800</date>
            <delta_ts>2014-12-09 11:07:26 -0800</delta_ts>
            <desc>&lt;defs&gt; before &lt;use&gt; (inline)</desc>
            <filename>defs-before-use.html</filename>
            <type>text/html</type>
            <size>430</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">PGh0bWw+Cjxib2R5PgogIDxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgog
ICAgICB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIKICAgICAgd2lk
dGg9IjEwMDBweCIgaGVpZ2h0PSIxMDAwcHgiCiAgICAgIHZpZXdCb3g9IjAgMCAxMDAwIDEwMDAi
PgogICAgPGRlZnM+CiAgICAgIDxnIGlkPSJoZWxtZXQiPgogICAgCTxwYXRoIGQ9Ik0gMCAwIEwg
MTUwIDAgQTc1LDc1IDAgMCwwIDAgMCB6IiBmaWxsPSIjNkU4MDhCIi8+CiAgICAJPHJlY3QgeD0i
MCIgeT0iMCIgd2lkdGg9IjE1MCIgaGVpZ2h0PSIyMCIgZmlsbD0iIzQ4NTY1ZSIvPgogICAgICA8
L2c+CiAgICA8L2RlZnM+CiAgICA8dXNlIHg9IjQyNSIgeT0iODAiIHhsaW5rOmhyZWY9IiNoZWxt
ZXQiLz4KICA8L3N2Zz4KPC9ib2R5Pgo8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>243135</attachid>
            <date>2014-12-11 12:10:58 -0800</date>
            <delta_ts>2014-12-11 12:12:40 -0800</delta_ts>
            <desc>&lt;defs&gt; after &lt;use&gt; (inline - xhtml)</desc>
            <filename>defs-after-use.xhtml</filename>
            <type>application/xhtml+xml</type>
            <size>432</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">PGh0bWw+Cjxib2R5PgogIDxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgog
IAkgIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIgogIAkgIHdpZHRo
PSIxMDAwcHgiIGhlaWdodD0iMTAwMHB4IgogIAkgIHZpZXdCb3g9IjAgMCAxMDAwIDEwMDAiPgog
IAk8dXNlIHg9IjQyNSIgeT0iODAiIHhsaW5rOmhyZWY9IiNoZWxtZXQiLz4KICAgIDxkZWZzPgog
ICAgICA8ZyBpZD0iaGVsbWV0Ij4KICAgICAgICA8cGF0aCBkPSJNIDAgMCBMIDE1MCAwIEE3NSw3
NSAwIDAsMCAwIDAgeiIgZmlsbD0iIzZFODA4QiIvPgogICAgICAgIDxyZWN0IHg9IjAiIHk9IjAi
IHdpZHRoPSIxNTAiIGhlaWdodD0iMjAiIGZpbGw9IiM0ODU2NWUiLz4KICAgICAgPC9nPgogICAg
PC9kZWZzPgogIDwvc3ZnPgo8L2JvZHk+CjwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>243173</attachid>
            <date>2014-12-11 19:14:11 -0800</date>
            <delta_ts>2014-12-12 12:11:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-139451-20141211191454.patch</filename>
            <type>text/plain</type>
            <size>6780</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3NzE4OSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDQ4IEBACisyMDE0LTEyLTExICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgT25seSB3aGVu
IHRoZSBTVkcgaXMgaW5saW5lIGFuZCBvbmx5IHdoZW4gYSBzaGFwZSBpcyByZWZlcmVuY2VkIGJl
Zm9yZSBpdCBpcyBkZWZpbmVkLCB0aGlzIHNoYXBlIHdpbGwgbm90IGJlIGRyYXduLgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5NDUxLgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3RzOiBzdmcvaW4t
aHRtbC9kZWZzLWFmdGVyLXVzZS5odG1sLgorICAgICAgICAKKyAgICAgICAgVGhpcyBidWcgb25s
eSBoYXBwZW5zIHdpdGggaW5saW5lIFNWRyBpbiBhbiBIVE1MIGZpbGUuIEl0IGRvZXMgbm90IGhh
cHBlbiB3aXRoCisgICAgICAgIHN0YW5kIGFsb25lIFNWRyBvciB3aXRoIGlubGluZSBTVkcgaW4g
YW4gWEhUTUwgZmlsZS4gSXQgZG9lcyBub3QgaGFwcGVuIHdpdGgKKyAgICAgICAgdGhlIFhNTCBw
YXJzZXIgY2FzZSBiZWNhdXNlIG9mIGEgQ2hhcmFjdGVyRGF0YSBub2RlIHdoaWNoIGlzIGluc2Vy
dGVkIGF0IHRoZQorICAgICAgICBlbmQgb2YgdGhlIHRhcmdldCBTVkcgZWxlbWVudC4gVGhpcyBD
aGFyYWN0ZXJEYXRhIG5vZGUgaXMgZGVsZXRlZCBsYXRlciBidXQgYmVmb3JlCisgICAgICAgIGl0
IGdldHMgZGVsZXRlZCwgaXRzIENoYXJhY3RlckRhdGE6OmRpc3BhdGNoTW9kaWZpZWRFdmVudCgp
IGdldHMgY2FsbGVkIGFuZCB0aGlzCisgICAgICAgIGZ1bmN0aW9uIGNhdXNlcyBpbnZhbGlkYXRl
L3VwZGF0ZSB0byBoYXBwZW4gd2hlbiBTVkdFbGVtZW5ldDo6Y2hpbGRyZW5DaGFuZ2VkKCkKKyAg
ICAgICAgZ2V0cyBjYWxsZWQgd2l0aCBDb250YWluZXJOb2RlOjpDaGlsZENoYW5nZVNvdXJjZUFQ
SS4gSW4gU1ZHRWxlbWVuZXQ6OmNoaWxkcmVuQ2hhbmdlZCgpCisgICAgICAgIHdlIGludmFsaWRh
dGUgdGhlIHNoYWRvdyB0cmVlcyBvZiB0aGUgcmVmZXJlbmNpbmcgZWxlbWVudHMgYnkgY2FsbGlu
ZworICAgICAgICBTVkdFbGVtZW50SW5zdGFuY2U6OmludmFsaWRhdGVBbGxJbnN0YW5jZXNPZkVs
ZW1lbnQoKSBpZiB0aGUgY2hhbmdlIGhhcHBlbmQKKyAgICAgICAgYmVjYXVzZSBvZiBhbiBBUEkg
Y2hhbmdlLiBJbiB0aGUgSFRNTCBwYXJzZXIgY2FzZSwgd2UgZG8gbm90IGhpdCB0aGUgY29kZSBw
YXRoCisgICAgICAgIG9mIENoYXJhY3RlckRhdGE6OmRpc3BhdGNoTW9kaWZpZWRFdmVudCgpIHdo
aWNoIHNlZW1zIHRvIGhhcHBlbiB1bmludGVudGlvbmFsbHkuCisgICAgICAgIAorICAgICAgICBX
aGVuIHRoZSBjaGlsZHJlbiBvZiBhbiBTVkcgZWxlbWVudCBhcmUgY2hhbmdlZCwgd2UgbmVlZCB0
byBub3RpZnkgYWxsIHRoZQorICAgICAgICByZWZlcmVuY2luZyBlbGVtZW50cyB3aGljaCBoYXZl
IHNoYWRvdyB0cmVlcyBjbG9uZWQgZnJvbSB0aGlzIHRhcmdldCBlbGVtZW50LgorICAgICAgICBB
biBTVkcgZWxlbWVudCBjYW4gaGF2ZSBhIHNoYWRvdyB0cmVlIG9mIGFub3RoZXIgU1ZHIHRhcmdl
dCBlbGVtZW50IG9ubHkgaWYKKyAgICAgICAgdGhpcyB0YXJnZXQgZWxlbWVudCBoYXMgYW4gSUQu
IFdlIGNhbiBzYWZlbHkgc2F5LCBpZiB0aGUgZWxlbWVudCBpcyBiZWluZyBwYXJzZWQKKyAgICAg
ICAgYW5kIGl0IGRvZXMgbm90IGhhdmUgYW4gSUQsIHRoZXJlIGlzIG5vIG5lZWQgdG8gbm90aWZ5
IGFueSBub2RlIHdpdGggdGhpcyBjaGFuZ2UuCisgICAgICAgIAorICAgICAgICBUaGlzIGFjdHVh
bGx5IG1pZ2h0IG5vdCBiZSB0aGUgbW9zdCBlZmZpY2llbnQgc29sdXRpb24gaGVyZS4gVGhpcyBp
bnZhbGlkYXRlLworICAgICAgICB1cGRhdGUgbWVjaGFuaXNtIGlzIHZlcnkgYWdncmVzc2l2ZS4g
V2hpbGUgcGFyc2luZyBhbiBpbmxpbmUgU1ZHIGFuZCB3aXRoCisgICAgICAgIGV2ZXJ5IGNoaWxk
IGdldHMgYXBwZW5kZWQgdG8gYSB0YXJnZXQgZWxlbWVudCB3ZSB3aWxsIGludmFsaWRhdGUvdXBk
YXRlIGFsbAorICAgICAgICBzaGFkb3cgdHJlZXMgb2YgdGhlIHJlZmVyZW5jaW5nIGVsZW1lbnRz
IHRpbGwgYWxsIHRoZSBjaGlsZHJlbiBlbGVtZW50cyBnZXQKKyAgICAgICAgaW5zZXJ0ZWQuIElm
IHRoZSB0YXJnZXQgU1ZHIGVsZW1lbnQgaGFzIGFuICduJyBjaGlsZHJlbiBub2RlcyBhbmQgdGhl
cmUgJ20nCisgICAgICAgIG90aGVyIG5vZGVzIHJlZmVyZW5jaW5nIHRoaXMgdGFyZ2V0IGVsbWVu
dCB0aGVuIGludmFsaWRhdGluZyBhbmQgdXBkYXRpbmcgdGhlCisgICAgICAgIHNoYWRvdyB0cmVl
IG5vZGVzIHdpbGwgYmUgTyhuKm4qbSkuCisgICAgICAgIAorICAgICAgICBCdXQgc2luY2UgdGhl
IEhUTUwgcGFyc2VyIGRvZXMgbm90IG5vdGlmeSBhbiBlbGVtZW50IHdoZW4gaXQgaXMgZnVsbHkg
cGFyc2VkCisgICAgICAgIChpbmNsdWRpbmcgaXRzIGNoaWxkcmVuKSBhbmQgc2luY2UgdGhlIFhN
TCBwYXJzZXIgY2FzZSBoYXMgYmVlbiBkb2luZyB0aGUgc2FtZSwKKyAgICAgICAgSSB0aGluayB0
aGlzIGNoYW5nZSBtaWdodCBiZSBhY2NlcHRhYmxlIGZvciBub3cgdGlsbCB0aGUgcGVyZm9ybWFu
Y2Ugb2YgdGhlIFNWRworICAgICAgICBpcyBzdHVkaWVkIGFuZCB0aGUgYm90dGxlbmVjayBwbGFj
ZXMgYXJlIGlkZW50aWZpZWQuIElmIHRoaXMgYWdncmVzc2l2ZSBpbnZhbGlkYXRlLworICAgICAg
ICB1cGRhdGUgaXMgb25lIG9mIHRoZSBob3QgYXJlYXMsIHRoaXMgaW52YWxpZGF0ZS91cGRhdGUg
d29ya2Zsb3cgb2YgdGhlIGNvZGUgd2lsbAorICAgICAgICBiZSByZXZpc2l0ZWQuCisKKyAgICAg
ICAgKiBzdmcvU1ZHRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdFbGVtZW50Ojpj
aGlsZHJlbkNoYW5nZWQpOgorCiAyMDE0LTEyLTExICBBbGV4ZXkgUHJvc2t1cnlha292ICA8YXBA
YXBwbGUuY29tPgogCiAgICAgICAgIEluaXRpYWxpemUgbV9vd25zR2VuZXJhdGVkRmlsZSB3aGVu
IGRlY29kaW5nIGEgRm9ybURhdGFFbGVtZW50CkluZGV4OiBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZH
RWxlbWVudC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvc3ZnL1NWR0VsZW1lbnQu
Y3BwCShyZXZpc2lvbiAxNzcxODkpCisrKyBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRWxlbWVudC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTEwOTUsMTAgKzEwOTUsOCBAQCB2b2lkIFNWR0VsZW1lbnQ6
OmJ1aWxkUGVuZGluZ1Jlc291cmNlc0lmCiB2b2lkIFNWR0VsZW1lbnQ6OmNoaWxkcmVuQ2hhbmdl
ZChjb25zdCBDaGlsZENoYW5nZSYgY2hhbmdlKQogewogICAgIFN0eWxlZEVsZW1lbnQ6OmNoaWxk
cmVuQ2hhbmdlZChjaGFuZ2UpOwotCi0gICAgaWYgKGNoYW5nZS5zb3VyY2UgPT0gQ2hpbGRDaGFu
Z2VTb3VyY2VQYXJzZXIpCi0gICAgICAgIHJldHVybjsKLSAgICBTVkdFbGVtZW50SW5zdGFuY2U6
OmludmFsaWRhdGVBbGxJbnN0YW5jZXNPZkVsZW1lbnQodGhpcyk7CisgICAgaWYgKGhhc0lEKCkg
fHwgY2hhbmdlLnNvdXJjZSAhPSBDaGlsZENoYW5nZVNvdXJjZVBhcnNlcikKKyAgICAgICAgU1ZH
RWxlbWVudEluc3RhbmNlOjppbnZhbGlkYXRlQWxsSW5zdGFuY2VzT2ZFbGVtZW50KHRoaXMpOwog
fQogCiBSZWZQdHI8Q1NTVmFsdWU+IFNWR0VsZW1lbnQ6OmdldFByZXNlbnRhdGlvbkF0dHJpYnV0
ZShjb25zdCBTdHJpbmcmIG5hbWUpCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxNzcxOTEpCisrKyBMYXlv
dXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOSBAQAorMjAxNC0x
Mi0xMSAgU2FpZCBBYm91LUhhbGxhd2EgIDxzYWJvdWhhbGxhd2FAYXBwbGUuY29tPgorCisgICAg
ICAgIE9ubHkgd2hlbiB0aGUgU1ZHIGlzIGlubGluZSBhbmQgb25seSB3aGVuIGEgc2hhcGUgaXMg
cmVmZXJlbmNlZCBiZWZvcmUgaXQgaXMgZGVmaW5lZCwgdGhpcyBzaGFwZSB3aWxsIG5vdCBiZSBk
cmF3bi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEz
OTQ1MS4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBF
bnN1cmUgdGhhdCB3aGVuIGEgPHVzZT4gZWxlbWVudCBpbnNpZGUgYW4gaW5saW5lIFNWRyByZWZl
cmVuY2VzIGFub3RoZXIKKyAgICAgICAgdGFyZ2V0IFNWRyBlbGVtZW50LCB3aGljaCBoYXMgbm90
IGJlZW4gZGVmaW5lZCB5ZXQsIGdldHMgaXRzIHNoYWRvdyBET00KKyAgICAgICAgdHJlZSB1cGRh
dGVkIHdoZW4gdGhlIHRhcmdldCBlbGVtZW50IGlzIGNyZWF0ZWQuIFVwZGF0aW5nIHRoZSBzaGFk
b3cgRE9NCisgICAgICAgIHRyZWUgb2YgdGhlIDx1c2U+IGVsZW1lbnQgc2hvdWxkIHVwZGF0ZSB0
aGUgY29ycmVzcG9uZGluZyBzaGFkb3cgcmVuZGVyCisgICAgICAgIHRyZWUgYXMgd2VsbC4KKwor
ICAgICAgICAqIHN2Zy9pbi1odG1sL2RlZnMtYWZ0ZXItdXNlLWV4cGVjdGVkLmh0bWw6IEFkZGVk
LgorICAgICAgICAqIHN2Zy9pbi1odG1sL2RlZnMtYWZ0ZXItdXNlLmh0bWw6IEFkZGVkLgorCiAy
MDE0LTEyLTExICBCcmVuZGFuIExvbmcgIDxiLmxvbmdAY2FibGVsYWJzLmNvbT4KIAogICAgICAg
ICBSZW1vdmUgRGF0YUN1ZSAidGV4dCIgYXR0cmlidXRlCkluZGV4OiBMYXlvdXRUZXN0cy9zdmcv
aW4taHRtbC9kZWZzLWFmdGVyLXVzZS1leHBlY3RlZC5odG1sCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91
dFRlc3RzL3N2Zy9pbi1odG1sL2RlZnMtYWZ0ZXItdXNlLWV4cGVjdGVkLmh0bWwJKHJldmlzaW9u
IDApCisrKyBMYXlvdXRUZXN0cy9zdmcvaW4taHRtbC9kZWZzLWFmdGVyLXVzZS1leHBlY3RlZC5o
dG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsOSBAQAorPGh0bWw+Cis8Ym9keT4KKyAgPHN2
ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8v
d3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KKyAgICA8ZyB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMCwx
MCkiPgorICAgICAgPHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCIgZmls
bD0ibGltZSIvPgorICAgIDwvZz4KKyAgPC9zdmc+Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBM
YXlvdXRUZXN0cy9zdmcvaW4taHRtbC9kZWZzLWFmdGVyLXVzZS5odG1sCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IExheW91dFRlc3RzL3N2Zy9pbi1odG1sL2RlZnMtYWZ0ZXItdXNlLmh0bWwJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9zdmcvaW4taHRtbC9kZWZzLWFmdGVyLXVzZS5odG1sCSh3b3JraW5n
IGNvcHkpCkBAIC0wLDAgKzEsMjkgQEAKKzwhLS0KKyAgICBFbnN1cmUgdGhhdCB3aGVuIGEgPHVz
ZT4gZWxlbWVudCBpbnNpZGUgYW4gaW5saW5lIFNWRyByZWZlcmVuY2VzIGFub3RoZXIKKyAgICB0
YXJnZXQgU1ZHIGVsZW1lbnQsIHdoaWNoIGhhcyBub3QgYmVlbiBkZWZpbmVkIHlldCwgZ2V0cyBp
dHMgc2hhZG93IERPTQorICAgIHRyZWUgdXBkYXRlZCB3aGVuIHRoZSB0YXJnZXQgZWxlbWVudCBp
cyBjcmVhdGVkLiBVcGRhdGluZyB0aGUgc2hhZG93IERPTQorICAgIHRyZWUgb2YgdGhlIDx1c2U+
IGVsZW1lbnQgc2hvdWxkIHVwZGF0ZSB0aGUgY29ycmVzcG9uZGluZyBzaGFkb3cgcmVuZGVyCisg
ICAgdHJlZSBhcyB3ZWxsLgorLS0+Cis8aHRtbD4KKzxib2R5PgorICA8c3ZnIHhtbG5zPSJodHRw
Oi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5
OTkveGxpbmsiPgorICAgIDxkZWZzPgorICAgICAgPGcgaWQ9InJlZC1yZWN0Ij4KKyAgICAgICAg
PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCIgZmlsbD0icmVkIi8+Cisg
ICAgICA8L2c+CisgICAgPC9kZWZzPgorICAgIDx1c2UgeD0iMTAiIHk9IjEwIiB4bGluazpocmVm
PSIjcmVkLXJlY3QiLz4KKyAgICA8dXNlIHg9IjEwIiB5PSIxMCIgeGxpbms6aHJlZj0iI29yYW5n
ZS1ncmVlbi1yZWN0Ii8+CisgICAgPGRlZnM+CisgICAgICA8ZyBpZD0ib3JhbmdlLWdyZWVuLXJl
Y3QiPgorICAgICAgICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIiBm
aWxsPSJvcmFuZ2UiLz4KKyAgICAgICAgPHVzZSB4PSIwIiB5PSIwIiB4bGluazpocmVmPSIjZ3Jl
ZW4tcmVjdCIvPgorICAgICAgPC9nPgorICAgICAgPGcgaWQ9ImdyZWVuLXJlY3QiPgorICAgICAg
ICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIiBmaWxsPSJsaW1lIi8+
CisgICAgICA8L2c+CisgICAgPC9kZWZzPgorICA8L3N2Zz4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>243209</attachid>
            <date>2014-12-12 12:11:06 -0800</date>
            <delta_ts>2014-12-19 10:36:36 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-139451-20141212121150.patch</filename>
            <type>text/plain</type>
            <size>5556</size>
            <attacher name="Said Abou-Hallawa">sabouhallawa</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDE3NzIyNSkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDI2IEBACisyMDE0LTEyLTEyICBTYWlkIEFi
b3UtSGFsbGF3YSAgPHNhYm91aGFsbGF3YUBhcHBsZS5jb20+CisKKyAgICAgICAgT25seSB3aGVu
IHRoZSBTVkcgaXMgaW5saW5lIGFuZCBvbmx5IHdoZW4gYSBzaGFwZSBpcyByZWZlcmVuY2VkIGJl
Zm9yZSBpdCBpcyBkZWZpbmVkLCB0aGlzIHNoYXBlIHdpbGwgbm90IGJlIGRyYXduLgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTM5NDUxLgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3RzOiBzdmcvaW4t
aHRtbC9kZWZzLWFmdGVyLXVzZS5odG1sLgorCisgICAgICAgIFdoZW4gcGFyc2luZyB0aGUgY2hp
bGRyZW4gb2YgYW4gU1ZHIGVsZW1lbnQgaXMgZmluaXNoZWQsIHdlIG5lZWQgdG8gbm90aWZ5IHRo
ZQorICAgICAgICBvdGhlciBTVkcgZWxlbWVudHMgd2hpY2ggaGF2ZSBpbmNvbXBsZXRlIHNoYWRv
dyB0cmVlcyBiZWNhdXNlIG9mIGVhcmx5IHJlZmVyZW5jaW5nCisgICAgICAgIHRvIHRoaXMgZWxl
bWVudC4gVGhlIHJlZmVyZW5jaW5nIGVsZW1lbnRzIG5lZWQgdG8gcmVidWlsZCB0aGVpciBzaGFk
b3cgdHJlZXMgYW5kCisgICAgICAgIG1ha2UgbmV3IGNvcGllcyBvZiB0aGUgdGhpcyBlbGVtZW50
IGFuZCBpdHMgc3ViLXRyZWUuCisgICAgICAgIAorICAgICAgICBUaGlzIGlzIHRoZSBjYXNlIHdo
ZXJlIGEgPHVzZT4gdGFnIHJlZmVyZW5jZXMgdGFyZ2V0IGVsZW1lbnRzIGJlZm9yZSB0aGVzZSB0
YXJnZXQKKyAgICAgICAgZWxlbWVudHMgYXJlIGRlZmluZWQuIFVwZGF0aW5nIHRoZSBzaGFkb3cg
RE9NIHRyZWUgb2YgYSA8dXNlPiBlbGVtZW50IHNob3VsZCB1cGRhdGUKKyAgICAgICAgdGhlIGNv
cnJlc3BvbmRpbmcgc2hhZG93IHJlbmRlciB0cmVlIGFzIHdlbGwuCisKKyAgICAgICAgKiBzdmcv
U1ZHRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTVkdFbGVtZW50OjpmaW5pc2hQYXJz
aW5nQ2hpbGRyZW4pOgorICAgICAgICBJbnZhbGlkYXRlIGFsbCB0aGUgcmVmZXJlbmNpbmcgZWxl
bWVudHMgb2YgYSB0YXJnZXQgZWxlbWVudCB3aG9zZSBzdWItdHJlZSBoYXMKKyAgICAgICAganVz
dCBmaW5pc2hlZCBwYXJzaW5nLgorCiAyMDE0LTEyLTEyICBKZXIgTm9ibGUgIDxqZXIubm9ibGVA
YXBwbGUuY29tPgogCiAgICAgICAgIFtNU0VdIEFkZCBzdXBwb3J0IGZvciBTb3VyY2VCdWZmZXIu
bW9kZS4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGVtZW50LmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViQ29yZS9zdmcvU1ZHRWxlbWVudC5jcHAJKHJldmlzaW9uIDE3NzE4OSkK
KysrIFNvdXJjZS9XZWJDb3JlL3N2Zy9TVkdFbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAt
NzA4LDYgKzcwOCwxMCBAQCB2b2lkIFNWR0VsZW1lbnQ6OmZpbmlzaFBhcnNpbmdDaGlsZHJlbigp
CiAgICAgLy8gZmluaXNoUGFyc2luZ0NoaWxkcmVuKCkgaXMgY2FsbGVkIHdoZW4gdGhlIGNsb3Nl
IHRhZyBpcyByZWFjaGVkIGZvciBhbiBlbGVtZW50IChlLmcuIDwvc3ZnPikKICAgICAvLyB3ZSBz
ZW5kIFNWR0xvYWQgZXZlbnRzIGhlcmUgaWYgd2UgY2FuLCBvdGhlcndpc2UgdGhleSdsbCBiZSBz
ZW50IHdoZW4gYW55IHJlcXVpcmVkIGxvYWRzIGZpbmlzaAogICAgIHNlbmRTVkdMb2FkRXZlbnRJ
ZlBvc3NpYmxlKCk7CisKKyAgICAvLyBOb3RpZnkgYWxsIHRoZSBlbGVtZW50cyB3aGljaCBoYXZl
IHJlZmVyZW5jZXMgdG8gdGhpcyBlbGVtZW50IHRvIHJlYnVpbGQgdGhlaXIgc2hhZG93IGFuZCBy
ZW5kZXIKKyAgICAvLyB0cmVlcywgZS5nLiBhIDx1c2U+IGVsZW1lbnQgcmVmZXJlbmNlcyBhIHRh
cmdldCBlbGVtZW50IGJlZm9yZSB0aGlzIHRhcmdldCBlbGVtZW50IGlzIGRlZmluZWQuCisgICAg
U1ZHRWxlbWVudEluc3RhbmNlOjppbnZhbGlkYXRlQWxsSW5zdGFuY2VzT2ZFbGVtZW50KHRoaXMp
OwogfQogCiBib29sIFNWR0VsZW1lbnQ6OmNoaWxkU2hvdWxkQ3JlYXRlUmVuZGVyZXIoY29uc3Qg
Tm9kZSYgY2hpbGQpIGNvbnN0CkluZGV4OiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cKPT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxNzcxOTEpCisrKyBMYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxOSBAQAorMjAxNC0xMi0x
MSAgU2FpZCBBYm91LUhhbGxhd2EgIDxzYWJvdWhhbGxhd2FAYXBwbGUuY29tPgorCisgICAgICAg
IE9ubHkgd2hlbiB0aGUgU1ZHIGlzIGlubGluZSBhbmQgb25seSB3aGVuIGEgc2hhcGUgaXMgcmVm
ZXJlbmNlZCBiZWZvcmUgaXQgaXMgZGVmaW5lZCwgdGhpcyBzaGFwZSB3aWxsIG5vdCBiZSBkcmF3
bi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEzOTQ1
MS4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFbnN1
cmUgdGhhdCB3aGVuIGEgPHVzZT4gZWxlbWVudCBpbnNpZGUgYW4gaW5saW5lIFNWRyByZWZlcmVu
Y2VzIGFub3RoZXIKKyAgICAgICAgdGFyZ2V0IFNWRyBlbGVtZW50LCB3aGljaCBoYXMgbm90IGJl
ZW4gZGVmaW5lZCB5ZXQsIGdldHMgaXRzIHNoYWRvdyBET00KKyAgICAgICAgdHJlZSB1cGRhdGVk
IG9uY2UgdGhlIHRhcmdldCBlbGVtZW50IGlzIGNyZWF0ZWQuIFVwZGF0aW5nIHRoZSBzaGFkb3cg
RE9NCisgICAgICAgIHRyZWUgb2YgdGhlIDx1c2U+IGVsZW1lbnQgc2hvdWxkIHVwZGF0ZSB0aGUg
Y29ycmVzcG9uZGluZyBzaGFkb3cgcmVuZGVyCisgICAgICAgIHRyZWUgYXMgd2VsbC4KKworICAg
ICAgICAqIHN2Zy9pbi1odG1sL2RlZnMtYWZ0ZXItdXNlLWV4cGVjdGVkLmh0bWw6IEFkZGVkLgor
ICAgICAgICAqIHN2Zy9pbi1odG1sL2RlZnMtYWZ0ZXItdXNlLmh0bWw6IEFkZGVkLgorCiAyMDE0
LTEyLTExICBCcmVuZGFuIExvbmcgIDxiLmxvbmdAY2FibGVsYWJzLmNvbT4KIAogICAgICAgICBS
ZW1vdmUgRGF0YUN1ZSAidGV4dCIgYXR0cmlidXRlCkluZGV4OiBMYXlvdXRUZXN0cy9zdmcvaW4t
aHRtbC9kZWZzLWFmdGVyLXVzZS1leHBlY3RlZC5odG1sCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRl
c3RzL3N2Zy9pbi1odG1sL2RlZnMtYWZ0ZXItdXNlLWV4cGVjdGVkLmh0bWwJKHJldmlzaW9uIDAp
CisrKyBMYXlvdXRUZXN0cy9zdmcvaW4taHRtbC9kZWZzLWFmdGVyLXVzZS1leHBlY3RlZC5odG1s
CSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsOCBAQAorPGh0bWw+Cis8Ym9keT4KKyAgPHN2ZyB4
bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgorICAgIDxyZWN0IHg9IjEwIiB5PSIx
MCIgd2lkdGg9IjEwMCIgaGVpZ2h0PSI1MCIgZmlsbD0ibGltZSIvPgorICAgIDxyZWN0IHg9IjEy
MCIgeT0iMTAiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiIGZpbGw9ImxpbWUiLz4KKyAgPC9zdmc+
Cis8L2JvZHk+Cis8L2h0bWw+CkluZGV4OiBMYXlvdXRUZXN0cy9zdmcvaW4taHRtbC9kZWZzLWFm
dGVyLXVzZS5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL3N2Zy9pbi1odG1sL2RlZnMt
YWZ0ZXItdXNlLmh0bWwJKHJldmlzaW9uIDApCisrKyBMYXlvdXRUZXN0cy9zdmcvaW4taHRtbC9k
ZWZzLWFmdGVyLXVzZS5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0wLDAgKzEsNDIgQEAKKzwhLS0K
KyAgICBFbnN1cmUgdGhhdCB3aGVuIGEgPHVzZT4gZWxlbWVudCBpbnNpZGUgYW4gaW5saW5lIFNW
RyByZWZlcmVuY2VzIGFub3RoZXIKKyAgICB0YXJnZXQgU1ZHIGVsZW1lbnQsIHdoaWNoIGhhcyBu
b3QgYmVlbiBkZWZpbmVkIHlldCwgZ2V0cyBpdHMgc2hhZG93IERPTQorICAgIHRyZWUgdXBkYXRl
ZCBvbmNlIHRoZSB0YXJnZXQgZWxlbWVudCBpcyBjcmVhdGVkLiBVcGRhdGluZyB0aGUgc2hhZG93
IERPTQorICAgIHRyZWUgb2YgdGhlIDx1c2U+IGVsZW1lbnQgc2hvdWxkIHVwZGF0ZSB0aGUgY29y
cmVzcG9uZGluZyBzaGFkb3cgcmVuZGVyCisgICAgdHJlZSBhcyB3ZWxsLgorICAgIAorICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzk0NjkKKy0tPgorPGh0bWw+
Cis8Ym9keT4KKyAgPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5z
OnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KKyAgICAgIAorICAgIDwhLS0g
RWFybHkgdGFyZ2V0IGVsZW1lbnRzJyBkZWZpbml0aW9uIC0tPgorICAgIDxkZWZzPgorICAgICAg
PGcgaWQ9InllbGxvdy1saW1lLXJlY3QiPgorICAgICAgICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0
aD0iMTAwIiBoZWlnaHQ9IjUwIiBmaWxsPSJ5ZWxsb3ciLz4KKyAgICAgICAgPHVzZSB4bGluazpo
cmVmPSIjbGltZS1yZWN0Ii8+CisgICAgICA8L2c+CisgICAgPC9kZWZzPgorICAgIAorICAgIDwh
LS0gZHJhdyB0d28gcmVkIHJlY3RhbmdsZXMgLS0+CisgICAgPHJlY3QgeD0iMTAiIHk9IjEwIiB3
aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIiBmaWxsPSJyZWQiLz4KKyAgICA8cmVjdCB4PSIxMjAiIHk9
IjEwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjUwIiBmaWxsPSJyZWQiLz4KKworICAgIDwhLS0gT3Zl
cmRyYXcgdGhlIHR3byByZWQgcmVjdGFuZ2xlcyB3aXRoIHR3byBvdGhlciBsaW1lIHJlY3Rhbmds
ZXMgLS0+CisgICAgPHVzZSB4PSIxMCIgeT0iMTAiIHhsaW5rOmhyZWY9IiN5ZWxsb3ctbGltZS1y
ZWN0Ii8+CisgICAgPHVzZSB4PSIxMjAiIHk9IjEwIiB4bGluazpocmVmPSIjb3JhbmdlLWxpbWUt
cmVjdCIvPgorICAgIAorICAgIDwhLS0gTGF0ZSB0YXJnZXQgZWxlbWVudHMnIGRlZmluaXRpb24g
LS0+CisgICAgPGRlZnM+CisgICAgICA8ZyBpZD0ib3JhbmdlLWxpbWUtcmVjdCI+CisgICAgICAg
IDxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAiIGhlaWdodD0iNTAiIGZpbGw9Im9yYW5nZSIv
PgorICAgICAgICA8dXNlIHhsaW5rOmhyZWY9IiNsaW1lLXJlY3QiLz4KKyAgICAgIDwvZz4KKyAg
ICAgIDxnIGlkPSJsaW1lLXJlY3QiPgorICAgICAgICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0i
MTAwIiBoZWlnaHQ9IjUwIiBmaWxsPSJsaW1lIi8+CisgICAgICA8L2c+CisgICAgPC9kZWZzPgor
ICA8L3N2Zz4KKzwvYm9keT4KKzwvaHRtbD4K
</data>

          </attachment>
      

    </bug>

</bugzilla>