<?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>135205</bug_id>
          
          <creation_ts>2014-07-23 11:57:10 -0700</creation_ts>
          <short_desc>[Win] Lots of compiler warnings on Windows</short_desc>
          <delta_ts>2015-02-02 16:32:05 -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>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>All</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="Brent Fulgham">bfulgham</reporter>
          <assigned_to name="Mark Lam">mark.lam</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>fpizlo</cc>
    
    <cc>ggaren</cc>
    
    <cc>mark.lam</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1024280</commentid>
    <comment_count>0</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-07-23 11:57:10 -0700</bug_when>
    <thetext>I see a lot of compiler warnings from JavaScriptCore when building on Windows:

LLIntOffsetsExtractor, JavaScriptCore: Configuration: Debug x64
7&gt;c:\projects\webkit\opensource\webkitbuild\debug\include\private\javascriptcore\MacroAssemblerX86_64.h(206): warning C4307: &apos;*&apos; : integral constant overflow
7&gt;c:\projects\webkit\opensource\webkitbuild\debug\include\private\javascriptcore\MacroAssemblerX86_64.h(210): warning C4307: &apos;*&apos; : integral constant overflow

JavaScriptCore: Configuration: Debug x64
9&gt;c:\projects\webkit\opensource\source\javascriptcore\dfg\DFGEdge.h(208): warning C4805: &apos;|&apos; : unsafe mix of type &apos;uintptr_t&apos; and type &apos;bool&apos; in operation (..\dfg\DFGAbstractValue.cpp)
9&gt;c:\projects\webkit\opensource\source\javascriptcore\dfg\DFGCommon.h(251): warning C4805: &apos;==&apos; : unsafe mix of type &apos;bool&apos; and type &apos;int&apos; in operation (..\dfg\DFGAbstractValue.cpp)
9&gt;          c:\projects\webkit\opensource\source\javascriptcore\dfg\DFGVariableAccessData.h(74) : see reference to function template instantiation &apos;bool JSC::DFG::checkAndSet&lt;bool,int&gt;(T &amp;,U)&apos; being compiled
9&gt;          with
9&gt;          [
9&gt;              T=bool
9&gt;  ,            U=int
9&gt;          ]
9&gt;c:\projects\webkit\opensource\source\javascriptcore\dfg\dfgnodeflags.h(112): warning C4701: potentially uninitialized local variable &apos;mask&apos; used
9&gt;c:\projects\webkit\opensource\source\javascriptcore\dfg\dfgnodeflags.h(129): warning C4701: potentially uninitialized local variable &apos;mask&apos; used
9&gt;c:\projects\webkit\opensource\source\javascriptcore\runtime\jsdataviewprototype.cpp(136): warning C4701: potentially uninitialized local variable &apos;u&apos; used

These messages turn up hundreds of times in the build log, making it difficult to find &apos;real&apos; warnings.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1031810</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2014-08-27 15:26:32 -0700</bug_when>
    <thetext>&lt;rdar://problem/18154531&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1039853</commentid>
    <comment_count>2</comment_count>
      <attachid>239361</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2014-10-06 15:08:15 -0700</bug_when>
    <thetext>Created attachment 239361
the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1039854</commentid>
    <comment_count>3</comment_count>
      <attachid>239361</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2014-10-06 15:11:45 -0700</bug_when>
    <thetext>Comment on attachment 239361
the patch.

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

r=me

&gt; Source/JavaScriptCore/dfg/DFGArgumentPosition.h:67
&gt; +        return checkAndSet(m_shouldNeverUnbox, m_shouldNeverUnbox || shouldNeverUnbox);

Why is this needed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1039855</commentid>
    <comment_count>4</comment_count>
      <attachid>239361</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2014-10-06 15:13:47 -0700</bug_when>
    <thetext>Comment on attachment 239361
the patch.

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

&gt;&gt; Source/JavaScriptCore/dfg/DFGArgumentPosition.h:67
&gt;&gt; +        return checkAndSet(m_shouldNeverUnbox, m_shouldNeverUnbox || shouldNeverUnbox);
&gt; 
&gt; Why is this needed?

Windows MSVC does not like bitwise ORing booleans.  That&apos;s what it was warning about, and flooding the build output with warning messages.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1039856</commentid>
    <comment_count>5</comment_count>
      <attachid>239361</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2014-10-06 15:15:47 -0700</bug_when>
    <thetext>Comment on attachment 239361
the patch.

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

&gt;&gt;&gt; Source/JavaScriptCore/dfg/DFGArgumentPosition.h:67
&gt;&gt;&gt; +        return checkAndSet(m_shouldNeverUnbox, m_shouldNeverUnbox || shouldNeverUnbox);
&gt;&gt; 
&gt;&gt; Why is this needed?
&gt; 
&gt; Windows MSVC does not like bitwise ORing booleans.  That&apos;s what it was warning about, and flooding the build output with warning messages.

To be accurate, the checkAndSet() template function compares the 2 arguments.  Using a bitwise OR results in the second argument becoming type int.  MSVC did not like a comparing a bool (first argument) to an int (second arg) in the reification of the template code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1039857</commentid>
    <comment_count>6</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2014-10-06 15:17:58 -0700</bug_when>
    <thetext>Thanks.  Landed in r174371: &lt;http://trac.webkit.org/r174371&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1039859</commentid>
    <comment_count>7</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2014-10-06 15:20:27 -0700</bug_when>
    <thetext>&gt; To be accurate, the checkAndSet() template function compares the 2 arguments.  Using a bitwise OR results in the second argument becoming type int.  MSVC did not like a comparing a bool (first argument) to an int (second arg) in the reification of the template code.

A slightly better option here is probably to static_cast the result to bool. The original programmer did not intend for this code to include a branch, and the build fix introduced a logical branch. (Hopefully, the compiler will eliminate the logical branch, but still, it&apos;s nice for build fixes to honor the original programmer&apos;s intention.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1066291</commentid>
    <comment_count>8</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2015-02-02 16:32:05 -0800</bug_when>
    <thetext>*** Bug 125122 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>239361</attachid>
            <date>2014-10-06 15:08:15 -0700</date>
            <delta_ts>2014-10-06 15:15:47 -0700</delta_ts>
            <desc>the patch.</desc>
            <filename>bug-135205.patch</filename>
            <type>text/plain</type>
            <size>10317</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTc0MzY0KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM3IEBA
CisyMDE0LTEwLTA2ICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBG
aXhlZCBjb21waWxlciB3YXJuaW5ncyBvbiBXaW5kb3dzIGJ1aWxkLgorICAgICAgICA8aHR0cHM6
Ly93ZWJraXQub3JnL2IvMTM1MjA1PgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIEJlbmNobWFya2luZyB3aXRoIGpzYyBzaG93cyB0aGF0IHBlcmYgaXMg
bmV1dHJhbCB3aXRoIHRoaXMgY2hhbmdlLgorCisgICAgICAgICogYXNzZW1ibGVyL01hY3JvQXNz
ZW1ibGVyWDg2XzY0Lmg6CisgICAgICAgIChKU0M6Ok1hY3JvQXNzZW1ibGVyWDg2XzY0OjpjYWxs
KToKKyAgICAgICAgKiBieXRlY29kZS9Db2RlQmxvY2suY3BwOgorICAgICAgICAoSlNDOjpDb2Rl
QmxvY2s6OkNvZGVCbG9jayk6CisgICAgICAgICogZGZnL0RGR0FyZ3VtZW50UG9zaXRpb24uaDoK
KyAgICAgICAgKEpTQzo6REZHOjpBcmd1bWVudFBvc2l0aW9uOjptZXJnZVNob3VsZE5ldmVyVW5i
b3gpOgorICAgICAgICAoSlNDOjpERkc6OkFyZ3VtZW50UG9zaXRpb246Om1lcmdlQXJndW1lbnRV
bmJveGluZ0F3YXJlbmVzcyk6CisgICAgICAgICogZGZnL0RGR0VkZ2UuaDoKKyAgICAgICAgKEpT
Qzo6REZHOjpFZGdlOjptYWtlV29yZCk6CisgICAgICAgICogZGZnL0RGR05vZGVGbGFncy5oOgor
ICAgICAgICAoSlNDOjpERkc6Om5vZGVNYXlPdmVyZmxvdyk6CisgICAgICAgIChKU0M6OkRGRzo6
bm9kZU1heU5lZ1plcm8pOgorICAgICAgICAqIGRmZy9ERkdPU1JFeGl0Q29tcGlsZXJDb21tb24u
Y3BwOgorICAgICAgICAoSlNDOjpERkc6OnJlaWZ5SW5saW5lZENhbGxGcmFtZXMpOgorICAgICAg
ICAqIGRmZy9ERkdWYXJpYWJsZUFjY2Vzc0RhdGEuY3BwOgorICAgICAgICAoSlNDOjpERkc6OlZh
cmlhYmxlQWNjZXNzRGF0YTo6bWVyZ2VJc0NhcHR1cmVkKToKKyAgICAgICAgKiBkZmcvREZHVmFy
aWFibGVBY2Nlc3NEYXRhLmg6CisgICAgICAgIChKU0M6OkRGRzo6VmFyaWFibGVBY2Nlc3NEYXRh
OjptZXJnZUlzUHJvZml0YWJsZVRvVW5ib3gpOgorICAgICAgICAoSlNDOjpERkc6OlZhcmlhYmxl
QWNjZXNzRGF0YTo6bWVyZ2VTdHJ1Y3R1cmVDaGVja0hvaXN0aW5nRmFpbGVkKToKKyAgICAgICAg
KEpTQzo6REZHOjpWYXJpYWJsZUFjY2Vzc0RhdGE6Om1lcmdlQ2hlY2tBcnJheUhvaXN0aW5nRmFp
bGVkKToKKyAgICAgICAgKEpTQzo6REZHOjpWYXJpYWJsZUFjY2Vzc0RhdGE6Om1lcmdlSXNBcmd1
bWVudHNBbGlhcyk6CisgICAgICAgIChKU0M6OkRGRzo6VmFyaWFibGVBY2Nlc3NEYXRhOjptZXJn
ZUlzTG9hZGVkRnJvbSk6CisgICAgICAgICogcnVudGltZS9KU0RhdGFWaWV3UHJvdG90eXBlLmNw
cDoKKyAgICAgICAgKEpTQzo6Z2V0RGF0YSk6CisKIDIwMTQtMTAtMDYgIE9saXZlciBIdW50ICA8
b2xpdmVyQGFwcGxlLmNvbT4KIAogICAgICAgICBSZW1vdmUgaW5jb3JyZWN0IGFzc2VydGlvbi4K
SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJYODZf
NjQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3Jv
QXNzZW1ibGVyWDg2XzY0LmgJKHJldmlzaW9uIDE3NDM2MykKKysrIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJYODZfNjQuaAkod29ya2luZyBjb3B5KQpAQCAt
MjAzLDExICsyMDMsMTEgQEAgcHVibGljOgogCiAgICAgICAgIC8vIENvcHkgYXJndW1lbnQgNQog
ICAgICAgICBsb2FkNjQoQWRkcmVzcyhYODZSZWdpc3RlcnM6OmVzcCwgNCAqIHNpemVvZihpbnQ2
NF90KSksIHNjcmF0Y2hSZWdpc3Rlcik7Ci0gICAgICAgIHN0b3JlNjQoc2NyYXRjaFJlZ2lzdGVy
LCBBZGRyZXNzKFg4NlJlZ2lzdGVyczo6ZXNwLCAtNCAqIHNpemVvZihpbnQ2NF90KSkpOworICAg
ICAgICBzdG9yZTY0KHNjcmF0Y2hSZWdpc3RlciwgQWRkcmVzcyhYODZSZWdpc3RlcnM6OmVzcCwg
LTQgKiBzdGF0aWNfY2FzdDxpbnQzMl90PihzaXplb2YoaW50NjRfdCkpKSk7CiAKICAgICAgICAg
Ly8gQ29weSBhcmd1bWVudCA2CiAgICAgICAgIGxvYWQ2NChBZGRyZXNzKFg4NlJlZ2lzdGVyczo6
ZXNwLCA1ICogc2l6ZW9mKGludDY0X3QpKSwgc2NyYXRjaFJlZ2lzdGVyKTsKLSAgICAgICAgc3Rv
cmU2NChzY3JhdGNoUmVnaXN0ZXIsIEFkZHJlc3MoWDg2UmVnaXN0ZXJzOjplc3AsIC0zICogc2l6
ZW9mKGludDY0X3QpKSk7CisgICAgICAgIHN0b3JlNjQoc2NyYXRjaFJlZ2lzdGVyLCBBZGRyZXNz
KFg4NlJlZ2lzdGVyczo6ZXNwLCAtMyAqIHN0YXRpY19jYXN0PGludDMyX3Q+KHNpemVvZihpbnQ2
NF90KSkpKTsKIAogICAgICAgICAvLyBXZSBhbHNvIG5lZWQgdG8gYWxsb2NhdGUgdGhlIHNoYWRv
dyBzcGFjZSBvbiB0aGUgc3RhY2sgZm9yIHRoZSA0IHBhcmFtZXRlciByZWdpc3RlcnMuCiAgICAg
ICAgIC8vIEFsc28sIHdlIHNob3VsZCBhbGxvY2F0ZSAxNiBieXRlcyBmb3IgdGhlIGZyYW1lIHBv
aW50ZXIsIGFuZCByZXR1cm4gYWRkcmVzcyAobm90IHBvcHVsYXRlZCkuCkluZGV4OiBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcAo9PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvYnl0ZWNvZGUvQ29kZUJsb2NrLmNwcAkocmV2aXNpb24gMTc0MzYz
KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL2J5dGVjb2RlL0NvZGVCbG9jay5jcHAJKHdvcmtp
bmcgY29weSkKQEAgLTIwMTYsNyArMjAxNiw3IEBAIENvZGVCbG9jazo6Q29kZUJsb2NrKFNjcmlw
dEV4ZWN1dGFibGUqIG8KICAgICAgICAgICAgIC8vIFRoZSBmb3JtYXQgb2YgdGhpcyBpbnN0cnVj
dGlvbiBpczogb3BfcHJvZmlsZV90eXBlIHJlZ1RvUHJvZmlsZSwgVHlwZUxvY2F0aW9uKiwgZmxh
ZywgaWRlbnRpZmllcj8sIHJlc29sdmVUeXBlPwogICAgICAgICAgICAgc2l6ZV90IGluc3RydWN0
aW9uT2Zmc2V0ID0gaSArIG9wTGVuZ3RoIC0gMTsKICAgICAgICAgICAgIHVuc2lnbmVkIGRpdm90
U3RhcnQsIGRpdm90RW5kOwotICAgICAgICAgICAgR2xvYmFsVmFyaWFibGVJRCBnbG9iYWxWYXJp
YWJsZUlEOworICAgICAgICAgICAgR2xvYmFsVmFyaWFibGVJRCBnbG9iYWxWYXJpYWJsZUlEID0g
MDsKICAgICAgICAgICAgIFJlZlB0cjxUeXBlU2V0PiBnbG9iYWxUeXBlU2V0OwogICAgICAgICAg
ICAgYm9vbCBzaG91bGRBbmFseXplID0gbV91bmxpbmtlZENvZGUtPnR5cGVQcm9maWxlckV4cHJl
c3Npb25JbmZvRm9yQnl0ZWNvZGVPZmZzZXQoaW5zdHJ1Y3Rpb25PZmZzZXQsIGRpdm90U3RhcnQs
IGRpdm90RW5kKTsKICAgICAgICAgICAgIFZpcnR1YWxSZWdpc3RlciBwcm9maWxlUmVnaXN0ZXIo
cGNbMV0udS5vcGVyYW5kKTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHQXJn
dW1lbnRQb3NpdGlvbi5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcv
REZHQXJndW1lbnRQb3NpdGlvbi5oCShyZXZpc2lvbiAxNzQzNjMpCisrKyBTb3VyY2UvSmF2YVNj
cmlwdENvcmUvZGZnL0RGR0FyZ3VtZW50UG9zaXRpb24uaAkod29ya2luZyBjb3B5KQpAQCAtNjQs
NyArNjQsNyBAQCBwdWJsaWM6CiAgICAgCiAgICAgYm9vbCBtZXJnZVNob3VsZE5ldmVyVW5ib3go
Ym9vbCBzaG91bGROZXZlclVuYm94KQogICAgIHsKLSAgICAgICAgcmV0dXJuIGNoZWNrQW5kU2V0
KG1fc2hvdWxkTmV2ZXJVbmJveCwgbV9zaG91bGROZXZlclVuYm94IHwgc2hvdWxkTmV2ZXJVbmJv
eCk7CisgICAgICAgIHJldHVybiBjaGVja0FuZFNldChtX3Nob3VsZE5ldmVyVW5ib3gsIG1fc2hv
dWxkTmV2ZXJVbmJveCB8fCBzaG91bGROZXZlclVuYm94KTsKICAgICB9CiAgICAgCiAgICAgYm9v
bCBtZXJnZUFyZ3VtZW50UHJlZGljdGlvbkF3YXJlbmVzcygpCkBAIC05Myw3ICs5Myw3IEBAIHB1
YmxpYzoKICAgICAgICAgYm9vbCBjaGFuZ2VkID0gZmFsc2U7CiAgICAgICAgIGZvciAodW5zaWdu
ZWQgaSA9IDA7IGkgPCBtX3ZhcmlhYmxlcy5zaXplKCk7ICsraSkgewogICAgICAgICAgICAgVmFy
aWFibGVBY2Nlc3NEYXRhKiB2YXJpYWJsZSA9IG1fdmFyaWFibGVzW2ldLT5maW5kKCk7Ci0gICAg
ICAgICAgICBjaGFuZ2VkIHw9IGNoZWNrQW5kU2V0KG1faXNQcm9maXRhYmxlVG9VbmJveCwgbV9p
c1Byb2ZpdGFibGVUb1VuYm94IHwgdmFyaWFibGUtPmlzUHJvZml0YWJsZVRvVW5ib3goKSk7Cisg
ICAgICAgICAgICBjaGFuZ2VkIHw9IGNoZWNrQW5kU2V0KG1faXNQcm9maXRhYmxlVG9VbmJveCwg
bV9pc1Byb2ZpdGFibGVUb1VuYm94IHx8IHZhcmlhYmxlLT5pc1Byb2ZpdGFibGVUb1VuYm94KCkp
OwogICAgICAgICB9CiAgICAgICAgIGlmICghY2hhbmdlZCkKICAgICAgICAgICAgIHJldHVybiBm
YWxzZTsKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHRWRnZS5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9kZmcvREZHRWRnZS5oCShyZXZpc2lvbiAxNzQz
NjMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR0VkZ2UuaAkod29ya2luZyBjb3B5
KQpAQCAtMjAxLDcgKzIwMSw3IEBAIHByaXZhdGU6CiAgICAgICAgIEFTU0VSVCgoc2hpZnRlZFZh
bHVlID4+IHNoaWZ0KCkpID09IGJpdHdpc2VfY2FzdDx1aW50cHRyX3Q+KG5vZGUpKTsKICAgICAg
ICAgQVNTRVJUKHVzZUtpbmQgPj0gMCAmJiB1c2VLaW5kIDwgTGFzdFVzZUtpbmQpOwogICAgICAg
ICBBU1NFUlQoKHN0YXRpY19jYXN0PHVpbnRwdHJfdD4oTGFzdFVzZUtpbmQpIDw8IDIpIDw9IChz
dGF0aWNfY2FzdDx1aW50cHRyX3Q+KDIpIDw8IHNoaWZ0KCkpKTsKLSAgICAgICAgcmV0dXJuIHNo
aWZ0ZWRWYWx1ZSB8IChzdGF0aWNfY2FzdDx1aW50cHRyX3Q+KHVzZUtpbmQpIDw8IDIpIHwgKERG
Rzo6ZG9lc0tpbGwoa2lsbFN0YXR1cykgPDwgMSkgfCBERkc6OmlzUHJvdmVkKHByb29mU3RhdHVz
KTsKKyAgICAgICAgcmV0dXJuIHNoaWZ0ZWRWYWx1ZSB8IChzdGF0aWNfY2FzdDx1aW50cHRyX3Q+
KHVzZUtpbmQpIDw8IDIpIHwgKERGRzo6ZG9lc0tpbGwoa2lsbFN0YXR1cykgPDwgMSkgfCBzdGF0
aWNfY2FzdDx1aW50cHRyX3Q+KERGRzo6aXNQcm92ZWQocHJvb2ZTdGF0dXMpKTsKICAgICB9CiAg
ICAgCiAjZWxzZQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdOb2RlRmxhZ3Mu
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR05vZGVGbGFncy5o
CShyZXZpc2lvbiAxNzQzNjMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR05vZGVG
bGFncy5oCSh3b3JraW5nIGNvcHkpCkBAIC05OCw3ICs5OCw3IEBAIGVudW0gUmFyZUNhc2VQcm9m
aWxpbmdTb3VyY2UgewogCiBzdGF0aWMgaW5saW5lIGJvb2wgbm9kZU1heU92ZXJmbG93KE5vZGVG
bGFncyBmbGFncywgUmFyZUNhc2VQcm9maWxpbmdTb3VyY2Ugc291cmNlKQogewotICAgIE5vZGVG
bGFncyBtYXNrOworICAgIE5vZGVGbGFncyBtYXNrID0gMDsKICAgICBzd2l0Y2ggKHNvdXJjZSkg
ewogICAgIGNhc2UgQmFzZWxpbmVSYXJlQ2FzZToKICAgICAgICAgbWFzayA9IE5vZGVNYXlPdmVy
Zmxvd0luQmFzZWxpbmU7CkBAIC0xMTUsNyArMTE1LDcgQEAgc3RhdGljIGlubGluZSBib29sIG5v
ZGVNYXlPdmVyZmxvdyhOb2RlRgogCiBzdGF0aWMgaW5saW5lIGJvb2wgbm9kZU1heU5lZ1plcm8o
Tm9kZUZsYWdzIGZsYWdzLCBSYXJlQ2FzZVByb2ZpbGluZ1NvdXJjZSBzb3VyY2UpCiB7Ci0gICAg
Tm9kZUZsYWdzIG1hc2s7CisgICAgTm9kZUZsYWdzIG1hc2sgPSAwOwogICAgIHN3aXRjaCAoc291
cmNlKSB7CiAgICAgY2FzZSBCYXNlbGluZVJhcmVDYXNlOgogICAgICAgICBtYXNrID0gTm9kZU1h
eU5lZ1plcm9JbkJhc2VsaW5lOwpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdP
U1JFeGl0Q29tcGlsZXJDb21tb24uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9kZmcvREZHT1NSRXhpdENvbXBpbGVyQ29tbW9uLmNwcAkocmV2aXNpb24gMTc0MzYzKQor
KysgU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdPU1JFeGl0Q29tcGlsZXJDb21tb24uY3Bw
CSh3b3JraW5nIGNvcHkpCkBAIC0xNDUsNyArMTQ1LDcgQEAgdm9pZCByZWlmeUlubGluZWRDYWxs
RnJhbWVzKENDYWxsSGVscGVycwogICAgICAgICBJbmxpbmVDYWxsRnJhbWUqIGlubGluZUNhbGxG
cmFtZSA9IGNvZGVPcmlnaW4uaW5saW5lQ2FsbEZyYW1lOwogICAgICAgICBDb2RlQmxvY2sqIGJh
c2VsaW5lQ29kZUJsb2NrID0gaml0LmJhc2VsaW5lQ29kZUJsb2NrRm9yKGNvZGVPcmlnaW4pOwog
ICAgICAgICBDb2RlQmxvY2sqIGJhc2VsaW5lQ29kZUJsb2NrRm9yQ2FsbGVyID0gaml0LmJhc2Vs
aW5lQ29kZUJsb2NrRm9yKGlubGluZUNhbGxGcmFtZS0+Y2FsbGVyKTsKLSAgICAgICAgdm9pZCog
anVtcFRhcmdldDsKKyAgICAgICAgdm9pZCoganVtcFRhcmdldCA9IG51bGxwdHI7CiAgICAgICAg
IHZvaWQqIHRydWVSZXR1cm5QQyA9IG51bGxwdHI7CiAgICAgICAgIAogICAgICAgICB1bnNpZ25l
ZCBjYWxsQnl0ZWNvZGVJbmRleCA9IGlubGluZUNhbGxGcmFtZS0+Y2FsbGVyLmJ5dGVjb2RlSW5k
ZXg7CkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvZGZnL0RGR1ZhcmlhYmxlQWNjZXNzRGF0
YS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdWYXJpYWJs
ZUFjY2Vzc0RhdGEuY3BwCShyZXZpc2lvbiAxNzQzNjMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENv
cmUvZGZnL0RGR1ZhcmlhYmxlQWNjZXNzRGF0YS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTY2LDgg
KzY2LDggQEAgVmFyaWFibGVBY2Nlc3NEYXRhOjpWYXJpYWJsZUFjY2Vzc0RhdGEoVgogCiBib29s
IFZhcmlhYmxlQWNjZXNzRGF0YTo6bWVyZ2VJc0NhcHR1cmVkKGJvb2wgaXNDYXB0dXJlZCkKIHsK
LSAgICByZXR1cm4gY2hlY2tBbmRTZXQobV9zaG91bGROZXZlclVuYm94LCBtX3Nob3VsZE5ldmVy
VW5ib3ggfCBpc0NhcHR1cmVkKQotICAgICAgICB8IGNoZWNrQW5kU2V0KG1faXNDYXB0dXJlZCwg
bV9pc0NhcHR1cmVkIHwgaXNDYXB0dXJlZCk7CisgICAgcmV0dXJuIGNoZWNrQW5kU2V0KG1fc2hv
dWxkTmV2ZXJVbmJveCwgbV9zaG91bGROZXZlclVuYm94IHx8IGlzQ2FwdHVyZWQpCisgICAgICAg
IHwgY2hlY2tBbmRTZXQobV9pc0NhcHR1cmVkLCBtX2lzQ2FwdHVyZWQgfHwgaXNDYXB0dXJlZCk7
CiB9CiAKIGJvb2wgVmFyaWFibGVBY2Nlc3NEYXRhOjptZXJnZVNob3VsZE5ldmVyVW5ib3goYm9v
bCBzaG91bGROZXZlclVuYm94KQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL2RmZy9ERkdW
YXJpYWJsZUFjY2Vzc0RhdGEuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUv
ZGZnL0RGR1ZhcmlhYmxlQWNjZXNzRGF0YS5oCShyZXZpc2lvbiAxNzQzNjMpCisrKyBTb3VyY2Uv
SmF2YVNjcmlwdENvcmUvZGZnL0RGR1ZhcmlhYmxlQWNjZXNzRGF0YS5oCSh3b3JraW5nIGNvcHkp
CkBAIC03MSw3ICs3MSw3IEBAIHB1YmxpYzoKICAgICAKICAgICBib29sIG1lcmdlSXNQcm9maXRh
YmxlVG9VbmJveChib29sIGlzUHJvZml0YWJsZVRvVW5ib3gpCiAgICAgewotICAgICAgICByZXR1
cm4gY2hlY2tBbmRTZXQobV9pc1Byb2ZpdGFibGVUb1VuYm94LCBtX2lzUHJvZml0YWJsZVRvVW5i
b3ggfCBpc1Byb2ZpdGFibGVUb1VuYm94KTsKKyAgICAgICAgcmV0dXJuIGNoZWNrQW5kU2V0KG1f
aXNQcm9maXRhYmxlVG9VbmJveCwgbV9pc1Byb2ZpdGFibGVUb1VuYm94IHx8IGlzUHJvZml0YWJs
ZVRvVW5ib3gpOwogICAgIH0KICAgICAKICAgICBib29sIGlzUHJvZml0YWJsZVRvVW5ib3goKQpA
QCAtMTAwLDEyICsxMDAsMTIgQEAgcHVibGljOgogCiAgICAgYm9vbCBtZXJnZVN0cnVjdHVyZUNo
ZWNrSG9pc3RpbmdGYWlsZWQoYm9vbCBmYWlsZWQpCiAgICAgewotICAgICAgICByZXR1cm4gY2hl
Y2tBbmRTZXQobV9zdHJ1Y3R1cmVDaGVja0hvaXN0aW5nRmFpbGVkLCBtX3N0cnVjdHVyZUNoZWNr
SG9pc3RpbmdGYWlsZWQgfCBmYWlsZWQpOworICAgICAgICByZXR1cm4gY2hlY2tBbmRTZXQobV9z
dHJ1Y3R1cmVDaGVja0hvaXN0aW5nRmFpbGVkLCBtX3N0cnVjdHVyZUNoZWNrSG9pc3RpbmdGYWls
ZWQgfHwgZmFpbGVkKTsKICAgICB9CiAgICAgCiAgICAgYm9vbCBtZXJnZUNoZWNrQXJyYXlIb2lz
dGluZ0ZhaWxlZChib29sIGZhaWxlZCkKICAgICB7Ci0gICAgICAgIHJldHVybiBjaGVja0FuZFNl
dChtX2NoZWNrQXJyYXlIb2lzdGluZ0ZhaWxlZCwgbV9jaGVja0FycmF5SG9pc3RpbmdGYWlsZWQg
fCBmYWlsZWQpOworICAgICAgICByZXR1cm4gY2hlY2tBbmRTZXQobV9jaGVja0FycmF5SG9pc3Rp
bmdGYWlsZWQsIG1fY2hlY2tBcnJheUhvaXN0aW5nRmFpbGVkIHx8IGZhaWxlZCk7CiAgICAgfQog
ICAgIAogICAgIGJvb2wgc3RydWN0dXJlQ2hlY2tIb2lzdGluZ0ZhaWxlZCgpCkBAIC0xMjAsNyAr
MTIwLDcgQEAgcHVibGljOgogICAgIAogICAgIGJvb2wgbWVyZ2VJc0FyZ3VtZW50c0FsaWFzKGJv
b2wgaXNBcmd1bWVudHNBbGlhcykKICAgICB7Ci0gICAgICAgIHJldHVybiBjaGVja0FuZFNldCht
X2lzQXJndW1lbnRzQWxpYXMsIG1faXNBcmd1bWVudHNBbGlhcyB8IGlzQXJndW1lbnRzQWxpYXMp
OworICAgICAgICByZXR1cm4gY2hlY2tBbmRTZXQobV9pc0FyZ3VtZW50c0FsaWFzLCBtX2lzQXJn
dW1lbnRzQWxpYXMgfHwgaXNBcmd1bWVudHNBbGlhcyk7CiAgICAgfQogICAgIAogICAgIGJvb2wg
aXNBcmd1bWVudHNBbGlhcygpCkBAIC0xMzAsNyArMTMwLDcgQEAgcHVibGljOgogICAgIAogICAg
IGJvb2wgbWVyZ2VJc0xvYWRlZEZyb20oYm9vbCBpc0xvYWRlZEZyb20pCiAgICAgewotICAgICAg
ICByZXR1cm4gY2hlY2tBbmRTZXQobV9pc0xvYWRlZEZyb20sIG1faXNMb2FkZWRGcm9tIHwgaXNM
b2FkZWRGcm9tKTsKKyAgICAgICAgcmV0dXJuIGNoZWNrQW5kU2V0KG1faXNMb2FkZWRGcm9tLCBt
X2lzTG9hZGVkRnJvbSB8fCBpc0xvYWRlZEZyb20pOwogICAgIH0KICAgICAKICAgICB2b2lkIHNl
dElzTG9hZGVkRnJvbShib29sIGlzTG9hZGVkRnJvbSkKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3BwCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJj
ZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTRGF0YVZpZXdQcm90b3R5cGUuY3BwCShyZXZpc2lv
biAxNzQzNjMpCisrKyBTb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0RhdGFWaWV3UHJv
dG90eXBlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTQ0LDcgKzE0NCw3IEBAIEVuY29kZWRKU1Zh
bHVlIGdldERhdGEoRXhlY1N0YXRlKiBleGVjKQogICAgIHVuaW9uIHsKICAgICAgICAgdHlwZW5h
bWUgQWRhcHRvcjo6VHlwZSB2YWx1ZTsKICAgICAgICAgdWludDhfdCByYXdCeXRlc1tkYXRhU2l6
ZV07Ci0gICAgfSB1OworICAgIH0gdSA9IHsgfTsKIAogICAgIHVpbnQ4X3QqIGRhdGFQdHIgPSBz
dGF0aWNfY2FzdDx1aW50OF90Kj4oZGF0YVZpZXctPnZlY3RvcigpKSArIGJ5dGVPZmZzZXQ7CiAK
</data>
<flag name="review"
          id="264086"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>