<?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>47322</bug_id>
          
          <creation_ts>2010-10-06 19:36:33 -0700</creation_ts>
          <short_desc>Crash on reload when CSS property &apos;content&apos; has malformed URL.</short_desc>
          <delta_ts>2011-01-18 22:03:35 -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>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="James Kozianski">koz</reporter>
          <assigned_to name="James Kozianski">koz</assigned_to>
          <cc>ap</cc>
    
    <cc>commit-queue</cc>
    
    <cc>noel.gordon</cc>
    
    <cc>simon.fraser</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>290769</commentid>
    <comment_count>0</comment_count>
    <who name="James Kozianski">koz</who>
    <bug_when>2010-10-06 19:36:33 -0700</bug_when>
    <thetext>Crash on reload when CSS property &apos;content&apos; has malformed URL.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291201</commentid>
    <comment_count>1</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-10-07 12:51:19 -0700</bug_when>
    <thetext>I don&apos;t like this stack trace, let&apos;s move to Security for now.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291203</commentid>
    <comment_count>2</comment_count>
      <attachid>70136</attachid>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-10-07 12:54:07 -0700</bug_when>
    <thetext>Created attachment 70136
test case (may crash)

With this test case, I can reliably get an assertion failure with a debug build of ToT. But it doesn&apos;t crash Safari 5.0.2.

Were you observing the crash with shipping Safari or Chrome? Could you please attach your test case, or provide a link to a Web site?

#0	0x1029cb73c in WTF::RefCountedBase::derefBase at RefCounted.h:80
#1	0x1028bb261 in WTF::RefCounted&lt;WebCore::StyleImage&gt;::deref at RefCounted.h:138
#2	0x1029a3240 in WebCore::ContentData::deleteContent at ContentData.cpp:66
#3	0x1029a3297 in WebCore::ContentData::clear at ContentData.cpp:32
#4	0x1029a386b in WebCore::ContentData::~ContentData at ContentData.h:45
#5	0x1029a3794 in WTF::deleteOwnedPtr&lt;WebCore::ContentData&gt; at OwnPtrCommon.h:59
#6	0x1029a3854 in WTF::OwnPtr&lt;WebCore::ContentData&gt;::~OwnPtr at OwnPtr.h:57
#7	0x10340ba0a in WebCore::StyleRareNonInheritedData::~StyleRareNonInheritedData at StyleRareNonInheritedData.cpp:104
#8	0x102a77923 in WTF::RefCounted&lt;WebCore::StyleRareNonInheritedData&gt;::deref at RefCounted.h:139
#9	0x1028be6db in WTF::derefIfNotNull&lt;WebCore::StyleRareNonInheritedData&gt; at PassRefPtr.h:58
#10	0x1032e7826 in WTF::RefPtr&lt;WebCore::StyleRareNonInheritedData&gt;::~RefPtr at RefPtr.h:58
#11	0x1032e783d in WebCore::DataRef&lt;WebCore::StyleRareNonInheritedData&gt;::~DataRef at DataRef.h:31
#12	0x1032e4e61 in WebCore::RenderStyle::~RenderStyle at RenderStyle.cpp:161
#13	0x1029cd0af in WTF::RefCounted&lt;WebCore::RenderStyle&gt;::deref at RefCounted.h:139
#14	0x1028c39b3 in WTF::derefIfNotNull&lt;WebCore::RenderStyle&gt; at PassRefPtr.h:58
#15	0x1029cd0f0 in WTF::RefPtr&lt;WebCore::RenderStyle&gt;::~RefPtr at RefPtr.h:58
#16	0x1032e8d09 in WTF::VectorDestructor&lt;true, WTF::RefPtr&lt;WebCore::RenderStyle&gt; &gt;::destruct at Vector.h:90
#17	0x1032e8d37 in WTF::VectorTypeOperations&lt;WTF::RefPtr&lt;WebCore::RenderStyle&gt; &gt;::destruct at Vector.h:245
#18	0x1032e8db5 in WTF::Vector&lt;WTF::RefPtr&lt;WebCore::RenderStyle&gt;, 4ul&gt;::shrink at Vector.h:849
#19	0x1032e8dee in WTF::Vector&lt;WTF::RefPtr&lt;WebCore::RenderStyle&gt;, 4ul&gt;::~Vector at Vector.h:517
#20	0x1032e8e21 in WTF::deleteOwnedPtr&lt;WTF::Vector&lt;WTF::RefPtr&lt;WebCore::RenderStyle&gt;, 4ul&gt; &gt; at OwnPtrCommon.h:59
#21	0x1032e8eba in WTF::OwnPtr&lt;WTF::Vector&lt;WTF::RefPtr&lt;WebCore::RenderStyle&gt;, 4ul&gt; &gt;::~OwnPtr at OwnPtr.h:57
#22	0x1032e4e3a in WebCore::RenderStyle::~RenderStyle at RenderStyle.cpp:161
&lt;...&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291204</commentid>
    <comment_count>3</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-10-07 12:54:38 -0700</bug_when>
    <thetext>Actually, it looks like a null ptr crash, I guess we can move it back from security.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291448</commentid>
    <comment_count>4</comment_count>
      <attachid>70203</attachid>
    <who name="James Kozianski">koz</who>
    <bug_when>2010-10-07 22:12:37 -0700</bug_when>
    <thetext>Created attachment 70203
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291449</commentid>
    <comment_count>5</comment_count>
    <who name="James Kozianski">koz</who>
    <bug_when>2010-10-07 22:21:29 -0700</bug_when>
    <thetext>This particular test case only seems to crash Chromium, possibly because of the differences between GURL and KURL.

There would be a crash if any of the &apos;return 0;&apos; paths of CSSImageValue::cachedImage() get hit though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291451</commentid>
    <comment_count>6</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-10-07 22:30:23 -0700</bug_when>
    <thetext>What about my test case? It crashed Safari, even if only in debug mode. Please be sure to include a test case that crashes at least on Mac debug buildbot.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291459</commentid>
    <comment_count>7</comment_count>
      <attachid>70205</attachid>
    <who name="James Kozianski">koz</who>
    <bug_when>2010-10-07 23:02:52 -0700</bug_when>
    <thetext>Created attachment 70205
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291460</commentid>
    <comment_count>8</comment_count>
    <who name="James Kozianski">koz</who>
    <bug_when>2010-10-07 23:08:40 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; What about my test case? It crashed Safari, even if only in debug mode. Please be sure to include a test case that crashes at least on Mac debug buildbot.

I&apos;ve amended my test so that it crashes on both WebKit and Chromium.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291467</commentid>
    <comment_count>9</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-10-07 23:24:42 -0700</bug_when>
    <thetext>Thanks for updating the patch!

The patch looks sane. Simon is probably the best reviewer for it, according to svn blame.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291693</commentid>
    <comment_count>10</comment_count>
      <attachid>70205</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-10-08 09:10:45 -0700</bug_when>
    <thetext>Comment on attachment 70205
Patch

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

r=me but please fix the test.

&gt; LayoutTests/fast/css-generated-content/malformed-url.html:3
&gt; +&lt;div style=&quot;content:url(//%);&quot;&gt;&lt;/div&gt;              &lt;!-- Crashes Chromium --&gt;
&gt; +&lt;div style=&quot;content:url(http://|server|/);&quot;&gt;&lt;/div&gt; &lt;!-- Crashes debug WebKit --&gt;

Please remove the comments, since once this bug is fixed, they will no longer be correct.

I don&apos;t like the strategy of navigating to another page to finish the test. Please change this to run the test in an iframe.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291740</commentid>
    <comment_count>11</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-10-08 10:20:32 -0700</bug_when>
    <thetext>&gt; I don&apos;t like the strategy of navigating to another page to finish the test. Please change this to run the test in an iframe.

Personally, I use these techniques interchangeably. Why is it a bad idea to navigate? It seems that you need two files with either approach, so readability shouldn&apos;t be affected. What am I missing?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291741</commentid>
    <comment_count>12</comment_count>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-10-08 10:23:26 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; &gt; I don&apos;t like the strategy of navigating to another page to finish the test. Please change this to run the test in an iframe.
&gt; 
&gt; Personally, I use these techniques interchangeably. Why is it a bad idea to navigate? It seems that you need two files with either approach, so readability shouldn&apos;t be affected. What am I missing?

Do we have other tests that do this reliably? I&apos;m just a little leery of how well DRT hands navigation during a test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291751</commentid>
    <comment_count>13</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-10-08 10:30:24 -0700</bug_when>
    <thetext>Yes - as long as you call layoutTestController.waitUntilDone()/notifyDone(), it all just works.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291753</commentid>
    <comment_count>14</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-10-08 10:33:59 -0700</bug_when>
    <thetext>Some tests also reload of the same document (adding a query or changing window.name to know that it&apos;s the second iteration), or navigate to data:&lt;p&gt;PASS&lt;p&gt;&lt;script&gt;if (window.layoutTestController) layoutTestController.notifyDone();&lt;/script&gt;. That has the benefit of only having one file per test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291754</commentid>
    <comment_count>15</comment_count>
    <who name="Alexey Proskuryakov">ap</who>
    <bug_when>2010-10-08 10:34:30 -0700</bug_when>
    <thetext>More precisely, data:text/html,&lt;p&gt;PASS&lt;p&gt;&lt;script&gt;if (window.layoutTestController) layoutTestController.notifyDone();&lt;/script&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291756</commentid>
    <comment_count>16</comment_count>
      <attachid>70205</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2010-10-08 10:44:21 -0700</bug_when>
    <thetext>Comment on attachment 70205
Patch

Based on discussion, the test is fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291829</commentid>
    <comment_count>17</comment_count>
      <attachid>70205</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-10-08 13:21:12 -0700</bug_when>
    <thetext>Comment on attachment 70205
Patch

Clearing flags on attachment: 70205

Committed r69418: &lt;http://trac.webkit.org/changeset/69418&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>291830</commentid>
    <comment_count>18</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-10-08 13:21:17 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>70136</attachid>
            <date>2010-10-07 12:54:07 -0700</date>
            <delta_ts>2010-10-07 12:54:07 -0700</delta_ts>
            <desc>test case (may crash)</desc>
            <filename>content-url.html</filename>
            <type>text/html</type>
            <size>101</size>
            <attacher name="Alexey Proskuryakov">ap</attacher>
            
              <data encoding="base64">PHN0eWxlPgpkaXY6YWZ0ZXIgeyBjb250ZW50OiB1cmwoaHR0cDovL3xzZXJ2ZXJ8Lyk7IH0KPC9z
dHlsZT4KPGRpdj5QQVNTIGlmIG5vIGNyYXNoIG9uIHJlbG9hZC48L2Rpdj4=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>70203</attachid>
            <date>2010-10-07 22:12:37 -0700</date>
            <delta_ts>2010-10-07 23:02:44 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-47322-20101008161234.patch</filename>
            <type>text/plain</type>
            <size>4275</size>
            <attacher name="James Kozianski">koz</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA0NjJmOThjYjQwZTczMTA4ZTRlN2Y2MmJkYjdlYzIxMjVmM2E4M2UxLi4wMzY4MTEx
NjU3NzcxMmY1NWFhMTYwY2JkNzk0N2NlYzc5MTg4OTZmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAK
KzIwMTAtMTAtMDcgIEphbWVzIEtvemlhbnNraSAgPGtvekBjaHJvbWl1bS5vcmc+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ3Jhc2ggb24gcmVsb2Fk
IHdoZW4gQ1NTIHByb3BlcnR5ICdjb250ZW50JyBoYXMgbWFsZm9ybWVkIFVSTC4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ3MzIyCisKKyAgICAgICAg
VGVzdHMgdGhhdCB3ZSBkb24ndCBjcmFzaCB3aGVuIG5hdmlnYXRpbmcgYXdheSBmcm9tIGEgcGFn
ZSB3aXRoIGEKKyAgICAgICAgbWFsZm9ybWVkIFVSTCBhcyB0aGUgdmFsdWUgb2YgYSAiY29udGVu
dCIgQ1NTIHByb3BlcnR5LgorCisgICAgICAgICogZmFzdC9jc3MtZ2VuZXJhdGVkLWNvbnRlbnQv
bWFsZm9ybWVkLXVybC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvY3NzLWdl
bmVyYXRlZC1jb250ZW50L21hbGZvcm1lZC11cmwuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFz
dC9jc3MtZ2VuZXJhdGVkLWNvbnRlbnQvcmVzb3VyY2VzL3Bhc3MuaHRtbDogQWRkZWQuCisKIDIw
MTAtMTAtMDcgIEFiaGlzaGVrIEFyeWEgIDxpbmZlcm5vQGNocm9taXVtLm9yZz4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBEYXZlIEh5YXR0LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9j
c3MtZ2VuZXJhdGVkLWNvbnRlbnQvbWFsZm9ybWVkLXVybC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy1nZW5lcmF0ZWQtY29udGVudC9tYWxmb3JtZWQtdXJsLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi43ZWYyMmU5YTQzMWFkMDI3MjcxM2I3MWZkYzg3OTQwMTZjOGVmMTJmCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ2VuZXJhdGVkLWNvbnRlbnQv
bWFsZm9ybWVkLXVybC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUEFTUwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ2VuZXJhdGVkLWNvbnRlbnQvbWFsZm9ybWVkLXVybC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ2VuZXJhdGVkLWNvbnRlbnQvbWFsZm9ybWVkLXVy
bC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjcwMWI5MGFlZmQ4OTdmYWI2YWFiNTNmMGVhZTAyYThhNDNhODcx
ZjQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1nZW5lcmF0ZWQtY29u
dGVudC9tYWxmb3JtZWQtdXJsLmh0bWwKQEAgLTAsMCArMSwxMiBAQAorPGh0bWwgc3R5bGU9ImNv
bnRlbnQ6dXJsKC8vJSk7Ij4KK0FuIGludmFsaWQgVVJMIGluIHRoZSAiY29udGVudCIgc3R5bGUg
cHJvcGVydHkgc2hvdWxkIG5vdCBjYXVzZSBhIGNyYXNoIHdoZW4gdGhlIGJyb3dzZXIgbmF2aWdh
dGVzIGF3YXkgZnJvbSB0aGUgcGFnZS4KKworRkFJTCAtIFRoZSBicm93c2VyIHNob3VsZCBoYXZl
IG5hdmlnYXRlZCB0byByZXNvdXJjZXMvcGFzcy5odG1sLgorPHNjcmlwdD4KK2lmICh3aW5kb3cu
bGF5b3V0VGVzdENvbnRyb2xsZXIpIHsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5kdW1wQXNU
ZXh0KCk7CisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworfQord2lu
ZG93LmxvY2F0aW9uLmhyZWYgPSAncmVzb3VyY2VzL3Bhc3MuaHRtbCc7Cis8L3NjcmlwdD4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdlbmVyYXRlZC1jb250ZW50
L3Jlc291cmNlcy9wYXNzLmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1nZW5lcmF0ZWQtY29u
dGVudC9yZXNvdXJjZXMvcGFzcy5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmVhNGU1YzVjNWFjMTkzNTU3NDRj
Y2ViM2I0NjA5N2RmOWU2ZGJkZmQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0
L2Nzcy1nZW5lcmF0ZWQtY29udGVudC9yZXNvdXJjZXMvcGFzcy5odG1sCkBAIC0wLDAgKzEsNyBA
QAorPGh0bWw+CitQQVNTCis8c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxl
cikKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci5ub3RpZnlEb25lKCk7Cis8L3NjcmlwdD4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cK
aW5kZXggMmU0OGI4ZDM3Y2I5NDk0YjQ5OGJkMWFmYWI1ZTg4OGEzNjBjYmE3My4uZWMwN2JhMDA4
YjY5MjQ0MmRhMTU2NmRkZDJlMDhhYzZjNGZmMzc4ZiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFu
Z2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMC0xMC0w
NyAgSmFtZXMgS296aWFuc2tpICA8a296QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDcmFzaCBvbiByZWxvYWQgd2hlbiBDU1Mg
cHJvcGVydHkgJ2NvbnRlbnQnIGhhcyBtYWxmb3JtZWQgVVJMLgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDczMjIKKworICAgICAgICBNYWtlIENTU1N0
eWxlU2VsZWN0b3IgaGFuZGxlIHRoZSBjYXNlIHdoZXJlIGEgY2FjaGVkIGltYWdlIGNhbid0IGJl
CisgICAgICAgIHByb2R1Y2VkIGR1ZSB0byBhIG1hbGZvcm1lZCBVUkwuCisKKyAgICAgICAgVGVz
dDogZmFzdC9jc3MtZ2VuZXJhdGVkLWNvbnRlbnQvbWFsZm9ybWVkLXVybC5odG1sCisKKyAgICAg
ICAgKiBjc3MvQ1NTU3R5bGVTZWxlY3Rvci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NTdHls
ZVNlbGVjdG9yOjpsb2FkUGVuZGluZ0ltYWdlcyk6CisKIDIwMTAtMTAtMDcgIEFiaGlzaGVrIEFy
eWEgIDxpbmZlcm5vQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXZlIEh5
YXR0LgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9jc3MvQ1NTU3R5bGVTZWxlY3Rvci5jcHAgYi9XZWJD
b3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcAppbmRleCA1ZDIyYmZlOTcyOWRlMjBjYWMxZGVj
N2Q4ZWE4MjMxNDhkNGRiMDc2Li45MDlkOTFjOTE5MTYyNGY3ZGU2MGRjYjM2OTFlMmZlNTQwMDdj
OWFkIDEwMDY0NAotLS0gYS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcAorKysgYi9X
ZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcApAQCAtNjgxOCw3ICs2ODE4LDggQEAgdm9p
ZCBDU1NTdHlsZVNlbGVjdG9yOjpsb2FkUGVuZGluZ0ltYWdlcygpCiAgICAgICAgICAgICAgICAg
Zm9yIChDb250ZW50RGF0YSogY29udGVudERhdGEgPSBjb25zdF9jYXN0PENvbnRlbnREYXRhKj4o
bV9zdHlsZS0+Y29udGVudERhdGEoKSk7IGNvbnRlbnREYXRhOyBjb250ZW50RGF0YSA9IGNvbnRl
bnREYXRhLT5uZXh0KCkpIHsKICAgICAgICAgICAgICAgICAgICAgaWYgKGNvbnRlbnREYXRhLT5p
c0ltYWdlKCkgJiYgY29udGVudERhdGEtPmltYWdlKCktPmlzUGVuZGluZ0ltYWdlKCkpIHsKICAg
ICAgICAgICAgICAgICAgICAgICAgIENTU0ltYWdlVmFsdWUqIGltYWdlVmFsdWUgPSBzdGF0aWNf
Y2FzdDxTdHlsZVBlbmRpbmdJbWFnZSo+KGNvbnRlbnREYXRhLT5pbWFnZSgpKS0+Y3NzSW1hZ2VW
YWx1ZSgpOwotICAgICAgICAgICAgICAgICAgICAgICAgY29udGVudERhdGEtPnNldEltYWdlKGlt
YWdlVmFsdWUtPmNhY2hlZEltYWdlKGNhY2hlZFJlc291cmNlTG9hZGVyKSk7CisgICAgICAgICAg
ICAgICAgICAgICAgICBpZiAoU3R5bGVDYWNoZWRJbWFnZSogY2FjaGVkSW1hZ2UgPSBpbWFnZVZh
bHVlLT5jYWNoZWRJbWFnZShjYWNoZWRSZXNvdXJjZUxvYWRlcikpCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY29udGVudERhdGEtPnNldEltYWdlKGNhY2hlZEltYWdlKTsKICAgICAgICAg
ICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICBicmVhazsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>70205</attachid>
            <date>2010-10-07 23:02:52 -0700</date>
            <delta_ts>2010-10-08 13:21:12 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-47322-20101008170250.patch</filename>
            <type>text/plain</type>
            <size>4409</size>
            <attacher name="James Kozianski">koz</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA0NjJmOThjYjQwZTczMTA4ZTRlN2Y2MmJkYjdlYzIxMjVmM2E4M2UxLi4wMzY4MTEx
NjU3NzcxMmY1NWFhMTYwY2JkNzk0N2NlYzc5MTg4OTZmIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAK
KzIwMTAtMTAtMDcgIEphbWVzIEtvemlhbnNraSAgPGtvekBjaHJvbWl1bS5vcmc+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQ3Jhc2ggb24gcmVsb2Fk
IHdoZW4gQ1NTIHByb3BlcnR5ICdjb250ZW50JyBoYXMgbWFsZm9ybWVkIFVSTC4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ3MzIyCisKKyAgICAgICAg
VGVzdHMgdGhhdCB3ZSBkb24ndCBjcmFzaCB3aGVuIG5hdmlnYXRpbmcgYXdheSBmcm9tIGEgcGFn
ZSB3aXRoIGEKKyAgICAgICAgbWFsZm9ybWVkIFVSTCBhcyB0aGUgdmFsdWUgb2YgYSAiY29udGVu
dCIgQ1NTIHByb3BlcnR5LgorCisgICAgICAgICogZmFzdC9jc3MtZ2VuZXJhdGVkLWNvbnRlbnQv
bWFsZm9ybWVkLXVybC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QvY3NzLWdl
bmVyYXRlZC1jb250ZW50L21hbGZvcm1lZC11cmwuaHRtbDogQWRkZWQuCisgICAgICAgICogZmFz
dC9jc3MtZ2VuZXJhdGVkLWNvbnRlbnQvcmVzb3VyY2VzL3Bhc3MuaHRtbDogQWRkZWQuCisKIDIw
MTAtMTAtMDcgIEFiaGlzaGVrIEFyeWEgIDxpbmZlcm5vQGNocm9taXVtLm9yZz4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBEYXZlIEh5YXR0LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9j
c3MtZ2VuZXJhdGVkLWNvbnRlbnQvbWFsZm9ybWVkLXVybC1leHBlY3RlZC50eHQgYi9MYXlvdXRU
ZXN0cy9mYXN0L2Nzcy1nZW5lcmF0ZWQtY29udGVudC9tYWxmb3JtZWQtdXJsLWV4cGVjdGVkLnR4
dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwLi43ZWYyMmU5YTQzMWFkMDI3MjcxM2I3MWZkYzg3OTQwMTZjOGVmMTJmCi0t
LSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ2VuZXJhdGVkLWNvbnRlbnQv
bWFsZm9ybWVkLXVybC1leHBlY3RlZC50eHQKQEAgLTAsMCArMSBAQAorUEFTUwpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ2VuZXJhdGVkLWNvbnRlbnQvbWFsZm9ybWVkLXVybC5o
dG1sIGIvTGF5b3V0VGVzdHMvZmFzdC9jc3MtZ2VuZXJhdGVkLWNvbnRlbnQvbWFsZm9ybWVkLXVy
bC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAuLjc5N2I2ZDI2MmJiODVlNTZmZmVlZTU2MWRhZTNjOTA5NjYwMTJi
MWIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L2Nzcy1nZW5lcmF0ZWQtY29u
dGVudC9tYWxmb3JtZWQtdXJsLmh0bWwKQEAgLTAsMCArMSwxNCBAQAorPGh0bWw+Cis8ZGl2IHN0
eWxlPSJjb250ZW50OnVybCgvLyUpOyI+PC9kaXY+ICAgICAgICAgICAgICA8IS0tIENyYXNoZXMg
Q2hyb21pdW0gLS0+Cis8ZGl2IHN0eWxlPSJjb250ZW50OnVybChodHRwOi8vfHNlcnZlcnwvKTsi
PjwvZGl2PiA8IS0tIENyYXNoZXMgZGVidWcgV2ViS2l0IC0tPgorQW4gaW52YWxpZCBVUkwgaW4g
dGhlICJjb250ZW50IiBzdHlsZSBwcm9wZXJ0eSBzaG91bGQgbm90IGNhdXNlIGEgY3Jhc2ggd2hl
biB0aGUgYnJvd3NlciBuYXZpZ2F0ZXMgYXdheSBmcm9tIHRoZSBwYWdlLgorCitGQUlMIC0gVGhl
IGJyb3dzZXIgc2hvdWxkIGhhdmUgbmF2aWdhdGVkIHRvIHJlc291cmNlcy9wYXNzLmh0bWwuCis8
c2NyaXB0PgoraWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgeworICAgIGxheW91dFRl
c3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICBsYXlvdXRUZXN0Q29udHJvbGxlci53YWl0
VW50aWxEb25lKCk7Cit9Cit3aW5kb3cubG9jYXRpb24uaHJlZiA9ICdyZXNvdXJjZXMvcGFzcy5o
dG1sJzsKKzwvc2NyaXB0PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvZmFzdC9j
c3MtZ2VuZXJhdGVkLWNvbnRlbnQvcmVzb3VyY2VzL3Bhc3MuaHRtbCBiL0xheW91dFRlc3RzL2Zh
c3QvY3NzLWdlbmVyYXRlZC1jb250ZW50L3Jlc291cmNlcy9wYXNzLmh0bWwKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4u
ZWE0ZTVjNWM1YWMxOTM1NTc0NGNjZWIzYjQ2MDk3ZGY5ZTZkYmRmZAotLS0gL2Rldi9udWxsCisr
KyBiL0xheW91dFRlc3RzL2Zhc3QvY3NzLWdlbmVyYXRlZC1jb250ZW50L3Jlc291cmNlcy9wYXNz
Lmh0bWwKQEAgLTAsMCArMSw3IEBACis8aHRtbD4KK1BBU1MKKzxzY3JpcHQ+CitpZiAod2luZG93
LmxheW91dFRlc3RDb250cm9sbGVyKQorICAgIGxheW91dFRlc3RDb250cm9sbGVyLm5vdGlmeURv
bmUoKTsKKzwvc2NyaXB0PgorPC9odG1sPgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cg
Yi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCAyZTQ4YjhkMzdjYjk0OTRiNDk4YmQxYWZhYjVlODg4
YTM2MGNiYTczLi5lYzA3YmEwMDhiNjkyNDQyZGExNTY2ZGRkMmUwOGFjNmM0ZmYzNzhmIDEwMDY0
NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDE4IEBACisyMDEwLTEwLTA3ICBKYW1lcyBLb3ppYW5za2kgIDxrb3pAY2hyb21pdW0ub3Jn
PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENyYXNo
IG9uIHJlbG9hZCB3aGVuIENTUyBwcm9wZXJ0eSAnY29udGVudCcgaGFzIG1hbGZvcm1lZCBVUkwu
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD00NzMyMgor
CisgICAgICAgIE1ha2UgQ1NTU3R5bGVTZWxlY3RvciBoYW5kbGUgdGhlIGNhc2Ugd2hlcmUgYSBj
YWNoZWQgaW1hZ2UgY2FuJ3QgYmUKKyAgICAgICAgcHJvZHVjZWQgZHVlIHRvIGEgbWFsZm9ybWVk
IFVSTC4KKworICAgICAgICBUZXN0OiBmYXN0L2Nzcy1nZW5lcmF0ZWQtY29udGVudC9tYWxmb3Jt
ZWQtdXJsLmh0bWwKKworICAgICAgICAqIGNzcy9DU1NTdHlsZVNlbGVjdG9yLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkNTU1N0eWxlU2VsZWN0b3I6OmxvYWRQZW5kaW5nSW1hZ2VzKToKKwogMjAx
MC0xMC0wNyAgQWJoaXNoZWsgQXJ5YSAgPGluZmVybm9AY2hyb21pdW0ub3JnPgogCiAgICAgICAg
IFJldmlld2VkIGJ5IERhdmUgSHlhdHQuCmRpZmYgLS1naXQgYS9XZWJDb3JlL2Nzcy9DU1NTdHls
ZVNlbGVjdG9yLmNwcCBiL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCmluZGV4IDVk
MjJiZmU5NzI5ZGUyMGNhYzFkZWM3ZDhlYTgyMzE0OGQ0ZGIwNzYuLjkwOWQ5MWM5MTkxNjI0Zjdk
ZTYwZGNiMzY5MWUyZmU1NDAwN2M5YWQgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvY3NzL0NTU1N0eWxl
U2VsZWN0b3IuY3BwCisrKyBiL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwCkBAIC02
ODE4LDcgKzY4MTgsOCBAQCB2b2lkIENTU1N0eWxlU2VsZWN0b3I6OmxvYWRQZW5kaW5nSW1hZ2Vz
KCkKICAgICAgICAgICAgICAgICBmb3IgKENvbnRlbnREYXRhKiBjb250ZW50RGF0YSA9IGNvbnN0
X2Nhc3Q8Q29udGVudERhdGEqPihtX3N0eWxlLT5jb250ZW50RGF0YSgpKTsgY29udGVudERhdGE7
IGNvbnRlbnREYXRhID0gY29udGVudERhdGEtPm5leHQoKSkgewogICAgICAgICAgICAgICAgICAg
ICBpZiAoY29udGVudERhdGEtPmlzSW1hZ2UoKSAmJiBjb250ZW50RGF0YS0+aW1hZ2UoKS0+aXNQ
ZW5kaW5nSW1hZ2UoKSkgewogICAgICAgICAgICAgICAgICAgICAgICAgQ1NTSW1hZ2VWYWx1ZSog
aW1hZ2VWYWx1ZSA9IHN0YXRpY19jYXN0PFN0eWxlUGVuZGluZ0ltYWdlKj4oY29udGVudERhdGEt
PmltYWdlKCkpLT5jc3NJbWFnZVZhbHVlKCk7Ci0gICAgICAgICAgICAgICAgICAgICAgICBjb250
ZW50RGF0YS0+c2V0SW1hZ2UoaW1hZ2VWYWx1ZS0+Y2FjaGVkSW1hZ2UoY2FjaGVkUmVzb3VyY2VM
b2FkZXIpKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIChTdHlsZUNhY2hlZEltYWdlKiBj
YWNoZWRJbWFnZSA9IGltYWdlVmFsdWUtPmNhY2hlZEltYWdlKGNhY2hlZFJlc291cmNlTG9hZGVy
KSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50RGF0YS0+c2V0SW1hZ2UoY2Fj
aGVkSW1hZ2UpOwogICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgfQogICAg
ICAgICAgICAgICAgIGJyZWFrOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>