<?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>146785</bug_id>
          
          <creation_ts>2015-07-09 08:21:35 -0700</creation_ts>
          <short_desc>toJSDOMWindow() does not handle objects that descend from the JS DOM Window (crashes on use)</short_desc>
          <delta_ts>2021-05-17 09:40:36 -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>WebCore JavaScript</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=223758</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter>mark.s.dittmer</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>ashvayka</cc>
    
    <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>ggaren</cc>
    
    <cc>joepeck</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1108196</commentid>
    <comment_count>0</comment_count>
    <who name="">mark.s.dittmer</who>
    <bug_when>2015-07-09 08:21:35 -0700</bug_when>
    <thetext>toJSDOMWindow() expects to be passed JSValue that is a JSDOMWindow, but it is invoked in contexts where the value may be some other Javascript object that hs the JS DOM Window in its prototype chain.

To reproduce, attempt to run the following line of Javascript:

Object.create(window).location;

The ensuing crash can be traced back to oJSDOMWindow() returning 0 (or NULL) in a context where it shouldn&apos;t because the JS DOM Window object can be readily looked up by walking the prototype chain of the Object.create-ed object.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1108582</commentid>
    <comment_count>1</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2015-07-10 04:29:13 -0700</bug_when>
    <thetext>Ugh!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1108583</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2015-07-10 04:29:34 -0700</bug_when>
    <thetext>&lt;rdar://problem/21764288&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1108595</commentid>
    <comment_count>3</comment_count>
    <who name="">mark.s.dittmer</who>
    <bug_when>2015-07-10 05:27:06 -0700</bug_when>
    <thetext>FYI: I have a fix and regression test ready for review, but I won&apos;t be able to post it until Monday.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1109007</commentid>
    <comment_count>4</comment_count>
      <attachid>256676</attachid>
    <who name="">mark.s.dittmer</who>
    <bug_when>2015-07-11 20:28:33 -0700</bug_when>
    <thetext>Created attachment 256676
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1109128</commentid>
    <comment_count>5</comment_count>
      <attachid>256676</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2015-07-13 10:24:00 -0700</bug_when>
    <thetext>Comment on attachment 256676
Patch

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

Some suggestions below.  I’m also not convinced yet that this fix should be implemented in the toJSDOMWindow() function.  I’m currently researching the issue.

&gt; Source/WebCore/bindings/js/JSDOMWindowBase.cpp:253
&gt; +        const ClassInfo* classInfo = asObject(value)-&gt;classInfo();

You’ve already computed the JSObject* above.  You can simplify this to:
    const ClassInfo* classInfo = object-&gt;classInfo();

&gt; Source/WebCore/bindings/js/JSDOMWindowBase.cpp:255
&gt; +            return jsCast&lt;JSDOMWindow*&gt;(asObject(value));

Ditto.  You can simplify this to:
    return jsCast&lt;JSDOMWindow*&gt;(object);

&gt; Source/WebCore/bindings/js/JSDOMWindowBase.cpp:257
&gt; +            return jsCast&lt;JSDOMWindowShell*&gt;(asObject(value))-&gt;window();

Ditto.  Simplify to:
    return jsCast&lt;JSDOMWindowShell*&gt;(object)-&gt;window();</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1109243</commentid>
    <comment_count>6</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2015-07-13 15:16:32 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Comment on attachment 256676 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=256676&amp;action=review
&gt; 
&gt; Some suggestions below.  I’m also not convinced yet that this fix should be
&gt; implemented in the toJSDOMWindow() function.  I’m currently researching the
&gt; issue.

OK, I’ve changed my mind.  We get to toJSDOMWindow() via jsDOMWindowLocation().  Hence, it is fair to expect toJSDOMWindow() to look up the window object.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1109244</commentid>
    <comment_count>7</comment_count>
      <attachid>256676</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2015-07-13 15:17:15 -0700</bug_when>
    <thetext>Comment on attachment 256676
Patch

r=me with fixes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1109245</commentid>
    <comment_count>8</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2015-07-13 15:20:44 -0700</bug_when>
    <thetext>For the record, here&apos;s the crashing stack trace:

(lldb) bt
* thread #1: tid = 0x24d88, 0x0000000115500f80 WebCore`WTF::RefPtr&lt;WebCore::DOMWindow&gt;::operator*(this=0x0000000000000598) const + 16 at RefPtr.h:68, queue = &apos;com.apple.main-thread&apos;, stop reason = EXC_BAD_ACCESS (code=1, address=0x598)
    frame #0: 0x0000000115500f80 WebCore`WTF::RefPtr&lt;WebCore::DOMWindow&gt;::operator*(this=0x0000000000000598) const + 16 at RefPtr.h:68
    frame #1: 0x0000000115500f5c WebCore`WebCore::JSDOMWindowBase::impl(this=0x0000000000000000) const + 28 at JSDOMWindowBase.h:48
    frame #2: 0x00000001155005c5 WebCore`WebCore::JSDOMWindow::impl(this=0x0000000000000000) const + 21 at JSDOMWindow.h:93
  * frame #3: 0x00000001157386eb WebCore`WebCore::jsDOMWindowLocation(exec=0x00007fff56cdf820, slotBase=0x000000011c86b100, thisValue=4774284352, (null)=PropertyName at 0x00007fff56cdf598) + 59 at JSDOMWindow.cpp:6078
    frame #4: 0x00000001125e6298 JavaScriptCore`JSC::PropertySlot::getValue(this=0x00007fff56cdf730, exec=0x00007fff56cdf820, propertyName=PropertyName at 0x00007fff56cdf5f0) const + 184 at PropertySlot.h:257
    frame #5: 0x00000001125e607b JavaScriptCore`JSC::JSValue::get(this=0x00007fff56cdf768, exec=0x00007fff56cdf820, propertyName=PropertyName at 0x00007fff56cdf640, slot=0x00007fff56cdf730) const + 91 at JSCJSValueInlines.h:704
    frame #6: 0x0000000112d996a1 JavaScriptCore`::llint_slow_path_get_by_id(exec=0x00007fff56cdf820, pc=0x000000011c9155c0) + 241 at LLIntSlowPaths.cpp:570
    frame #7: 0x0000000112da78d0 JavaScriptCore`llint_entry + 11668

This is attained by simply evaluating the following line in the Inspector console:

    Object.create(window).location</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1109352</commentid>
    <comment_count>9</comment_count>
      <attachid>256767</attachid>
    <who name="">mark.s.dittmer</who>
    <bug_when>2015-07-14 06:18:54 -0700</bug_when>
    <thetext>Created attachment 256767
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1109353</commentid>
    <comment_count>10</comment_count>
      <attachid>256768</attachid>
    <who name="">mark.s.dittmer</who>
    <bug_when>2015-07-14 06:29:55 -0700</bug_when>
    <thetext>Created attachment 256768
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1109370</commentid>
    <comment_count>11</comment_count>
      <attachid>256768</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2015-07-14 09:09:52 -0700</bug_when>
    <thetext>Comment on attachment 256768
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1111337</commentid>
    <comment_count>12</comment_count>
      <attachid>256768</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-07-22 10:22:34 -0700</bug_when>
    <thetext>Comment on attachment 256768
Patch

Clearing flags on attachment: 256768

Committed r187165: &lt;http://trac.webkit.org/changeset/187165&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1111338</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2015-07-22 10:22:39 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1111413</commentid>
    <comment_count>14</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-07-22 14:03:05 -0700</bug_when>
    <thetext>I think this changes the meaning of the toJSDOMWindow function, and so it should be renamed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1111638</commentid>
    <comment_count>15</comment_count>
    <who name="">mark.s.dittmer</who>
    <bug_when>2015-07-23 07:04:36 -0700</bug_when>
    <thetext>Darin, any suggestions? It seems to me that the role of the function is still to cast a value to a JSDOMWindow, so the name seems appropriate to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1111802</commentid>
    <comment_count>16</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-07-23 15:58:38 -0700</bug_when>
    <thetext>I’m not entirely sure.

I suppose that given how JavaScript works, the concept that an object that eventually in a prototype chain points to a DOM window *is* a DOM window, and a search of the prototype chain can be treated as a cast, is an OK concept.

This makes me worry that there are other cases like this, where we are checking the internal C++ class of what backs &quot;this&quot; objects in various DOM functions but we should really be searching the prototype chains of those objects instead. These are probably in other functions named toXXX, where XXX is something other than DOM window.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1111970</commentid>
    <comment_count>17</comment_count>
    <who name="">mark.s.dittmer</who>
    <bug_when>2015-07-24 05:46:25 -0700</bug_when>
    <thetext>That seems like a legitimate concern. I&apos;m not very familiar with the codebase. If you are suggesting that the subroutine of checking the prototype chain for some condition be abstracted (and given a different name), then that seems like a good idea.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1112338</commentid>
    <comment_count>18</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-07-26 20:24:53 -0700</bug_when>
    <thetext>I’m suggesting we create some tests demonstrating the same issue on other DOM elements; I don’t think it was good to fix this only for the DOM window given the same issue exists for everything! Once we have some tests I’m sure we can quickly fix the problem.

The name of the function is not the important issue, despite the fact that it was the first thing I commented on.

If you’d like to make those tests, I would be grateful, but if not someone else contributing to WebKit should do it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1760789</commentid>
    <comment_count>19</comment_count>
    <who name="Alexey Shvayka">ashvayka</who>
    <bug_when>2021-05-17 09:40:36 -0700</bug_when>
    <thetext>Thank you for fixing the crash, Mark!

Per spec (step 1.1.2.3 of https://heycam.github.io/webidl/#dfn-attribute-getter), there is no prototype chain traversal.
`Object.create(window).location` should throw TypeError, like Gecko and Blink do.

Since 2015, WebIDL bindings were significantly improved, so https://bugs.webkit.org/show_bug.cgi?id=223758 just drops the prototype chain lookup.
Also, it&apos;s not safe &amp; correct to perform getPrototypeDirect() unconditionally.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>256676</attachid>
            <date>2015-07-11 20:28:33 -0700</date>
            <delta_ts>2015-07-14 06:18:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-146785-20150711232736.patch</filename>
            <type>text/plain</type>
            <size>3841</size>
            <attacher>mark.s.dittmer</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg2NzEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTExMWVmMWU5N2QzOTJk
N2I2ODY5MmM1MWE2MmJiZTE5NjQ5OGRkNi4uYmQ0OTAyYzg3YjdiNDdkNTE3MThmZjdjNTY2MThi
MjNkNDBlMzVmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE1LTA3LTExICBNYXJr
IERpdHRtZXIgIDxtYXJrLnMuZGl0dG1lckBnbWFpbC5jb20+CisKKyAgICAgICAgRml4IHRvSlNE
T01XaW5kb3coKSBpbiB0aGUgY2FzZSBvZiBhbiBvYmplY3QgdGhhdCBoYXMgdGhlIGFjdHVhbCBK
UyBET00gd2luZG93IGluIGl0cyBwcm90b3R5cGUgY2hhaW4uCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDY3ODUKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFz
ZS5jcHA6IHRvSlNET01XaW5kb3coKTogV2FsayB0aGUgcHJvdG90eXBlIGNoYWluIG9mIHRoZSBn
aXZlbiBKU1ZhbHVlIHVudGlsIGEgSlNET01XaW5kb3cgb3IgSlNET01XaW5kb3dTaGVsbCBpcyBm
b3VuZC4KKwogMjAxNS0wNy0xMCAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNv
bT4KIAogICAgICAgICBbaU9TIFdLMl0gU2Nyb2xsaW5nIGlzc3VlcyBvbiBob3Jpem9udGFsbHkg
c2Nyb2xsYWJsZSBSVEwgcGFnZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRE9NV2luZG93QmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RP
TVdpbmRvd0Jhc2UuY3BwCmluZGV4IDVmZTJjMjhlYzM3YmZmYjlhYzdkNDIyOGM5NjhiMmIyYzU0
MzU1ODIuLmY4NzE2MGU3NjQ2ODcyOGFjNGI0YzNiNTk5MTIyMzFkOWZjY2EyMWYgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcApAQCAtMjQ4LDEx
ICsyNDgsMTUgQEAgSlNET01XaW5kb3cqIHRvSlNET01XaW5kb3coSlNWYWx1ZSB2YWx1ZSkKIHsK
ICAgICBpZiAoIXZhbHVlLmlzT2JqZWN0KCkpCiAgICAgICAgIHJldHVybiAwOwotICAgIGNvbnN0
IENsYXNzSW5mbyogY2xhc3NJbmZvID0gYXNPYmplY3QodmFsdWUpLT5jbGFzc0luZm8oKTsKLSAg
ICBpZiAoY2xhc3NJbmZvID09IEpTRE9NV2luZG93OjppbmZvKCkpCi0gICAgICAgIHJldHVybiBq
c0Nhc3Q8SlNET01XaW5kb3cqPihhc09iamVjdCh2YWx1ZSkpOwotICAgIGlmIChjbGFzc0luZm8g
PT0gSlNET01XaW5kb3dTaGVsbDo6aW5mbygpKQotICAgICAgICByZXR1cm4ganNDYXN0PEpTRE9N
V2luZG93U2hlbGwqPihhc09iamVjdCh2YWx1ZSkpLT53aW5kb3coKTsKKyAgICB3aGlsZSAoIXZh
bHVlLmlzTnVsbCgpKSB7CisgICAgICAgIGNvbnN0IEpTT2JqZWN0KiBvYmplY3QgPSBhc09iamVj
dCh2YWx1ZSk7CisgICAgICAgIGNvbnN0IENsYXNzSW5mbyogY2xhc3NJbmZvID0gYXNPYmplY3Qo
dmFsdWUpLT5jbGFzc0luZm8oKTsKKyAgICAgICAgaWYgKGNsYXNzSW5mbyA9PSBKU0RPTVdpbmRv
dzo6aW5mbygpKQorICAgICAgICAgICAgcmV0dXJuIGpzQ2FzdDxKU0RPTVdpbmRvdyo+KGFzT2Jq
ZWN0KHZhbHVlKSk7CisgICAgICAgIGlmIChjbGFzc0luZm8gPT0gSlNET01XaW5kb3dTaGVsbDo6
aW5mbygpKQorICAgICAgICAgICAgcmV0dXJuIGpzQ2FzdDxKU0RPTVdpbmRvd1NoZWxsKj4oYXNP
YmplY3QodmFsdWUpKS0+d2luZG93KCk7CisgICAgICAgIHZhbHVlID0gb2JqZWN0LT5wcm90b3R5
cGUoKTsKKyAgICB9CiAgICAgcmV0dXJuIDA7CiB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3Rz
L0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA1MzJlNjA1NDc1YTg0MjBm
MGE3ZTcxMTI4ZTFlN2YxNWRhMjhkOGI1Li42NjIxMWJmMTRkNDM1NDQ2YWQ4YmRhY2M0ZmU2OTc2
OTU0MjgyYzc2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0
VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTUtMDctMTEgIE1hcmsgRGl0dG1l
ciAgPG1hcmsucy5kaXR0bWVyQGdtYWlsLmNvbT4KKworICAgICAgICBOZXcgdGVzdDogT2JqZWN0
LmNyZWF0ZSh3aW5kb3cpLmxvY2F0aW9uIHdpbGwgdHJpZ2dlciBhIGNyYXNoIHdoZW4gdG9KU0RP
TVdpbmRvdygpIHJldHVybnMgTlVMTCBvbiBhbiBvYmplY3QgdGhhdCBoYXZlIHRoZSBKUyBET00g
V2luZG93IGluIGl0cyBwcm90b3R5cGUgY2hhaW4uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDY3ODUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIGpzL3Byb3BlcnR5LW9mLXdpbmRvdy1hcy1wcm90b3R5
cGUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGpzL3Byb3BlcnR5LW9mLXdpbmRvdy1hcy1wcm90
b3R5cGUuaHRtbDoKKwogMjAxNS0wNy0xMSAgRGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBwbGUu
Y29tPgogCiAgICAgICAgIGh0dHAvdGVzdHMvc2VjdXJpdHkvWEZyYW1lT3B0aW9ucy94LWZyYW1l
LW9wdGlvbnMtZGVueS1tZXRhLXRhZy1wYXJlbnQtc2FtZS1vcmlnaW4tZGVueS5odG1sIGNyYXNo
ZXMgb24gV2luZG93cwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvcHJvcGVydHktb2Ytd2lu
ZG93LWFzLXByb3RvdHlwZS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9qcy9wcm9wZXJ0eS1v
Zi13aW5kb3ctYXMtcHJvdG90eXBlLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi40M2U1ZWVlZGJm
MWI0MzVmOTZjM2EyMGJmODE0MDFhZWU0MzMxOTgxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvanMvcHJvcGVydHktb2Ytd2luZG93LWFzLXByb3RvdHlwZS1leHBlY3RlZC50eHQKQEAg
LTAsMCArMSw0IEBACitQQVNTIHN1Y2Nlc3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09N
UExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvanMvcHJvcGVydHktb2Ytd2luZG93LWFz
LXByb3RvdHlwZS5odG1sIGIvTGF5b3V0VGVzdHMvanMvcHJvcGVydHktb2Ytd2luZG93LWFzLXBy
b3RvdHlwZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjlkOTM0NWVkOGY5ODcwYjc4YzJjMjdjOTViNmE0M2Vj
M2NlMjJjZTcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9qcy9wcm9wZXJ0eS1vZi13
aW5kb3ctYXMtcHJvdG90eXBlLmh0bWwKQEAgLTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwg
UFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQg
c3JjPSIuLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJv
ZHk+Cis8c2NyaXB0PgorLy8gU28gbG9uZyBhcyB0aGUgbGluZSBiZWxvdyBkb2Vzbid0IGNyYXNo
LCB0aGlzIHRlc3QgcGFzc2VzLgorT2JqZWN0LmNyZWF0ZSh3aW5kb3cpLmxvY2F0aW9uOworPC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3Jp
cHQ+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>256767</attachid>
            <date>2015-07-14 06:18:54 -0700</date>
            <delta_ts>2015-07-14 06:29:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-146785-20150714091747.patch</filename>
            <type>text/plain</type>
            <size>3814</size>
            <attacher>mark.s.dittmer</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg2NzEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTExMWVmMWU5N2QzOTJk
N2I2ODY5MmM1MWE2MmJiZTE5NjQ5OGRkNi4uYmQ0OTAyYzg3YjdiNDdkNTE3MThmZjdjNTY2MThi
MjNkNDBlMzVmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE1LTA3LTExICBNYXJr
IERpdHRtZXIgIDxtYXJrLnMuZGl0dG1lckBnbWFpbC5jb20+CisKKyAgICAgICAgRml4IHRvSlNE
T01XaW5kb3coKSBpbiB0aGUgY2FzZSBvZiBhbiBvYmplY3QgdGhhdCBoYXMgdGhlIGFjdHVhbCBK
UyBET00gd2luZG93IGluIGl0cyBwcm90b3R5cGUgY2hhaW4uCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDY3ODUKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFz
ZS5jcHA6IHRvSlNET01XaW5kb3coKTogV2FsayB0aGUgcHJvdG90eXBlIGNoYWluIG9mIHRoZSBn
aXZlbiBKU1ZhbHVlIHVudGlsIGEgSlNET01XaW5kb3cgb3IgSlNET01XaW5kb3dTaGVsbCBpcyBm
b3VuZC4KKwogMjAxNS0wNy0xMCAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNv
bT4KIAogICAgICAgICBbaU9TIFdLMl0gU2Nyb2xsaW5nIGlzc3VlcyBvbiBob3Jpem9udGFsbHkg
c2Nyb2xsYWJsZSBSVEwgcGFnZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRE9NV2luZG93QmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RP
TVdpbmRvd0Jhc2UuY3BwCmluZGV4IDVmZTJjMjhlYzM3YmZmYjlhYzdkNDIyOGM5NjhiMmIyYzU0
MzU1ODIuLjY0MjkwMWViZTE5OTY3NTE5YjdlNDZhOWE0M2U1YTkzNTdjODg1ODkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcApAQCAtMjQ4LDEx
ICsyNDgsMTUgQEAgSlNET01XaW5kb3cqIHRvSlNET01XaW5kb3coSlNWYWx1ZSB2YWx1ZSkKIHsK
ICAgICBpZiAoIXZhbHVlLmlzT2JqZWN0KCkpCiAgICAgICAgIHJldHVybiAwOwotICAgIGNvbnN0
IENsYXNzSW5mbyogY2xhc3NJbmZvID0gYXNPYmplY3QodmFsdWUpLT5jbGFzc0luZm8oKTsKLSAg
ICBpZiAoY2xhc3NJbmZvID09IEpTRE9NV2luZG93OjppbmZvKCkpCi0gICAgICAgIHJldHVybiBq
c0Nhc3Q8SlNET01XaW5kb3cqPihhc09iamVjdCh2YWx1ZSkpOwotICAgIGlmIChjbGFzc0luZm8g
PT0gSlNET01XaW5kb3dTaGVsbDo6aW5mbygpKQotICAgICAgICByZXR1cm4ganNDYXN0PEpTRE9N
V2luZG93U2hlbGwqPihhc09iamVjdCh2YWx1ZSkpLT53aW5kb3coKTsKKyAgICB3aGlsZSAoIXZh
bHVlLmlzTnVsbCgpKSB7CisgICAgICAgIGNvbnN0IEpTT2JqZWN0KiBvYmplY3QgPSBhc09iamVj
dCh2YWx1ZSk7CisgICAgICAgIGNvbnN0IENsYXNzSW5mbyogY2xhc3NJbmZvID0gb2JqZWN0LT5j
bGFzc0luZm8oKTsKKyAgICAgICAgaWYgKGNsYXNzSW5mbyA9PSBKU0RPTVdpbmRvdzo6aW5mbygp
KQorICAgICAgICAgICAgcmV0dXJuIGpzQ2FzdDxKU0RPTVdpbmRvdyo+KG9iamVjdCk7CisgICAg
ICAgIGlmIChjbGFzc0luZm8gPT0gSlNET01XaW5kb3dTaGVsbDo6aW5mbygpKQorICAgICAgICAg
ICAgcmV0dXJuIGpzQ2FzdDxKU0RPTVdpbmRvd1NoZWxsKj4ob2JqZWN0KS0+d2luZG93KCk7Cisg
ICAgICAgIHZhbHVlID0gb2JqZWN0LT5wcm90b3R5cGUoKTsKKyAgICB9CiAgICAgcmV0dXJuIDA7
CiB9CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0No
YW5nZUxvZwppbmRleCA1MzJlNjA1NDc1YTg0MjBmMGE3ZTcxMTI4ZTFlN2YxNWRhMjhkOGI1Li42
NjIxMWJmMTRkNDM1NDQ2YWQ4YmRhY2M0ZmU2OTc2OTU0MjgyYzc2IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTMgQEAKKzIwMTUtMDctMTEgIE1hcmsgRGl0dG1lciAgPG1hcmsucy5kaXR0bWVyQGdtYWlsLmNv
bT4KKworICAgICAgICBOZXcgdGVzdDogT2JqZWN0LmNyZWF0ZSh3aW5kb3cpLmxvY2F0aW9uIHdp
bGwgdHJpZ2dlciBhIGNyYXNoIHdoZW4gdG9KU0RPTVdpbmRvdygpIHJldHVybnMgTlVMTCBvbiBh
biBvYmplY3QgdGhhdCBoYXZlIHRoZSBKUyBET00gV2luZG93IGluIGl0cyBwcm90b3R5cGUgY2hh
aW4uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDY3
ODUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGpz
L3Byb3BlcnR5LW9mLXdpbmRvdy1hcy1wcm90b3R5cGUtZXhwZWN0ZWQudHh0OgorICAgICAgICAq
IGpzL3Byb3BlcnR5LW9mLXdpbmRvdy1hcy1wcm90b3R5cGUuaHRtbDoKKwogMjAxNS0wNy0xMSAg
RGF2aWQgS2lsemVyICA8ZGRraWx6ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIGh0dHAvdGVzdHMv
c2VjdXJpdHkvWEZyYW1lT3B0aW9ucy94LWZyYW1lLW9wdGlvbnMtZGVueS1tZXRhLXRhZy1wYXJl
bnQtc2FtZS1vcmlnaW4tZGVueS5odG1sIGNyYXNoZXMgb24gV2luZG93cwpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvanMvcHJvcGVydHktb2Ytd2luZG93LWFzLXByb3RvdHlwZS1leHBlY3RlZC50
eHQgYi9MYXlvdXRUZXN0cy9qcy9wcm9wZXJ0eS1vZi13aW5kb3ctYXMtcHJvdG90eXBlLWV4cGVj
dGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwLi40M2U1ZWVlZGJmMWI0MzVmOTZjM2EyMGJmODE0MDFhZWU0MzMx
OTgxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvanMvcHJvcGVydHktb2Ytd2luZG93
LWFzLXByb3RvdHlwZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACitQQVNTIHN1Y2Nlc3Nm
dWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvanMvcHJvcGVydHktb2Ytd2luZG93LWFzLXByb3RvdHlwZS5odG1sIGIvTGF5b3V0VGVz
dHMvanMvcHJvcGVydHktb2Ytd2luZG93LWFzLXByb3RvdHlwZS5odG1sCm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjlk
OTM0NWVkOGY5ODcwYjc4YzJjMjdjOTViNmE0M2VjM2NlMjJjZTcKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9qcy9wcm9wZXJ0eS1vZi13aW5kb3ctYXMtcHJvdG90eXBlLmh0bWwKQEAg
LTAsMCArMSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8v
RU4iPgorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVzdC1w
cmUuanMiPjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0PgorLy8gU28gbG9uZyBh
cyB0aGUgbGluZSBiZWxvdyBkb2Vzbid0IGNyYXNoLCB0aGlzIHRlc3QgcGFzc2VzLgorT2JqZWN0
LmNyZWF0ZSh3aW5kb3cpLmxvY2F0aW9uOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVz
b3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>256768</attachid>
            <date>2015-07-14 06:29:55 -0700</date>
            <delta_ts>2015-07-22 10:22:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-146785-20150714092848.patch</filename>
            <type>text/plain</type>
            <size>3808</size>
            <attacher>mark.s.dittmer</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTg2NzEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNTExMWVmMWU5N2QzOTJk
N2I2ODY5MmM1MWE2MmJiZTE5NjQ5OGRkNi4uYmQ0OTAyYzg3YjdiNDdkNTE3MThmZjdjNTY2MThi
MjNkNDBlMzVmYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDEyIEBACisyMDE1LTA3LTExICBNYXJr
IERpdHRtZXIgIDxtYXJrLnMuZGl0dG1lckBnbWFpbC5jb20+CisKKyAgICAgICAgRml4IHRvSlNE
T01XaW5kb3coKSBpbiB0aGUgY2FzZSBvZiBhbiBvYmplY3QgdGhhdCBoYXMgdGhlIGFjdHVhbCBK
UyBET00gd2luZG93IGluIGl0cyBwcm90b3R5cGUgY2hhaW4uCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDY3ODUKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGJpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFz
ZS5jcHA6IHRvSlNET01XaW5kb3coKTogV2FsayB0aGUgcHJvdG90eXBlIGNoYWluIG9mIHRoZSBn
aXZlbiBKU1ZhbHVlIHVudGlsIGEgSlNET01XaW5kb3cgb3IgSlNET01XaW5kb3dTaGVsbCBpcyBm
b3VuZC4KKwogMjAxNS0wNy0xMCAgU2ltb24gRnJhc2VyICA8c2ltb24uZnJhc2VyQGFwcGxlLmNv
bT4KIAogICAgICAgICBbaU9TIFdLMl0gU2Nyb2xsaW5nIGlzc3VlcyBvbiBob3Jpem9udGFsbHkg
c2Nyb2xsYWJsZSBSVEwgcGFnZXMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L2pzL0pTRE9NV2luZG93QmFzZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9qcy9KU0RP
TVdpbmRvd0Jhc2UuY3BwCmluZGV4IDVmZTJjMjhlYzM3YmZmYjlhYzdkNDIyOGM5NjhiMmIyYzU0
MzU1ODIuLjlhYjBhOGYwZDBmYmQ3OGU1ZTU3ZDU4MDQ3N2U2NTVjYjg5NTk1ZDEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL2pzL0pTRE9NV2luZG93QmFzZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYmluZGluZ3MvanMvSlNET01XaW5kb3dCYXNlLmNwcApAQCAtMjQ4LDEx
ICsyNDgsMTUgQEAgSlNET01XaW5kb3cqIHRvSlNET01XaW5kb3coSlNWYWx1ZSB2YWx1ZSkKIHsK
ICAgICBpZiAoIXZhbHVlLmlzT2JqZWN0KCkpCiAgICAgICAgIHJldHVybiAwOwotICAgIGNvbnN0
IENsYXNzSW5mbyogY2xhc3NJbmZvID0gYXNPYmplY3QodmFsdWUpLT5jbGFzc0luZm8oKTsKLSAg
ICBpZiAoY2xhc3NJbmZvID09IEpTRE9NV2luZG93OjppbmZvKCkpCi0gICAgICAgIHJldHVybiBq
c0Nhc3Q8SlNET01XaW5kb3cqPihhc09iamVjdCh2YWx1ZSkpOwotICAgIGlmIChjbGFzc0luZm8g
PT0gSlNET01XaW5kb3dTaGVsbDo6aW5mbygpKQotICAgICAgICByZXR1cm4ganNDYXN0PEpTRE9N
V2luZG93U2hlbGwqPihhc09iamVjdCh2YWx1ZSkpLT53aW5kb3coKTsKKyAgICB3aGlsZSAoIXZh
bHVlLmlzTnVsbCgpKSB7CisgICAgICAgIEpTT2JqZWN0KiBvYmplY3QgPSBhc09iamVjdCh2YWx1
ZSk7CisgICAgICAgIGNvbnN0IENsYXNzSW5mbyogY2xhc3NJbmZvID0gb2JqZWN0LT5jbGFzc0lu
Zm8oKTsKKyAgICAgICAgaWYgKGNsYXNzSW5mbyA9PSBKU0RPTVdpbmRvdzo6aW5mbygpKQorICAg
ICAgICAgICAgcmV0dXJuIGpzQ2FzdDxKU0RPTVdpbmRvdyo+KG9iamVjdCk7CisgICAgICAgIGlm
IChjbGFzc0luZm8gPT0gSlNET01XaW5kb3dTaGVsbDo6aW5mbygpKQorICAgICAgICAgICAgcmV0
dXJuIGpzQ2FzdDxKU0RPTVdpbmRvd1NoZWxsKj4ob2JqZWN0KS0+d2luZG93KCk7CisgICAgICAg
IHZhbHVlID0gb2JqZWN0LT5wcm90b3R5cGUoKTsKKyAgICB9CiAgICAgcmV0dXJuIDA7CiB9CiAK
ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA1MzJlNjA1NDc1YTg0MjBmMGE3ZTcxMTI4ZTFlN2YxNWRhMjhkOGI1Li42NjIxMWJm
MTRkNDM1NDQ2YWQ4YmRhY2M0ZmU2OTc2OTU0MjgyYzc2IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAK
KzIwMTUtMDctMTEgIE1hcmsgRGl0dG1lciAgPG1hcmsucy5kaXR0bWVyQGdtYWlsLmNvbT4KKwor
ICAgICAgICBOZXcgdGVzdDogT2JqZWN0LmNyZWF0ZSh3aW5kb3cpLmxvY2F0aW9uIHdpbGwgdHJp
Z2dlciBhIGNyYXNoIHdoZW4gdG9KU0RPTVdpbmRvdygpIHJldHVybnMgTlVMTCBvbiBhbiBvYmpl
Y3QgdGhhdCBoYXZlIHRoZSBKUyBET00gV2luZG93IGluIGl0cyBwcm90b3R5cGUgY2hhaW4uCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDY3ODUKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIGpzL3Byb3Bl
cnR5LW9mLXdpbmRvdy1hcy1wcm90b3R5cGUtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIGpzL3By
b3BlcnR5LW9mLXdpbmRvdy1hcy1wcm90b3R5cGUuaHRtbDoKKwogMjAxNS0wNy0xMSAgRGF2aWQg
S2lsemVyICA8ZGRraWx6ZXJAYXBwbGUuY29tPgogCiAgICAgICAgIGh0dHAvdGVzdHMvc2VjdXJp
dHkvWEZyYW1lT3B0aW9ucy94LWZyYW1lLW9wdGlvbnMtZGVueS1tZXRhLXRhZy1wYXJlbnQtc2Ft
ZS1vcmlnaW4tZGVueS5odG1sIGNyYXNoZXMgb24gV2luZG93cwpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvanMvcHJvcGVydHktb2Ytd2luZG93LWFzLXByb3RvdHlwZS1leHBlY3RlZC50eHQgYi9M
YXlvdXRUZXN0cy9qcy9wcm9wZXJ0eS1vZi13aW5kb3ctYXMtcHJvdG90eXBlLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi40M2U1ZWVlZGJmMWI0MzVmOTZjM2EyMGJmODE0MDFhZWU0MzMxOTgxCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvanMvcHJvcGVydHktb2Ytd2luZG93LWFzLXBy
b3RvdHlwZS1leHBlY3RlZC50eHQKQEAgLTAsMCArMSw0IEBACitQQVNTIHN1Y2Nlc3NmdWxseVBh
cnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
anMvcHJvcGVydHktb2Ytd2luZG93LWFzLXByb3RvdHlwZS5odG1sIGIvTGF5b3V0VGVzdHMvanMv
cHJvcGVydHktb2Ytd2luZG93LWFzLXByb3RvdHlwZS5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0
CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjlkOTM0NWVk
OGY5ODcwYjc4YzJjMjdjOTViNmE0M2VjM2NlMjJjZTcKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlv
dXRUZXN0cy9qcy9wcm9wZXJ0eS1vZi13aW5kb3ctYXMtcHJvdG90eXBlLmh0bWwKQEAgLTAsMCAr
MSwxMyBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQgSFRNTC8vRU4iPgor
PGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0PgorLy8gU28gbG9uZyBhcyB0aGUg
bGluZSBiZWxvdyBkb2Vzbid0IGNyYXNoLCB0aGlzIHRlc3QgcGFzc2VzLgorT2JqZWN0LmNyZWF0
ZSh3aW5kb3cpLmxvY2F0aW9uOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vcmVzb3VyY2Vz
L2pzLXRlc3QtcG9zdC5qcyI+PC9zY3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>