<?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>70331</bug_id>
          
          <creation_ts>2011-10-18 08:27:08 -0700</creation_ts>
          <short_desc>Move default stylesheet loading to a separate function</short_desc>
          <delta_ts>2011-10-18 08:49:38 -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>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Antti Koivisto">koivisto</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>486066</commentid>
    <comment_count>0</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2011-10-18 08:27:08 -0700</bug_when>
    <thetext>From CSSStyleSelector::styleForElement()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486070</commentid>
    <comment_count>1</comment_count>
      <attachid>111447</attachid>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2011-10-18 08:39:20 -0700</bug_when>
    <thetext>Created attachment 111447
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486071</commentid>
    <comment_count>2</comment_count>
      <attachid>111447</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-10-18 08:43:27 -0700</bug_when>
    <thetext>Comment on attachment 111447
patch

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

LGTM!

&gt; Source/WebCore/css/CSSStyleSelector.cpp:1121
&gt; -
&gt; +    

Did you performance test this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486072</commentid>
    <comment_count>3</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2011-10-18 08:48:40 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/97758</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>486074</commentid>
    <comment_count>4</comment_count>
    <who name="Antti Koivisto">koivisto</who>
    <bug_when>2011-10-18 08:49:38 -0700</bug_when>
    <thetext>&gt; Did you performance test this?

Nope. In an unlikely event it managed to slow down something I&apos;m sure I&apos;ll notice in the future.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>111447</attachid>
            <date>2011-10-18 08:39:20 -0700</date>
            <delta_ts>2011-10-18 08:43:27 -0700</delta_ts>
            <desc>patch</desc>
            <filename>default-stylesheet-loading-cleanup.patch</filename>
            <type>text/plain</type>
            <size>9905</size>
            <attacher name="Antti Koivisto">koivisto</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk3NzUzKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTEtMTAtMTggIEFudHRpIEtv
aXZpc3RvICA8YW50dGlAYXBwbGUuY29tPgorCisgICAgICAgIE1vdmUgZGVmYXVsdCBzdHlsZXNo
ZWV0IGxvYWRpbmcgdG8gYSBzZXBhcmF0ZSBmdW5jdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzAzMzEKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIC0gTW92ZSBkZWZhdWx0IHN0eWxlc2hl
ZXQgbG9hZGluZyBvdXQgZnJvbSBDU1NTdHlsZVNlbGVjdG9yOjpzdHlsZUZvckVsZW1lbnQoKQor
ICAgICAgICAtIFJlbmFtZSBlIC0+IGVsZW1lbnQKKyAgICAgICAgLSBSZW1vdmUgcG9pbnRsZXNz
IHJlZmZpbmcgb2YgdGhlIHBsYWNlaG9sZGVyIHN0eWxlLgorCisgICAgICAgICogY3NzL0NTU1N0
eWxlU2VsZWN0b3IuY3BwOgorICAgICAgICAoV2ViQ29yZTo6ZW5zdXJlRGVmYXVsdFN0eWxlU2hl
ZXRzRm9yRWxlbWVudCk6CisgICAgICAgIChXZWJDb3JlOjppc0F0U2hhZG93Qm91bmRhcnkpOgor
ICAgICAgICAoV2ViQ29yZTo6Q1NTU3R5bGVTZWxlY3Rvcjo6c3R5bGVGb3JFbGVtZW50KToKKwog
MjAxMS0xMC0xOCAgQ2hyaXMgRmxlaXphY2ggIDxjZmxlaXphY2hAYXBwbGUuY29tPgogCiAgICAg
ICAgIEFYOiBidXR0b25zIG9mIG51bWJlciB0eXBlIDxpbnB1dD4gY29udHJvbHMgYXJlIG5vdCBm
dWxseSBhY2Nlc3NpYmxlCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTU3R5bGVTZWxlY3Rv
ci5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3NzL0NTU1N0eWxlU2VsZWN0b3Iu
Y3BwCShyZXZpc2lvbiA5Nzc0NykKKysrIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NTdHlsZVNlbGVj
dG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNTM0LDYgKzUzNCw2NSBAQCBzdGF0aWMgdm9pZCBs
b2FkVmlld1NvdXJjZVN0eWxlKCkKICAgICBkZWZhdWx0Vmlld1NvdXJjZVN0eWxlLT5hZGRSdWxl
c0Zyb21TaGVldChwYXJzZVVBU2hlZXQoc291cmNlVXNlckFnZW50U3R5bGVTaGVldCwgc2l6ZW9m
KHNvdXJjZVVzZXJBZ2VudFN0eWxlU2hlZXQpKSwgc2NyZWVuRXZhbCgpKTsKIH0KIAorc3RhdGlj
IHZvaWQgZW5zdXJlRGVmYXVsdFN0eWxlU2hlZXRzRm9yRWxlbWVudChFbGVtZW50KiBlbGVtZW50
KQoreworICAgIGlmIChzaW1wbGVEZWZhdWx0U3R5bGVTaGVldCAmJiAhZWxlbWVudENhblVzZVNp
bXBsZURlZmF1bHRTdHlsZShlbGVtZW50KSkgeworICAgICAgICBsb2FkRnVsbERlZmF1bHRTdHls
ZSgpOworICAgICAgICBhc3NlcnROb1NpYmxpbmdSdWxlc0luRGVmYXVsdFN0eWxlKCk7CisgICAg
ICAgIGNvbGxlY3RTcGVjaWFsUnVsZXNJbkRlZmF1bHRTdHlsZSgpOworICAgIH0KKyAgICAKKyNp
ZiBFTkFCTEUoU1ZHKQorICAgIHN0YXRpYyBib29sIGxvYWRlZFNWR1VzZXJBZ2VudFNoZWV0Owor
ICAgIGlmIChlbGVtZW50LT5pc1NWR0VsZW1lbnQoKSAmJiAhbG9hZGVkU1ZHVXNlckFnZW50U2hl
ZXQpIHsKKyAgICAgICAgLy8gU1ZHIHJ1bGVzLgorICAgICAgICBsb2FkZWRTVkdVc2VyQWdlbnRT
aGVldCA9IHRydWU7CisgICAgICAgIENTU1N0eWxlU2hlZXQqIHN2Z1NoZWV0ID0gcGFyc2VVQVNo
ZWV0KHN2Z1VzZXJBZ2VudFN0eWxlU2hlZXQsIHNpemVvZihzdmdVc2VyQWdlbnRTdHlsZVNoZWV0
KSk7CisgICAgICAgIGRlZmF1bHRTdHlsZS0+YWRkUnVsZXNGcm9tU2hlZXQoc3ZnU2hlZXQsIHNj
cmVlbkV2YWwoKSk7CisgICAgICAgIGRlZmF1bHRQcmludFN0eWxlLT5hZGRSdWxlc0Zyb21TaGVl
dChzdmdTaGVldCwgcHJpbnRFdmFsKCkpOworICAgICAgICBhc3NlcnROb1NpYmxpbmdSdWxlc0lu
RGVmYXVsdFN0eWxlKCk7CisgICAgICAgIGNvbGxlY3RTcGVjaWFsUnVsZXNJbkRlZmF1bHRTdHls
ZSgpOworICAgIH0KKyNlbmRpZgorICAgIAorI2lmIEVOQUJMRShNQVRITUwpCisgICAgc3RhdGlj
IGJvb2wgbG9hZGVkTWF0aE1MVXNlckFnZW50U2hlZXQ7CisgICAgaWYgKGVsZW1lbnQtPmlzTWF0
aE1MRWxlbWVudCgpICYmICFsb2FkZWRNYXRoTUxVc2VyQWdlbnRTaGVldCkgeworICAgICAgICAv
LyBNYXRoTUwgcnVsZXMuCisgICAgICAgIGxvYWRlZE1hdGhNTFVzZXJBZ2VudFNoZWV0ID0gdHJ1
ZTsKKyAgICAgICAgQ1NTU3R5bGVTaGVldCogbWF0aE1MU2hlZXQgPSBwYXJzZVVBU2hlZXQobWF0
aG1sVXNlckFnZW50U3R5bGVTaGVldCwgc2l6ZW9mKG1hdGhtbFVzZXJBZ2VudFN0eWxlU2hlZXQp
KTsKKyAgICAgICAgZGVmYXVsdFN0eWxlLT5hZGRSdWxlc0Zyb21TaGVldChtYXRoTUxTaGVldCwg
c2NyZWVuRXZhbCgpKTsKKyAgICAgICAgZGVmYXVsdFByaW50U3R5bGUtPmFkZFJ1bGVzRnJvbVNo
ZWV0KG1hdGhNTFNoZWV0LCBwcmludEV2YWwoKSk7CisgICAgICAgIC8vIFRoZXJlIGFyZSBzb21l
IHNpYmxpbmcgYW5kIHVuY29tbW9uIGF0dHJpYnV0ZSBydWxlcyBoZXJlLgorICAgICAgICBjb2xs
ZWN0U3BlY2lhbFJ1bGVzSW5EZWZhdWx0U3R5bGUoKTsKKyAgICB9CisjZW5kaWYKKyAgICAKKyNp
ZiBFTkFCTEUoVklERU8pCisgICAgc3RhdGljIGJvb2wgbG9hZGVkTWVkaWFTdHlsZVNoZWV0Owor
ICAgIGlmICghbG9hZGVkTWVkaWFTdHlsZVNoZWV0ICYmIChlbGVtZW50LT5oYXNUYWdOYW1lKHZp
ZGVvVGFnKSB8fCBlbGVtZW50LT5oYXNUYWdOYW1lKGF1ZGlvVGFnKSkpIHsKKyAgICAgICAgbG9h
ZGVkTWVkaWFTdHlsZVNoZWV0ID0gdHJ1ZTsKKyAgICAgICAgU3RyaW5nIG1lZGlhUnVsZXMgPSBT
dHJpbmcobWVkaWFDb250cm9sc1VzZXJBZ2VudFN0eWxlU2hlZXQsIHNpemVvZihtZWRpYUNvbnRy
b2xzVXNlckFnZW50U3R5bGVTaGVldCkpICsgUmVuZGVyVGhlbWU6OnRoZW1lRm9yUGFnZShlbGVt
ZW50LT5kb2N1bWVudCgpLT5wYWdlKCkpLT5leHRyYU1lZGlhQ29udHJvbHNTdHlsZVNoZWV0KCk7
CisgICAgICAgIENTU1N0eWxlU2hlZXQqIG1lZGlhQ29udHJvbHNTaGVldCA9IHBhcnNlVUFTaGVl
dChtZWRpYVJ1bGVzKTsKKyAgICAgICAgZGVmYXVsdFN0eWxlLT5hZGRSdWxlc0Zyb21TaGVldCht
ZWRpYUNvbnRyb2xzU2hlZXQsIHNjcmVlbkV2YWwoKSk7CisgICAgICAgIGRlZmF1bHRQcmludFN0
eWxlLT5hZGRSdWxlc0Zyb21TaGVldChtZWRpYUNvbnRyb2xzU2hlZXQsIHByaW50RXZhbCgpKTsK
KyAgICAgICAgY29sbGVjdFNwZWNpYWxSdWxlc0luRGVmYXVsdFN0eWxlKCk7CisgICAgfQorI2Vu
ZGlmCisgICAgCisjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJKQorICAgIHN0YXRpYyBib29sIGxv
YWRlZEZ1bGxTY3JlZW5TdHlsZVNoZWV0OworICAgIGlmICghbG9hZGVkRnVsbFNjcmVlblN0eWxl
U2hlZXQgJiYgZWxlbWVudC0+ZG9jdW1lbnQoKS0+d2Via2l0SXNGdWxsU2NyZWVuKCkpIHsKKyAg
ICAgICAgbG9hZGVkRnVsbFNjcmVlblN0eWxlU2hlZXQgPSB0cnVlOworICAgICAgICBTdHJpbmcg
ZnVsbHNjcmVlblJ1bGVzID0gU3RyaW5nKGZ1bGxzY3JlZW5Vc2VyQWdlbnRTdHlsZVNoZWV0LCBz
aXplb2YoZnVsbHNjcmVlblVzZXJBZ2VudFN0eWxlU2hlZXQpKSArIFJlbmRlclRoZW1lOjpkZWZh
dWx0VGhlbWUoKS0+ZXh0cmFGdWxsU2NyZWVuU3R5bGVTaGVldCgpOworICAgICAgICBDU1NTdHls
ZVNoZWV0KiBmdWxsc2NyZWVuU2hlZXQgPSBwYXJzZVVBU2hlZXQoZnVsbHNjcmVlblJ1bGVzKTsK
KyAgICAgICAgZGVmYXVsdFN0eWxlLT5hZGRSdWxlc0Zyb21TaGVldChmdWxsc2NyZWVuU2hlZXQs
IHNjcmVlbkV2YWwoKSk7CisgICAgICAgIGRlZmF1bHRRdWlya3NTdHlsZS0+YWRkUnVsZXNGcm9t
U2hlZXQoZnVsbHNjcmVlblNoZWV0LCBzY3JlZW5FdmFsKCkpOworICAgICAgICBjb2xsZWN0U3Bl
Y2lhbFJ1bGVzSW5EZWZhdWx0U3R5bGUoKTsKKyAgICB9CisjZW5kaWYKK30KKwogdm9pZCBDU1NT
dHlsZVNlbGVjdG9yOjphZGRNYXRjaGVkRGVjbGFyYXRpb24oQ1NTTXV0YWJsZVN0eWxlRGVjbGFy
YXRpb24qIGRlY2wsIHVuc2lnbmVkIGxpbmtNYXRjaFR5cGUpCiB7CiAgICAgbV9tYXRjaGVkRGVj
bHMuYXBwZW5kKE1hdGNoZWRTdHlsZURlY2xhcmF0aW9uKGRlY2wsIGxpbmtNYXRjaFR5cGUpKTsK
QEAgLTEwNTksNyArMTExOCw3IEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBpc0F0U2hhZG93Qm91bmRh
cnkoRWwKIHsKICAgICBpZiAoIWVsZW1lbnQpCiAgICAgICAgIHJldHVybiBmYWxzZTsKLQorICAg
IAogICAgIENvbnRhaW5lck5vZGUqIHBhcmVudE5vZGUgPSBlbGVtZW50LT5wYXJlbnROb2RlKCk7
CiAgICAgcmV0dXJuIHBhcmVudE5vZGUgJiYgcGFyZW50Tm9kZS0+aXNTaGFkb3dSb290KCk7CiB9
CkBAIC0xMDY3LDI0ICsxMTI2LDIyIEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBpc0F0U2hhZG93Qm91
bmRhcnkoRWwKIC8vIElmIHJlc29sdmVGb3JSb290RGVmYXVsdCBpcyB0cnVlLCBzdHlsZSBiYXNl
ZCBvbiB1c2VyIGFnZW50IHN0eWxlIHNoZWV0IG9ubHkuIFRoaXMgaXMgdXNlZCBpbiBtZWRpYSBx
dWVyaWVzLCB3aGVyZQogLy8gcmVsYXRpdmUgdW5pdHMgYXJlIGludGVycHJldGVkIGFjY29yZGlu
ZyB0byBkb2N1bWVudCByb290IGVsZW1lbnQgc3R5bGUsIHN0eWxlZCBvbmx5IHdpdGggVUEgc3R5
bGVzaGVldAogCi1QYXNzUmVmUHRyPFJlbmRlclN0eWxlPiBDU1NTdHlsZVNlbGVjdG9yOjpzdHls
ZUZvckVsZW1lbnQoRWxlbWVudCogZSwgUmVuZGVyU3R5bGUqIGRlZmF1bHRQYXJlbnQsIGJvb2wg
YWxsb3dTaGFyaW5nLCBib29sIHJlc29sdmVGb3JSb290RGVmYXVsdCkKK1Bhc3NSZWZQdHI8UmVu
ZGVyU3R5bGU+IENTU1N0eWxlU2VsZWN0b3I6OnN0eWxlRm9yRWxlbWVudChFbGVtZW50KiBlbGVt
ZW50LCBSZW5kZXJTdHlsZSogZGVmYXVsdFBhcmVudCwgYm9vbCBhbGxvd1NoYXJpbmcsIGJvb2wg
cmVzb2x2ZUZvclJvb3REZWZhdWx0KQogewogICAgIC8vIE9uY2UgYW4gZWxlbWVudCBoYXMgYSBy
ZW5kZXJlciwgd2UgZG9uJ3QgdHJ5IHRvIGRlc3Ryb3kgaXQsIHNpbmNlIG90aGVyd2lzZSB0aGUg
cmVuZGVyZXIKICAgICAvLyB3aWxsIHZhbmlzaCBpZiBhIHN0eWxlIHJlY2FsYyBoYXBwZW5zIGR1
cmluZyBsb2FkaW5nLgotICAgIGlmIChhbGxvd1NoYXJpbmcgJiYgIWUtPmRvY3VtZW50KCktPmhh
dmVTdHlsZXNoZWV0c0xvYWRlZCgpICYmICFlLT5yZW5kZXJlcigpKSB7CisgICAgaWYgKGFsbG93
U2hhcmluZyAmJiAhZWxlbWVudC0+ZG9jdW1lbnQoKS0+aGF2ZVN0eWxlc2hlZXRzTG9hZGVkKCkg
JiYgIWVsZW1lbnQtPnJlbmRlcmVyKCkpIHsKICAgICAgICAgaWYgKCFzX3N0eWxlTm90WWV0QXZh
aWxhYmxlKSB7CiAgICAgICAgICAgICBzX3N0eWxlTm90WWV0QXZhaWxhYmxlID0gUmVuZGVyU3R5
bGU6OmNyZWF0ZSgpLmxlYWtSZWYoKTsKLSAgICAgICAgICAgIHNfc3R5bGVOb3RZZXRBdmFpbGFi
bGUtPnJlZigpOwogICAgICAgICAgICAgc19zdHlsZU5vdFlldEF2YWlsYWJsZS0+c2V0RGlzcGxh
eShOT05FKTsKICAgICAgICAgICAgIHNfc3R5bGVOb3RZZXRBdmFpbGFibGUtPmZvbnQoKS51cGRh
dGUobV9mb250U2VsZWN0b3IpOwogICAgICAgICB9Ci0gICAgICAgIHNfc3R5bGVOb3RZZXRBdmFp
bGFibGUtPnJlZigpOwotICAgICAgICBlLT5kb2N1bWVudCgpLT5zZXRIYXNOb2Rlc1dpdGhQbGFj
ZWhvbGRlclN0eWxlKCk7CisgICAgICAgIGVsZW1lbnQtPmRvY3VtZW50KCktPnNldEhhc05vZGVz
V2l0aFBsYWNlaG9sZGVyU3R5bGUoKTsKICAgICAgICAgcmV0dXJuIHNfc3R5bGVOb3RZZXRBdmFp
bGFibGU7CiAgICAgfQogCi0gICAgaW5pdEVsZW1lbnQoZSk7Ci0gICAgaW5pdEZvclN0eWxlUmVz
b2x2ZShlLCBkZWZhdWx0UGFyZW50KTsKKyAgICBpbml0RWxlbWVudChlbGVtZW50KTsKKyAgICBp
bml0Rm9yU3R5bGVSZXNvbHZlKGVsZW1lbnQsIGRlZmF1bHRQYXJlbnQpOwogICAgIGlmIChhbGxv
d1NoYXJpbmcpIHsKICAgICAgICAgUmVuZGVyU3R5bGUqIHNoYXJlZFN0eWxlID0gbG9jYXRlU2hh
cmVkU3R5bGUoKTsKICAgICAgICAgaWYgKHNoYXJlZFN0eWxlKQpAQCAtMTEwMiw2OSArMTE1OSwx
NSBAQCBQYXNzUmVmUHRyPFJlbmRlclN0eWxlPiBDU1NTdHlsZVNlbGVjdG9yCiAgICAgfQogCiAg
ICAgLy8gRXZlbiBpZiBzdXJyb3VuZGluZyBjb250ZW50IGlzIHVzZXItZWRpdGFibGUsIHNoYWRv
dyBET00gc2hvdWxkIGFjdCBhcyBhIHNpbmdsZSB1bml0LCBhbmQgbm90IG5lY2Vzc2FyaWx5IGJl
IGVkaXRhYmxlCi0gICAgaWYgKGlzQXRTaGFkb3dCb3VuZGFyeShlKSkKKyAgICBpZiAoaXNBdFNo
YWRvd0JvdW5kYXJ5KGVsZW1lbnQpKQogICAgICAgICBtX3N0eWxlLT5zZXRVc2VyTW9kaWZ5KFJl
bmRlclN0eWxlOjppbml0aWFsVXNlck1vZGlmeSgpKTsKIAotICAgIGlmIChlLT5pc0xpbmsoKSkg
eworICAgIGlmIChlbGVtZW50LT5pc0xpbmsoKSkgewogICAgICAgICBtX3N0eWxlLT5zZXRJc0xp
bmsodHJ1ZSk7CiAgICAgICAgIG1fc3R5bGUtPnNldEluc2lkZUxpbmsobV9lbGVtZW50TGlua1N0
YXRlKTsKICAgICB9CiAKLSAgICBpZiAoc2ltcGxlRGVmYXVsdFN0eWxlU2hlZXQgJiYgIWVsZW1l
bnRDYW5Vc2VTaW1wbGVEZWZhdWx0U3R5bGUoZSkpIHsKLSAgICAgICAgbG9hZEZ1bGxEZWZhdWx0
U3R5bGUoKTsKLSAgICAgICAgYXNzZXJ0Tm9TaWJsaW5nUnVsZXNJbkRlZmF1bHRTdHlsZSgpOwot
ICAgICAgICBjb2xsZWN0U3BlY2lhbFJ1bGVzSW5EZWZhdWx0U3R5bGUoKTsKLSAgICB9Ci0KLSNp
ZiBFTkFCTEUoU1ZHKQotICAgIHN0YXRpYyBib29sIGxvYWRlZFNWR1VzZXJBZ2VudFNoZWV0Owot
ICAgIGlmIChlLT5pc1NWR0VsZW1lbnQoKSAmJiAhbG9hZGVkU1ZHVXNlckFnZW50U2hlZXQpIHsK
LSAgICAgICAgLy8gU1ZHIHJ1bGVzLgotICAgICAgICBsb2FkZWRTVkdVc2VyQWdlbnRTaGVldCA9
IHRydWU7Ci0gICAgICAgIENTU1N0eWxlU2hlZXQqIHN2Z1NoZWV0ID0gcGFyc2VVQVNoZWV0KHN2
Z1VzZXJBZ2VudFN0eWxlU2hlZXQsIHNpemVvZihzdmdVc2VyQWdlbnRTdHlsZVNoZWV0KSk7Ci0g
ICAgICAgIGRlZmF1bHRTdHlsZS0+YWRkUnVsZXNGcm9tU2hlZXQoc3ZnU2hlZXQsIHNjcmVlbkV2
YWwoKSk7Ci0gICAgICAgIGRlZmF1bHRQcmludFN0eWxlLT5hZGRSdWxlc0Zyb21TaGVldChzdmdT
aGVldCwgcHJpbnRFdmFsKCkpOwotICAgICAgICBhc3NlcnROb1NpYmxpbmdSdWxlc0luRGVmYXVs
dFN0eWxlKCk7Ci0gICAgICAgIGNvbGxlY3RTcGVjaWFsUnVsZXNJbkRlZmF1bHRTdHlsZSgpOwot
ICAgIH0KLSNlbmRpZgotCi0jaWYgRU5BQkxFKE1BVEhNTCkKLSAgICBzdGF0aWMgYm9vbCBsb2Fk
ZWRNYXRoTUxVc2VyQWdlbnRTaGVldDsKLSAgICBpZiAoZS0+aXNNYXRoTUxFbGVtZW50KCkgJiYg
IWxvYWRlZE1hdGhNTFVzZXJBZ2VudFNoZWV0KSB7Ci0gICAgICAgIC8vIE1hdGhNTCBydWxlcy4K
LSAgICAgICAgbG9hZGVkTWF0aE1MVXNlckFnZW50U2hlZXQgPSB0cnVlOwotICAgICAgICBDU1NT
dHlsZVNoZWV0KiBtYXRoTUxTaGVldCA9IHBhcnNlVUFTaGVldChtYXRobWxVc2VyQWdlbnRTdHls
ZVNoZWV0LCBzaXplb2YobWF0aG1sVXNlckFnZW50U3R5bGVTaGVldCkpOwotICAgICAgICBkZWZh
dWx0U3R5bGUtPmFkZFJ1bGVzRnJvbVNoZWV0KG1hdGhNTFNoZWV0LCBzY3JlZW5FdmFsKCkpOwot
ICAgICAgICBkZWZhdWx0UHJpbnRTdHlsZS0+YWRkUnVsZXNGcm9tU2hlZXQobWF0aE1MU2hlZXQs
IHByaW50RXZhbCgpKTsKLSAgICAgICAgLy8gVGhlcmUgYXJlIHNvbWUgc2libGluZyBhbmQgdW5j
b21tb24gYXR0cmlidXRlIHJ1bGVzIGhlcmUuCi0gICAgICAgIGNvbGxlY3RTcGVjaWFsUnVsZXNJ
bkRlZmF1bHRTdHlsZSgpOwotICAgIH0KLSNlbmRpZgotCi0jaWYgRU5BQkxFKFZJREVPKQotICAg
IHN0YXRpYyBib29sIGxvYWRlZE1lZGlhU3R5bGVTaGVldDsKLSAgICBpZiAoIWxvYWRlZE1lZGlh
U3R5bGVTaGVldCAmJiAoZS0+aGFzVGFnTmFtZSh2aWRlb1RhZykgfHwgZS0+aGFzVGFnTmFtZShh
dWRpb1RhZykpKSB7Ci0gICAgICAgIGxvYWRlZE1lZGlhU3R5bGVTaGVldCA9IHRydWU7Ci0gICAg
ICAgIFN0cmluZyBtZWRpYVJ1bGVzID0gU3RyaW5nKG1lZGlhQ29udHJvbHNVc2VyQWdlbnRTdHls
ZVNoZWV0LCBzaXplb2YobWVkaWFDb250cm9sc1VzZXJBZ2VudFN0eWxlU2hlZXQpKSArIFJlbmRl
clRoZW1lOjp0aGVtZUZvclBhZ2UoZS0+ZG9jdW1lbnQoKS0+cGFnZSgpKS0+ZXh0cmFNZWRpYUNv
bnRyb2xzU3R5bGVTaGVldCgpOwotICAgICAgICBDU1NTdHlsZVNoZWV0KiBtZWRpYUNvbnRyb2xz
U2hlZXQgPSBwYXJzZVVBU2hlZXQobWVkaWFSdWxlcyk7Ci0gICAgICAgIGRlZmF1bHRTdHlsZS0+
YWRkUnVsZXNGcm9tU2hlZXQobWVkaWFDb250cm9sc1NoZWV0LCBzY3JlZW5FdmFsKCkpOwotICAg
ICAgICBkZWZhdWx0UHJpbnRTdHlsZS0+YWRkUnVsZXNGcm9tU2hlZXQobWVkaWFDb250cm9sc1No
ZWV0LCBwcmludEV2YWwoKSk7Ci0gICAgICAgIGNvbGxlY3RTcGVjaWFsUnVsZXNJbkRlZmF1bHRT
dHlsZSgpOwotICAgIH0KLSNlbmRpZgotCi0jaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJKQotICAg
IHN0YXRpYyBib29sIGxvYWRlZEZ1bGxTY3JlZW5TdHlsZVNoZWV0OwotICAgIGlmICghbG9hZGVk
RnVsbFNjcmVlblN0eWxlU2hlZXQgJiYgZS0+ZG9jdW1lbnQoKS0+d2Via2l0SXNGdWxsU2NyZWVu
KCkpIHsKLSAgICAgICAgbG9hZGVkRnVsbFNjcmVlblN0eWxlU2hlZXQgPSB0cnVlOwotICAgICAg
ICBTdHJpbmcgZnVsbHNjcmVlblJ1bGVzID0gU3RyaW5nKGZ1bGxzY3JlZW5Vc2VyQWdlbnRTdHls
ZVNoZWV0LCBzaXplb2YoZnVsbHNjcmVlblVzZXJBZ2VudFN0eWxlU2hlZXQpKSArIFJlbmRlclRo
ZW1lOjpkZWZhdWx0VGhlbWUoKS0+ZXh0cmFGdWxsU2NyZWVuU3R5bGVTaGVldCgpOwotICAgICAg
ICBDU1NTdHlsZVNoZWV0KiBmdWxsc2NyZWVuU2hlZXQgPSBwYXJzZVVBU2hlZXQoZnVsbHNjcmVl
blJ1bGVzKTsKLSAgICAgICAgZGVmYXVsdFN0eWxlLT5hZGRSdWxlc0Zyb21TaGVldChmdWxsc2Ny
ZWVuU2hlZXQsIHNjcmVlbkV2YWwoKSk7Ci0gICAgICAgIGRlZmF1bHRRdWlya3NTdHlsZS0+YWRk
UnVsZXNGcm9tU2hlZXQoZnVsbHNjcmVlblNoZWV0LCBzY3JlZW5FdmFsKCkpOwotICAgICAgICBj
b2xsZWN0U3BlY2lhbFJ1bGVzSW5EZWZhdWx0U3R5bGUoKTsKLSAgICB9Ci0jZW5kaWYKKyAgICBl
bnN1cmVEZWZhdWx0U3R5bGVTaGVldHNGb3JFbGVtZW50KGVsZW1lbnQpOwogCiAgICAgaW50IGZp
cnN0VUFSdWxlID0gLTEsIGxhc3RVQVJ1bGUgPSAtMTsKICAgICBpbnQgZmlyc3RVc2VyUnVsZSA9
IC0xLCBsYXN0VXNlclJ1bGUgPSAtMTsKQEAgLTEyNzIsNyArMTI3NSw3IEBAIFBhc3NSZWZQdHI8
UmVuZGVyU3R5bGU+IENTU1N0eWxlU2VsZWN0b3IKICAgICB1cGRhdGVGb250KCk7CiAKICAgICAv
LyBDbGVhbiB1cCBvdXIgc3R5bGUgb2JqZWN0J3MgZGlzcGxheSBhbmQgdGV4dCBkZWNvcmF0aW9u
cyAoYW1vbmcgb3RoZXIgZml4dXBzKS4KLSAgICBhZGp1c3RSZW5kZXJTdHlsZShzdHlsZSgpLCBt
X3BhcmVudFN0eWxlLCBlKTsKKyAgICBhZGp1c3RSZW5kZXJTdHlsZShzdHlsZSgpLCBtX3BhcmVu
dFN0eWxlLCBlbGVtZW50KTsKIAogICAgIC8vIFN0YXJ0IGxvYWRpbmcgaW1hZ2VzIHJlZmVyZW5j
ZWQgYnkgdGhpcyBzdHlsZS4KICAgICBsb2FkUGVuZGluZ0ltYWdlcygpOwo=
</data>
<flag name="review"
          id="109284"
          type_id="1"
          status="+"
          setter="kling"
    />
          </attachment>
      

    </bug>

</bugzilla>