<?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>143773</bug_id>
          
          <creation_ts>2015-04-15 06:34:44 -0700</creation_ts>
          <short_desc>[W32] Many warnings about printf format all over the code when building with MinGW</short_desc>
          <delta_ts>2019-02-03 12:23:01 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=30342</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>133028</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="LRN">lrn1986</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cgarcia</cc>
    
    <cc>lrn1986</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1085468</commentid>
    <comment_count>0</comment_count>
    <who name="LRN">lrn1986</who>
    <bug_when>2015-04-15 06:34:44 -0700</bug_when>
    <thetext>&quot;printf&quot; means &quot;gnu_printf&quot; when compiling for non-Windows and means
&quot;ms_printf&quot; when compiling for Windows. The code, however, does seems to be
assuming gnu_printf (judging by the use of %z and %l).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1085563</commentid>
    <comment_count>1</comment_count>
      <attachid>250820</attachid>
    <who name="LRN">lrn1986</who>
    <bug_when>2015-04-15 10:18:24 -0700</bug_when>
    <thetext>Created attachment 250820
Change printf format attribute to gnu_printf, MinGW compatibility

&quot;printf&quot; means &quot;gnu_printf&quot; when compiling for non-Windows and means
&quot;ms_printf&quot; when compiling for Windows. The code, however, does seems to be
assuming gnu_printf (judging by the use of %z and %l).

Fix this by explicitly specifying gnu_printf format style.
To ensure that gnu-compatible printf implementation is used, compile
with -D__USE_MINGW_ANSI_STDIO=1, it will automagically turn all *printf()
invocations into __mingw_*printf(), which are gnu-compatible.

Only one function that won&apos;t be turned is _vsnprintf(). Ifdef its use and
call vsnprintf() instead when __USE_MINGW_ANSI_STDIO != 0.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1085569</commentid>
    <comment_count>2</comment_count>
      <attachid>250820</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2015-04-15 10:29:21 -0700</bug_when>
    <thetext>Comment on attachment 250820
Change printf format attribute to gnu_printf, MinGW compatibility

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

&gt; Source/WTF/ChangeLog:7
&gt; +        &quot;printf&quot; means &quot;gnu_printf&quot; when compiling for non-Windows and means
&gt; +        &quot;ms_printf&quot; when compiling for Windows. The code, however, does seems to be
&gt; +        assuming gnu_printf (judging by the use of %z and %l).

We don’t need to use %z and %l; where do you see those? This patch might makes things better for MinGW, but they don’t resolve the problem for Windows so I’d prefer to actually tackle that problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1085577</commentid>
    <comment_count>3</comment_count>
    <who name="LRN">lrn1986</who>
    <bug_when>2015-04-15 10:37:41 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; Comment on attachment 250820 [details]
&gt; Change printf format attribute to gnu_printf, MinGW compatibility
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=250820&amp;action=review
&gt; 
&gt; &gt; Source/WTF/ChangeLog:7
&gt; &gt; +        &quot;printf&quot; means &quot;gnu_printf&quot; when compiling for non-Windows and means
&gt; &gt; +        &quot;ms_printf&quot; when compiling for Windows. The code, however, does seems to be
&gt; &gt; +        assuming gnu_printf (judging by the use of %z and %l).
&gt; 
&gt; We don’t need to use %z and %l; where do you see those? This patch might
&gt; makes things better for MinGW, but they don’t resolve the problem for
&gt; Windows so I’d prefer to actually tackle that problem.

../webkitgtk-2.4.8/Source/WTF/wtf/FilePrintStream.cpp: In member function &apos;virtual void WTF::FilePrintStream::vprintf(const char*, va_list)&apos;:
../webkitgtk-2.4.8/Source/WTF/wtf/FilePrintStream.cpp:55:37: warning: function might be possible candidate for &apos;gnu_printf&apos; format attribute [-Wsuggest-attribute=format]
     vfprintf(m_file, format, argList);
                                     ^

../webkitgtk-2.4.8/Source/WTF/wtf/PrintStream.cpp: In function &apos;void WTF::printInternal(WTF::PrintStream&amp;, long long int)&apos;:
../webkitgtk-2.4.8/Source/WTF/wtf/PrintStream.cpp:124:29: warning: unknown conversion type character &apos;l&apos; in format [-Wformat=]
     out.printf(&quot;%lld&quot;, value);
                             ^
../webkitgtk-2.4.8/Source/WTF/wtf/PrintStream.cpp:124:29: warning: too many arguments for format [-Wformat-extra-args]
../webkitgtk-2.4.8/Source/WTF/wtf/PrintStream.cpp: In function &apos;void WTF::printInternal(WTF::PrintStream&amp;, long long unsigned int)&apos;:
../webkitgtk-2.4.8/Source/WTF/wtf/PrintStream.cpp:129:29: warning: unknown conversion type character &apos;l&apos; in format [-Wformat=]
     out.printf(&quot;%llu&quot;, value);
                             ^
../webkitgtk-2.4.8/Source/WTF/wtf/PrintStream.cpp:129:29: warning: too many arguments for format [-Wformat-extra-args]

../webkitgtk-2.4.8/Source/WTF/wtf/StringPrintStream.cpp: In member function &apos;virtual void WTF::StringPrintStream::vprintf(const char*, va_list)&apos;:
../webkitgtk-2.4.8/Source/WTF/wtf/StringPrintStream.cpp:60:79: warning: function might be possible candidate for &apos;gnu_printf&apos; format attribute [-Wsuggest-attribute=format]
         vsnprintf(m_buffer + m_next, m_size - m_next, format, firstPassArgList);
                                                                               ^
../webkitgtk-2.4.8/Source/WTF/wtf/StringPrintStream.cpp:73:70: warning: function might be possible candidate for &apos;gnu_printf&apos; format attribute [-Wsuggest-attribute=format]
         vsnprintf(m_buffer + m_next, m_size - m_next, format, argList);
                                                                      ^
../webkitgtk-2.4.8/Source/WTF/wtf/text/WTFString.cpp: In static member function &apos;static WTF::String WTF::String::format(const char*, ...)&apos;:
../webkitgtk-2.4.8/Source/WTF/wtf/text/WTFString.cpp:463:48: warning: function might be possible candidate for &apos;gnu_printf&apos; format attribute [-Wsuggest-attribute=format]
     int result = vsnprintf(&amp;ch, 1, format, args);
                                                ^
../webkitgtk-2.4.8/Source/WTF/wtf/text/WTFString.cpp:482:57: warning: function might be possible candidate for &apos;gnu_printf&apos; format attribute [-Wsuggest-attribute=format]
     vsnprintf(buffer.data(), buffer.size(), format, args);
                                                         ^

../webkitgtk-2.4.8/Source/WebCore/platform/sql/SQLiteFileSystem.cpp: In static member function &apos;static WTF::String WebCore::SQLiteFileSystem::getFileNameForNewDatabase(const WTF::String&amp;, const WTF::String&amp;, const WTF::String&amp;, WebCore::SQLiteDatabase*)&apos;:
../webkitgtk-2.4.8/Source/WebCore/platform/sql/SQLiteFileSystem.cpp:76:91: warning: unknown conversion type character &apos;l&apos; in format [-Wformat=]
         fileName = pathByAppendingComponent(dbDir, String::format(&quot;%016&quot; PRIx64 &quot;.db&quot;, seq));
                                                                                           ^
../webkitgtk-2.4.8/Source/WebCore/platform/sql/SQLiteFileSystem.cpp:76:91: warning: too many arguments for format [-Wformat-extra-args]
../webkitgtk-2.4.8/Source/WebCore/platform/sql/SQLiteFileSystem.cpp:79:51: warning: unknown conversion type character &apos;l&apos; in format [-Wformat=]
     return String::format(&quot;%016&quot; PRIx64 &quot;.db&quot;, seq);
                                                   ^
../webkitgtk-2.4.8/Source/WebCore/platform/sql/SQLiteFileSystem.cpp:79:51: warning: too many arguments for format [-Wformat-extra-args]

../webkitgtk-2.4.8/Source/JavaScriptCore/jsc.cpp: In member function &apos;JSC::StackVisitor::Status FunctionJSCStackFunctor::operator()(JSC::StackVisitor&amp;)&apos;:
../webkitgtk-2.4.8/Source/JavaScriptCore/jsc.cpp:339:108: warning: unknown conversion type character &apos;z&apos; in format [-Wformat=]
         m_trace.append(String::format(&quot;    %zu   %s\n&quot;, visitor-&gt;index(), visitor-&gt;toString().utf8().data()));
                                                                                                            ^
../webkitgtk-2.4.8/Source/JavaScriptCore/jsc.cpp:339:108: warning: format &apos;%s&apos; expects argument of type &apos;char*&apos;, but argument 2 has type &apos;size_t {aka unsigned int}&apos; [-Wformat=]
../webkitgtk-2.4.8/Source/JavaScriptCore/jsc.cpp:339:108: warning: too many arguments for format [-Wformat-extra-args]

../webkitgtk-2.4.8/Source/WebCore/xml/parser/XMLDocumentParserLibxml2.cpp: In member function &apos;void WebCore::XMLDocumentParser::error(WebCore::XMLErrors::ErrorType, const char*, va_list)&apos;:
../webkitgtk-2.4.8/Source/WebCore/xml/parser/XMLDocumentParserLibxml2.cpp:964:46: warning: function might be possible candidate for &apos;gnu_printf&apos; format attribute [-Wsuggest-attribute=format]
     vsnprintf(m, sizeof(m) - 1, message, args);
                                              ^

In file included from ../webkitgtk-2.4.8/Source/JavaScriptCore/disassembler/ARM64/A64DOpcode.cpp:27:0:
../webkitgtk-2.4.8/Source/JavaScriptCore/disassembler/ARM64/A64DOpcode.h: In member function &apos;void JSC::ARM64Disassembler::A64DOpcode::appendUnsignedImmediate64(uint64_t)&apos;:
../webkitgtk-2.4.8/Source/JavaScriptCore/disassembler/ARM64/A64DOpcode.h:175:42: warning: unknown conversion type character &apos;l&apos; in format [-Wformat=]
         bufferPrintf(&quot;#0x%llx&quot;, immediate);
                                          ^
../webkitgtk-2.4.8/Source/JavaScriptCore/disassembler/ARM64/A64DOpcode.h:175:42: warning: too many arguments for format [-Wformat-extra-args]
../webkitgtk-2.4.8/Source/JavaScriptCore/disassembler/ARM64/A64DOpcode.h: In member function &apos;void JSC::ARM64Disassembler::A64DOpcode::appendPCRelativeOffset(uint32_t*, int32_t)&apos;:
../webkitgtk-2.4.8/Source/JavaScriptCore/disassembler/ARM64/A64DOpcode.h:180:74: warning: unknown conversion type character &apos;l&apos; in format [-Wformat=]
         bufferPrintf(&quot;0x%llx&quot;, reinterpret_cast&lt;uint64_t&gt;(pc + immediate));
                                                                          ^
../webkitgtk-2.4.8/Source/JavaScriptCore/disassembler/ARM64/A64DOpcode.h:180:74: warning: too many arguments for format [-Wformat-extra-args]
../webkitgtk-2.4.8/Source/JavaScriptCore/disassembler/ARM64/A64DOpcode.cpp: In member function &apos;void JSC::ARM64Disassembler::A64DOpcode::bufferPrintf(const char*, ...)&apos;:
../webkitgtk-2.4.8/Source/JavaScriptCore/disassembler/ARM64/A64DOpcode.cpp:162:110: warning: function might be possible candidate for &apos;gnu_printf&apos; format attribute [-Wsuggest-attribute=format]
     m_bufferOffset += vsnprintf(m_formatBuffer + m_bufferOffset, bufferSize - m_bufferOffset, format, argList);
                                                                                                              ^

In file included from ../webkitgtk-2.4.8/Source/JavaScriptCore/tools/CodeProfile.cpp:32:0:
../webkitgtk-2.4.8/Source/JavaScriptCore/tools/ProfileTreeNode.h: In member function &apos;void JSC::ProfileTreeNode::dumpInternal(unsigned int)&apos;:
../webkitgtk-2.4.8/Source/JavaScriptCore/tools/ProfileTreeNode.h:102:89: warning: unknown conversion type character &apos;l&apos; in format [-Wformat=]
                 static_cast&lt;long long&gt;(entry-&gt;value.count() - entry-&gt;value.childCount()));
                                                                                         ^
../webkitgtk-2.4.8/Source/JavaScriptCore/tools/ProfileTreeNode.h:102:89: warning: format &apos;%s&apos; expects argument of type &apos;char*&apos;, but argument 2 has type &apos;long long int&apos; [-Wformat=]
../webkitgtk-2.4.8/Source/JavaScriptCore/tools/ProfileTreeNode.h:102:89: warning: unknown conversion type character &apos;l&apos; in format [-Wformat=]
../webkitgtk-2.4.8/Source/JavaScriptCore/tools/ProfileTreeNode.h:102:89: warning: too many arguments for format [-Wformat-extra-args]
../webkitgtk-2.4.8/Source/JavaScriptCore/tools/CodeProfile.cpp: In member function &apos;void JSC::CodeProfile::report()&apos;:
../webkitgtk-2.4.8/Source/JavaScriptCore/tools/CodeProfile.cpp:183:83: warning: unknown conversion type character &apos;l&apos; in format [-Wformat=]
     dataLogF(&quot;Total samples: %lld\n&quot;, static_cast&lt;long long&gt;(profile.childCount()));
                                                                                   ^
../webkitgtk-2.4.8/Source/JavaScriptCore/tools/CodeProfile.cpp:183:83: warning: too many arguments for format [-Wformat-extra-args]</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>250820</attachid>
            <date>2015-04-15 10:18:24 -0700</date>
            <delta_ts>2015-04-15 10:29:21 -0700</delta_ts>
            <desc>Change printf format attribute to gnu_printf, MinGW compatibility</desc>
            <filename>Change-printf-format-attribute-to-gnuprintf-MinGW-.patch</filename>
            <type>text/plain</type>
            <size>4685</size>
            <attacher name="LRN">lrn1986</attacher>
            
              <data encoding="base64">RnJvbSA0YzUwMzQwODI2MmU0MWJmZWFiOGU1ZjBhYTBhYTgzNmFhZWI2YzcxIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiA9P1VURi04P3E/PUQwPUEwPUQxPTgzPUQxPTgxPUQwPUJCPUQw
PUIwPUQwPUJEPTIwPUQwPTk4PUQwPUI2PUQwPUIxPz0KID0/VVRGLTg/cT89RDE9ODM9RDA9QkI9
RDA9QjA9RDE9ODI9RDA9QkU9RDA9QjI/PSA8bHJuMTk4NkBnbWFpbC5jb20+CkRhdGU6IFR1ZSwg
MTQgQXByIDIwMTUgMTc6NTA6MjUgKzAwMDAKU3ViamVjdDogW1BBVENIXSBDaGFuZ2UgcHJpbnRm
IGZvcm1hdCBhdHRyaWJ1dGUgdG8gZ251X3ByaW50ZiwgTWluR1cKIGNvbXBhdGliaWxpdHkKCiJw
cmludGYiIG1lYW5zICJnbnVfcHJpbnRmIiB3aGVuIGNvbXBpbGluZyBmb3Igbm9uLVdpbmRvd3Mg
YW5kIG1lYW5zCiJtc19wcmludGYiIHdoZW4gY29tcGlsaW5nIGZvciBXaW5kb3dzLiBUaGUgY29k
ZSwgaG93ZXZlciwgZG9lcyBzZWVtcyB0byBiZQphc3N1bWluZyBnbnVfcHJpbnRmIChqdWRnaW5n
IGJ5IHRoZSB1c2Ugb2YgJXogYW5kICVsKS4KCkZpeCB0aGlzIGJ5IGV4cGxpY2l0bHkgc3BlY2lm
eWluZyBnbnVfcHJpbnRmIGZvcm1hdCBzdHlsZS4KVG8gZW5zdXJlIHRoYXQgZ251LWNvbXBhdGli
bGUgcHJpbnRmIGltcGxlbWVudGF0aW9uIGlzIHVzZWQsIGNvbXBpbGUKd2l0aCAtRF9fVVNFX01J
TkdXX0FOU0lfU1RESU89MSwgaXQgd2lsbCBhdXRvbWFnaWNhbGx5IHR1cm4gYWxsICpwcmludGYo
KQppbnZvY2F0aW9ucyBpbnRvIF9fbWluZ3dfKnByaW50ZigpLCB3aGljaCBhcmUgZ251LWNvbXBh
dGlibGUuCgpPbmx5IG9uZSBmdW5jdGlvbiB0aGF0IHdvbid0IGJlIHR1cm5lZCBpcyBfdnNucHJp
bnRmKCkuIElmZGVmIGl0cyB1c2UgYW5kCmNhbGwgdnNucHJpbnRmKCkgaW5zdGVhZCB3aGVuIF9f
VVNFX01JTkdXX0FOU0lfU1RESU8gIT0gMC4KCmh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0xNDM3NzMKLS0tCiBTb3VyY2UvV1RGL0NoYW5nZUxvZyAgICAgICAgICB8IDI0
ICsrKysrKysrKysrKysrKysrKysrKysrKwogU291cmNlL1dURi93dGYvQXNzZXJ0aW9ucy5jcHAg
fCAxMSArKysrKysrKysrLQogU291cmNlL1dURi93dGYvQXNzZXJ0aW9ucy5oICAgfCAgNCArKy0t
CiAzIGZpbGVzIGNoYW5nZWQsIDM2IGluc2VydGlvbnMoKyksIDMgZGVsZXRpb25zKC0pCgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dURi9DaGFuZ2VMb2cgYi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwppbmRl
eCA4MGI4OTFlLi4xMTRlZWFjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV1RGL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI5IEBACiAyMDE1LTA0LTE1ICDQoNGD
0YHQu9Cw0L0g0JjQttCx0YPQu9Cw0YLQvtCyICA8bHJuMTk4NkBnbWFpbC5jb20+CiAKKyAgICAg
ICAgQ2hhbmdlIHByaW50ZiBmb3JtYXQgYXR0cmlidXRlIHRvIGdudV9wcmludGYsIE1pbkdXIGNv
bXBhdGliaWxpdHkKKworICAgICAgICAicHJpbnRmIiBtZWFucyAiZ251X3ByaW50ZiIgd2hlbiBj
b21waWxpbmcgZm9yIG5vbi1XaW5kb3dzIGFuZCBtZWFucworICAgICAgICAibXNfcHJpbnRmIiB3
aGVuIGNvbXBpbGluZyBmb3IgV2luZG93cy4gVGhlIGNvZGUsIGhvd2V2ZXIsIGRvZXMgc2VlbXMg
dG8gYmUKKyAgICAgICAgYXNzdW1pbmcgZ251X3ByaW50ZiAoanVkZ2luZyBieSB0aGUgdXNlIG9m
ICV6IGFuZCAlbCkuCisKKyAgICAgICAgRml4IHRoaXMgYnkgZXhwbGljaXRseSBzcGVjaWZ5aW5n
IGdudV9wcmludGYgZm9ybWF0IHN0eWxlLgorICAgICAgICBUbyBlbnN1cmUgdGhhdCBnbnUtY29t
cGF0aWJsZSBwcmludGYgaW1wbGVtZW50YXRpb24gaXMgdXNlZCwgY29tcGlsZQorICAgICAgICB3
aXRoIC1EX19VU0VfTUlOR1dfQU5TSV9TVERJTz0xLCBpdCB3aWxsIGF1dG9tYWdpY2FsbHkgdHVy
biBhbGwgKnByaW50ZigpCisgICAgICAgIGludm9jYXRpb25zIGludG8gX19taW5nd18qcHJpbnRm
KCksIHdoaWNoIGFyZSBnbnUtY29tcGF0aWJsZS4KKworICAgICAgICBPbmx5IG9uZSBmdW5jdGlv
biB0aGF0IHdvbid0IGJlIHR1cm5lZCBpcyBfdnNucHJpbnRmKCkuIElmZGVmIGl0cyB1c2UgYW5k
CisgICAgICAgIGNhbGwgdnNucHJpbnRmKCkgaW5zdGVhZCB3aGVuIF9fVVNFX01JTkdXX0FOU0lf
U1RESU8gIT0gMC4KKworICAgICAgICBbVzMyXSBNYW55IHdhcm5pbmdzIGFib3V0IHByaW50ZiBm
b3JtYXQgYWxsIG92ZXIgdGhlIGNvZGUgd2hlbiBidWlsZGluZyB3aXRoIE1pbkdXCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNDM3NzMKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHd0Zi9Bc3NlcnRpb25z
LmNwcDoKKyAgICAgICAgKiB3dGYvQXNzZXJ0aW9ucy5oOgorCisyMDE1LTA0LTE1ICDQoNGD0YHQ
u9Cw0L0g0JjQttCx0YPQu9Cw0YLQvtCyICA8bHJuMTk4NkBnbWFpbC5jb20+CisKICAgICAgICAg
Rml4IGRlbGV0ZU9iamVjdCBwcm90b3R5cHRlLCBmaXggaGVhZGVyIGNhc2UKIAogICAgICAgICBB
cHBhcmVudGx5LCA8VD4gaXMgdW5uZWVkZWQgaGVyZToKZGlmZiAtLWdpdCBhL1NvdXJjZS9XVEYv
d3RmL0Fzc2VydGlvbnMuY3BwIGIvU291cmNlL1dURi93dGYvQXNzZXJ0aW9ucy5jcHAKaW5kZXgg
YTM3MDMwMi4uZDg0Njc3NyAxMDA2NDQKLS0tIGEvU291cmNlL1dURi93dGYvQXNzZXJ0aW9ucy5j
cHAKKysrIGIvU291cmNlL1dURi93dGYvQXNzZXJ0aW9ucy5jcHAKQEAgLTExNiwxMiArMTE2LDIx
IEBAIHN0YXRpYyB2b2lkIHZwcmludGZfc3RkZXJyX2NvbW1vbihjb25zdCBjaGFyKiBmb3JtYXQs
IHZhX2xpc3QgYXJncykKICAgICAgICAgc2l6ZV90IHNpemUgPSAxMDI0OwogCiAgICAgICAgIGRv
IHsKKyAgICAgICAgICAgIGludCBwcmludGVkOwogICAgICAgICAgICAgY2hhciogYnVmZmVyID0g
KGNoYXIqKW1hbGxvYyhzaXplKTsKIAogICAgICAgICAgICAgaWYgKGJ1ZmZlciA9PSBOVUxMKQog
ICAgICAgICAgICAgICAgIGJyZWFrOwogCi0gICAgICAgICAgICBpZiAoX3ZzbnByaW50ZihidWZm
ZXIsIHNpemUsIGZvcm1hdCwgYXJncykgIT0gLTEpIHsKKyNpZiBkZWZpbmVkKF9fVVNFX01JTkdX
X0FOU0lfU1RESU8pICYmIF9fVVNFX01JTkdXX0FOU0lfU1RESU8gIT0gMAorICAgICAgICAgICAg
LyogdnNucHJpbnRmIGlzIGEgbWFjcm8gZm9yIF9fbWluZ3dfdnNucHJpbnRmICovCisgICAgICAg
ICAgICBwcmludGVkID0gdnNucHJpbnRmKGJ1ZmZlciwgc2l6ZSwgZm9ybWF0LCBhcmdzKTsKKyNl
bHNlCisgICAgICAgICAgICAvKiBfdnNucHJpbnRmIGlzIGFsd2F5cyBfdnNucHJpbnRmIGZyb20g
TVMgQ1JUICovCisgICAgICAgICAgICBwcmludGVkID0gX3ZzbnByaW50ZihidWZmZXIsIHNpemUs
IGZvcm1hdCwgYXJncyk7CisjZW5kaWYKKworICAgICAgICAgICAgaWYgKHByaW50ZWQgIT0gLTEp
IHsKICNpZiBPUyhXSU5DRSkKICAgICAgICAgICAgICAgICAvLyBXaW5DRSBvbmx5IHN1cHBvcnRz
IHdpZGUgY2hhcnMKICAgICAgICAgICAgICAgICB3Y2hhcl90KiB3aWRlQnVmZmVyID0gKHdjaGFy
X3QqKW1hbGxvYyhzaXplICogc2l6ZW9mKHdjaGFyX3QpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
VEYvd3RmL0Fzc2VydGlvbnMuaCBiL1NvdXJjZS9XVEYvd3RmL0Fzc2VydGlvbnMuaAppbmRleCA0
ZDk2OGI4Li5jYjdjN2U0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV1RGL3d0Zi9Bc3NlcnRpb25zLmgK
KysrIGIvU291cmNlL1dURi93dGYvQXNzZXJ0aW9ucy5oCkBAIC04NSw4ICs4NSw4IEBACiAvKiBX
VEYgbG9nZ2luZyBmdW5jdGlvbnMgY2FuIHByb2Nlc3MgJUAgaW4gdGhlIGZvcm1hdCBzdHJpbmcg
dG8gbG9nIGEgTlNPYmplY3QqIGJ1dCB0aGUgcHJpbnRmIGZvcm1hdCBhdHRyaWJ1dGUKICAgIGVt
aXRzIGEgd2FybmluZyB3aGVuICVAIGlzIHVzZWQgaW4gdGhlIGZvcm1hdCBzdHJpbmcuICBVbnRp
bCA8cmRhcjovL3Byb2JsZW0vNTE5NTQzNz4gaXMgcmVzb2x2ZWQgd2UgY2FuJ3QgaW5jbHVkZQog
ICAgdGhlIGF0dHJpYnV0ZSB3aGVuIGJlaW5nIHVzZWQgZnJvbSBPYmplY3RpdmUtQyBjb2RlIGlu
IGNhc2UgaXQgZGVjaWRlcyB0byB1c2UgJUAuICovCi0jaWYgQ09NUElMRVIoR0NDKSAmJiAhZGVm
aW5lZChfX09CSkNfXykKLSNkZWZpbmUgV1RGX0FUVFJJQlVURV9QUklOVEYoZm9ybWF0U3RyaW5n
QXJndW1lbnQsIGV4dHJhQXJndW1lbnRzKSBfX2F0dHJpYnV0ZV9fKChfX2Zvcm1hdF9fKHByaW50
ZiwgZm9ybWF0U3RyaW5nQXJndW1lbnQsIGV4dHJhQXJndW1lbnRzKSkpCisjaWYgQ09NUElMRVIo
R0NDKSAmJiAhZGVmaW5lZChfX09CSkNfXykgJiYgKCFPUyhXSU5ET1dTKSB8fCAoZGVmaW5lZChf
X1VTRV9NSU5HV19BTlNJX1NURElPKSAmJiBfX1VTRV9NSU5HV19BTlNJX1NURElPICE9IDApKQor
I2RlZmluZSBXVEZfQVRUUklCVVRFX1BSSU5URihmb3JtYXRTdHJpbmdBcmd1bWVudCwgZXh0cmFB
cmd1bWVudHMpIF9fYXR0cmlidXRlX18oKF9fZm9ybWF0X18oZ251X3ByaW50ZiwgZm9ybWF0U3Ry
aW5nQXJndW1lbnQsIGV4dHJhQXJndW1lbnRzKSkpCiAjZWxzZQogI2RlZmluZSBXVEZfQVRUUklC
VVRFX1BSSU5URihmb3JtYXRTdHJpbmdBcmd1bWVudCwgZXh0cmFBcmd1bWVudHMpCiAjZW5kaWYK
LS0gCjEuOC41LjM=
</data>
<flag name="review"
          id="275614"
          type_id="1"
          status="-"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>