<?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>166676</bug_id>
          
          <creation_ts>2017-01-04 00:29:35 -0800</creation_ts>
          <short_desc>Limit thread name appropriately</short_desc>
          <delta_ts>2017-01-04 20:44:13 -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>Web Template Framework</component>
          <version>WebKit 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>
          <dependson>166663</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Yusuke Suzuki">ysuzuki</reporter>
          <assigned_to name="Yusuke Suzuki">ysuzuki</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cdumez</cc>
    
    <cc>cgarcia</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>wenson_hsieh</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1263714</commentid>
    <comment_count>0</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-01-04 00:29:35 -0800</bug_when>
    <thetext>...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263730</commentid>
    <comment_count>1</comment_count>
      <attachid>298003</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-01-04 01:41:57 -0800</bug_when>
    <thetext>Created attachment 298003
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263789</commentid>
    <comment_count>2</comment_count>
      <attachid>298003</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2017-01-04 09:48:11 -0800</bug_when>
    <thetext>Comment on attachment 298003
Patch

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

&gt; Source/WTF/wtf/Threading.h:80
&gt; +const char* retrieveThreadName(const char* threadName);

I think a name like normalizeThreadName() or sanatizeThreadName() would be better.

&gt; Source/WTF/wtf/text/StringView.h:27
&gt;  #ifndef StringView_h
&gt;  #define StringView_h

Could #pragma once this while you are here.

&gt; Source/WTF/wtf/text/StringView.h:119
&gt; +    StringView left(unsigned len) const { return substring(0, len); }
&gt; +    StringView right(unsigned len) const { return substring(length() - len, len); }

This could use an API test.

&gt; Source/WTF/wtf/text/StringView.h:127
&gt; +    size_t reverseFind(UChar, unsigned index = UINT_MAX) const;

Same here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263952</commentid>
    <comment_count>3</comment_count>
      <attachid>298003</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-01-04 17:55:27 -0800</bug_when>
    <thetext>Comment on attachment 298003
Patch

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

Thanks :)

&gt;&gt; Source/WTF/wtf/Threading.h:80
&gt;&gt; +const char* retrieveThreadName(const char* threadName);
&gt; 
&gt; I think a name like normalizeThreadName() or sanatizeThreadName() would be better.

Sounds nice. Changed to use normalizeThreadName.

&gt;&gt; Source/WTF/wtf/text/StringView.h:27
&gt;&gt;  #define StringView_h
&gt; 
&gt; Could #pragma once this while you are here.

Yeah, fixed.

&gt;&gt; Source/WTF/wtf/text/StringView.h:119
&gt;&gt; +    StringView right(unsigned len) const { return substring(length() - len, len); }
&gt; 
&gt; This could use an API test.

Yup, added.

&gt;&gt; Source/WTF/wtf/text/StringView.h:127
&gt;&gt; +    size_t reverseFind(UChar, unsigned index = UINT_MAX) const;
&gt; 
&gt; Same here.

Added.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263968</commentid>
    <comment_count>4</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-01-04 18:54:03 -0800</bug_when>
    <thetext>Committed r210313: &lt;http://trac.webkit.org/changeset/210313&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263981</commentid>
    <comment_count>5</comment_count>
    <who name="Wenson Hsieh">wenson_hsieh</who>
    <bug_when>2017-01-04 19:57:22 -0800</bug_when>
    <thetext>I think this is causing some build failures on the bots:

/Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/include/wtf/text/StringView.h:51:7: error: redefinition of &apos;StringView&apos;
/Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/include/wtf/text/StringView.h:188:13: error: redefinition of &apos;operator==&apos;
/Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/include/wtf/text/StringView.h:189:13: error: redefinition of &apos;operator==&apos;
/Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/include/wtf/text/StringView.h:190:13: error: redefinition of &apos;operator==&apos;
/Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/include/wtf/text/StringView.h:191:13: error: redefinition of &apos;operator==&apos;
/Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/include/wtf/text/StringView.h:192:13: error: redefinition of &apos;operator==&apos;
/Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/include/wtf/text/StringView.h:194:13: error: redefinition of &apos;operator!=&apos;
/Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/include/wtf/text/StringView.h:195:13: error: redefinition of &apos;operator!=&apos;
/Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/include/wtf/text/StringView.h:196:13: error: redefinition of &apos;operator!=&apos;
/Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/include/wtf/text/StringView.h:197:13: error: redefinition of &apos;operator!=&apos;
/Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/include/wtf/text/StringView.h:198:13: error: redefinition of &apos;operator!=&apos;
/Volumes/Data/slave/elcapitan-debug/build/Source/WTF/wtf/text/StringView.h:207:20: error: redefinition of &apos;StringView&apos;
/Volumes/Data/slave/elcapitan-debug/build/Source/WTF/wtf/text/StringView.h:213:20: error: redefinition of &apos;~StringView&apos;
/Volumes/Data/slave/elcapitan-debug/build/Source/WTF/wtf/text/StringView.h:218:20: error: redefinition of &apos;StringView&apos;
/Volumes/Data/slave/elcapitan-debug/build/Source/WTF/wtf/text/StringView.h:231:20: error: redefinition of &apos;StringView&apos;
/Volumes/Data/slave/elcapitan-debug/build/Source/WTF/wtf/text/StringView.h:241:32: error: redefinition of &apos;operator=&apos;
/Volumes/Data/slave/elcapitan-debug/build/Source/WTF/wtf/text/StringView.h:257:32: error: redefinition of &apos;operator=&apos;
/Volumes/Data/slave/elcapitan-debug/build/Source/WTF/wtf/text/StringView.h:271:25: error: redefinition of &apos;initialize&apos;
/Volumes/Data/slave/elcapitan-debug/build/Source/WTF/wtf/text/StringView.h:278:25: error: redefinition of &apos;initialize&apos;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263982</commentid>
    <comment_count>6</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-01-04 20:05:43 -0800</bug_when>
    <thetext>Committed r210314: &lt;http://trac.webkit.org/changeset/210314&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263984</commentid>
    <comment_count>7</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-01-04 20:08:43 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; I think this is causing some build failures on the bots:
&gt; 
&gt; /Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/
&gt; include/wtf/text/StringView.h:51:7: error: redefinition of &apos;StringView&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/
&gt; include/wtf/text/StringView.h:188:13: error: redefinition of &apos;operator==&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/
&gt; include/wtf/text/StringView.h:189:13: error: redefinition of &apos;operator==&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/
&gt; include/wtf/text/StringView.h:190:13: error: redefinition of &apos;operator==&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/
&gt; include/wtf/text/StringView.h:191:13: error: redefinition of &apos;operator==&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/
&gt; include/wtf/text/StringView.h:192:13: error: redefinition of &apos;operator==&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/
&gt; include/wtf/text/StringView.h:194:13: error: redefinition of &apos;operator!=&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/
&gt; include/wtf/text/StringView.h:195:13: error: redefinition of &apos;operator!=&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/
&gt; include/wtf/text/StringView.h:196:13: error: redefinition of &apos;operator!=&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/
&gt; include/wtf/text/StringView.h:197:13: error: redefinition of &apos;operator!=&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/WebKitBuild/Debug/usr/local/
&gt; include/wtf/text/StringView.h:198:13: error: redefinition of &apos;operator!=&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/Source/WTF/wtf/text/StringView.h:
&gt; 207:20: error: redefinition of &apos;StringView&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/Source/WTF/wtf/text/StringView.h:
&gt; 213:20: error: redefinition of &apos;~StringView&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/Source/WTF/wtf/text/StringView.h:
&gt; 218:20: error: redefinition of &apos;StringView&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/Source/WTF/wtf/text/StringView.h:
&gt; 231:20: error: redefinition of &apos;StringView&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/Source/WTF/wtf/text/StringView.h:
&gt; 241:32: error: redefinition of &apos;operator=&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/Source/WTF/wtf/text/StringView.h:
&gt; 257:32: error: redefinition of &apos;operator=&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/Source/WTF/wtf/text/StringView.h:
&gt; 271:25: error: redefinition of &apos;initialize&apos;
&gt; /Volumes/Data/slave/elcapitan-debug/build/Source/WTF/wtf/text/StringView.h:
&gt; 278:25: error: redefinition of &apos;initialize&apos;

Thanks! I&apos;ve just landed the build fix :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1264000</commentid>
    <comment_count>8</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-01-04 20:44:13 -0800</bug_when>
    <thetext>Committed r210317: &lt;http://trac.webkit.org/changeset/210317&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>298003</attachid>
            <date>2017-01-04 01:41:57 -0800</date>
            <delta_ts>2017-01-04 09:48:11 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-166676-20170104184031.patch</filename>
            <type>text/plain</type>
            <size>9129</size>
            <attacher name="Yusuke Suzuki">ysuzuki</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjEwMjcyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGViYWRhNjQ0NThkNzllNjZhMzk4ZjIz
YWRjZTY5ZTA3ODg1MDA3N2QuLmQ3OWE1ZTk2YmJiYmE3OWFkYjNiNGM4MWYwNDgxMzIyY2M5NTFh
NjYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsMzYgQEAKKzIwMTctMDEtMDQgIFl1c3VrZSBTdXp1a2kgIDx1dGF0
YW5lLnRlYUBnbWFpbC5jb20+CisKKyAgICAgICAgTGltaXQgdGhyZWFkIG5hbWUgYXBwcm9wcmlh
dGVseQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTY2
Njc2CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW4g
c29tZSBwbGF0Zm9ybSwgdGhlIG1heCBsZW5ndGggb2YgdGhyZWFkIG5hbWVzIGFyZSBsaW1pdGVk
LgorICAgICAgICBGb3IgZXhhbXBsZSwgdGhlIG51bWJlciBvZiB0aGUgbWF4IGxlbmd0aCBpcyAz
MiBpbiBXaW5kb3dzIGFuZAorICAgICAgICAxNiBpbiBMaW51eC4gQnV0IHRoZSBzcGVjaWZpZWQg
dGhyZWFkIG5hbWUgaXMgdHlwaWNhbGx5IGxvbmcKKyAgICAgICAgaW4gV2ViS2l0IGxpa2UgImNv
bS5hcHBsZS5Db3JlSVBDLlJlY2VpdmVRdWV1ZSIKKworICAgICAgICBXZSBwb3J0IHRoZSBsb2dp
YyBzdWJzdHJpbmcgdGhlIHRocmVhZCBuYW1lIGluCisgICAgICAgIGdlbmVyaWMvV29ya1F1ZXVl
R2VuZXJpYy5jcHAgdG8gVGhyZWFkaW5nLiBJdCByZXRyaWV2ZXMgdGhlIG5hbWUKKyAgICAgICAg
IlJlZWl2ZVF1ZXVlIiBmcm9tICJjb20uYXBwbGUuQ29yZUlQQy5SZWNlaXZlUXVldWUiLiBBbmQg
YXBwbHkKKyAgICAgICAgdGhlIGFwcHJvcHJpYXRlIHRoZSB0aHJlYWQgbmFtZSBsaW1pdCBhbmQg
dXNlIGl0IG9uIExpbnV4IGFuZAorICAgICAgICBXaW5kb3dzIGVudmlyb25tZW50LgorCisgICAg
ICAgICogd3RmL1RocmVhZGluZy5jcHA6CisgICAgICAgIChXVEY6OnJldHJpZXZlVGhyZWFkTmFt
ZSk6CisgICAgICAgIChXVEY6OmNyZWF0ZVRocmVhZCk6CisgICAgICAgICogd3RmL1RocmVhZGlu
Zy5oOgorICAgICAgICAqIHd0Zi9UaHJlYWRpbmdQdGhyZWFkcy5jcHA6CisgICAgICAgIChXVEY6
OmluaXRpYWxpemVDdXJyZW50VGhyZWFkSW50ZXJuYWwpOgorICAgICAgICAqIHd0Zi9UaHJlYWRp
bmdXaW4uY3BwOgorICAgICAgICAoV1RGOjppbml0aWFsaXplQ3VycmVudFRocmVhZEludGVybmFs
KToKKyAgICAgICAgKiB3dGYvZ2VuZXJpYy9Xb3JrUXVldWVHZW5lcmljLmNwcDoKKyAgICAgICAg
KFdvcmtRdWV1ZTo6cGxhdGZvcm1Jbml0aWFsaXplKToKKyAgICAgICAgKiB3dGYvdGV4dC9TdHJp
bmdWaWV3Lmg6CisgICAgICAgIChXVEY6OlN0cmluZ1ZpZXc6OmxlZnQpOgorICAgICAgICAoV1RG
OjpTdHJpbmdWaWV3OjpyaWdodCk6CisgICAgICAgIChXVEY6OlN0cmluZ1ZpZXc6OnJldmVyc2VG
aW5kKToKKwogMjAxNy0wMS0wMyAgWXVzdWtlIFN1enVraSAgPHV0YXRhbmUudGVhQGdtYWlsLmNv
bT4KIAogICAgICAgICBVc2UgcHJjdGwgdG8gbmFtZSB0aHJlYWQgb24gTGludXgKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XVEYvd3RmL1RocmVhZGluZy5jcHAgYi9Tb3VyY2UvV1RGL3d0Zi9UaHJlYWRp
bmcuY3BwCmluZGV4IDJjYzU5NzkyYjkzNGY5MDE4OTIyYTI3ODg4OGExYjM2MTVmZjFmNmQuLjU0
NmU4Yjc5ZmI2MDg3MjBjMzBhNDEzMTYzNWM1OTJmOTFhZTEzMjkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XVEYvd3RmL1RocmVhZGluZy5jcHAKKysrIGIvU291cmNlL1dURi93dGYvVGhyZWFkaW5nLmNw
cApAQCAtMjksNiArMjksNyBAQAogI2luY2x1ZGUgPGFsZ29yaXRobT4KICNpbmNsdWRlIDxjbWF0
aD4KICNpbmNsdWRlIDxjc3RyaW5nPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ1ZpZXcuaD4K
IAogbmFtZXNwYWNlIFdURiB7CiAKQEAgLTQwLDYgKzQxLDMzIEBAIHN0cnVjdCBOZXdUaHJlYWRD
b250ZXh0IHsKICAgICBNdXRleCBjcmVhdGlvbk11dGV4OwogfTsKIAorY29uc3QgY2hhciogcmV0
cmlldmVUaHJlYWROYW1lKGNvbnN0IGNoYXIqIHRocmVhZE5hbWUpCit7CisjaWYgSEFWRShQVEhS
RUFEX1NFVE5BTUVfTlApCisgICAgcmV0dXJuIHRocmVhZE5hbWU7CisjZWxzZQorICAgIC8vIFRo
aXMgbmFtZSBjYW4gYmUgY29tLmFwcGxlLldlYktpdC5Qcm9jZXNzTGF1bmNoZXIgb3IgY29tLmFw
cGxlLkNvcmVJUEMuUmVjZWl2ZVF1ZXVlLgorICAgIC8vIFdlIGFyZSB1c2luZyB0aG9zZSBuYW1l
cyBmb3IgdGhlIHRocmVhZCBuYW1lLCBidXQgYm90aCBhcmUgbG9uZ2VyIHRoYW4gdGhlIGxpbWl0
IG9mCisgICAgLy8gdGhlIHBsYXRmb3JtIHRocmVhZCBuYW1lIGxlbmd0aCwgMzIgZm9yIFdpbmRv
d3MgYW5kIDE2IGZvciBMaW51eC4KKyAgICBTdHJpbmdWaWV3IHJlc3VsdCh0aHJlYWROYW1lKTsK
KyAgICBzaXplX3Qgc2l6ZSA9IHJlc3VsdC5yZXZlcnNlRmluZCgnLicpOworICAgIGlmIChzaXpl
ICE9IG5vdEZvdW5kKQorICAgICAgICByZXN1bHQgPSByZXN1bHQuc3Vic3RyaW5nKHNpemUgKyAx
KTsKKworI2lmIE9TKFdJTkRPV1MpCisgICAgY29uc3RleHByIGNvbnN0IHNpemVfdCBrVmlzdWFs
U3R1ZGlvVGhyZWFkTmFtZUxpbWl0ID0gMzIgLSAxOworICAgIGlmIChyZXN1bHQubGVuZ3RoKCkg
PiBrVmlzdWFsU3R1ZGlvVGhyZWFkTmFtZUxpbWl0KQorICAgICAgICByZXN1bHQgPSByZXN1bHQu
cmlnaHQoa1Zpc3VhbFN0dWRpb1RocmVhZE5hbWVMaW1pdCk7CisjZWxpZiBPUyhMSU5VWCkKKyAg
ICBjb25zdGV4cHIgY29uc3Qgc2l6ZV90IGtMaW51eFRocmVhZE5hbWVMaW1pdCA9IDE2IC0gMTsK
KyAgICBpZiAocmVzdWx0Lmxlbmd0aCgpID4ga0xpbnV4VGhyZWFkTmFtZUxpbWl0KQorICAgICAg
ICByZXN1bHQgPSByZXN1bHQucmlnaHQoa0xpbnV4VGhyZWFkTmFtZUxpbWl0KTsKKyNlbmRpZgor
ICAgIEFTU0VSVChyZXN1bHQuY2hhcmFjdGVyczgoKVtyZXN1bHQubGVuZ3RoKCldID09ICdcMCcp
OworICAgIHJldHVybiByZWludGVycHJldF9jYXN0PGNvbnN0IGNoYXIqPihyZXN1bHQuY2hhcmFj
dGVyczgoKSk7CisjZW5kaWYKK30KKwogc3RhdGljIHZvaWQgdGhyZWFkRW50cnlQb2ludCh2b2lk
KiBjb250ZXh0RGF0YSkKIHsKICAgICBOZXdUaHJlYWRDb250ZXh0KiBjb250ZXh0ID0gc3RhdGlj
X2Nhc3Q8TmV3VGhyZWFkQ29udGV4dCo+KGNvbnRleHREYXRhKTsKQEAgLTYyLDEzICs5MCw2IEBA
IHN0YXRpYyB2b2lkIHRocmVhZEVudHJ5UG9pbnQodm9pZCogY29udGV4dERhdGEpCiAKIFRocmVh
ZElkZW50aWZpZXIgY3JlYXRlVGhyZWFkKGNvbnN0IGNoYXIqIG5hbWUsIHN0ZDo6ZnVuY3Rpb248
dm9pZCgpPiBlbnRyeVBvaW50KQogewotICAgIC8vIFZpc3VhbCBTdHVkaW8gaGFzIGEgMzEtY2hh
cmFjdGVyIGxpbWl0IG9uIHRocmVhZCBuYW1lcy4gTG9uZ2VyIG5hbWVzIHdpbGwKLSAgICAvLyBi
ZSB0cnVuY2F0ZWQgc2lsZW50bHksIGJ1dCB3ZSdkIGxpa2UgY2FsbGVycyB0byBrbm93IGFib3V0
IHRoZSBsaW1pdC4KLSNpZiAhTE9HX0RJU0FCTEVEICYmIFBMQVRGT1JNKFdJTikKLSAgICBpZiAo
bmFtZSAmJiBzdHJsZW4obmFtZSkgPiAzMSkKLSAgICAgICAgTE9HX0VSUk9SKCJUaHJlYWQgbmFt
ZSBcIiVzXCIgaXMgbG9uZ2VyIHRoYW4gMzEgY2hhcmFjdGVycyBhbmQgd2lsbCBiZSB0cnVuY2F0
ZWQgYnkgVmlzdWFsIFN0dWRpbyIsIG5hbWUpOwotI2VuZGlmCi0KICAgICBOZXdUaHJlYWRDb250
ZXh0KiBjb250ZXh0ID0gbmV3IE5ld1RocmVhZENvbnRleHQgeyBuYW1lLCBXVEZNb3ZlKGVudHJ5
UG9pbnQpLCB7IH0gfTsKIAogICAgIC8vIFByZXZlbnQgdGhlIHRocmVhZCBib2R5IGZyb20gZXhl
Y3V0aW5nIHVudGlsIHdlJ3ZlIGVzdGFibGlzaGVkIHRoZSB0aHJlYWQgaWRlbnRpZmllci4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XVEYvd3RmL1RocmVhZGluZy5oIGIvU291cmNlL1dURi93dGYvVGhy
ZWFkaW5nLmgKaW5kZXggMzFiMzJjZWY0YTAzMDVhYzg0MWQ2YWViMDY0NzRhNDgyMDc2ODk5My4u
MGM5ZWQ4NDU4MzliMTkzMzA3YjA4ZDVhOTI4ZWQzYTFmNmVlZmRmMSAxMDA2NDQKLS0tIGEvU291
cmNlL1dURi93dGYvVGhyZWFkaW5nLmgKKysrIGIvU291cmNlL1dURi93dGYvVGhyZWFkaW5nLmgK
QEAgLTc3LDYgKzc3LDggQEAgVGhyZWFkSWRlbnRpZmllciBjcmVhdGVUaHJlYWRJbnRlcm5hbChU
aHJlYWRGdW5jdGlvbiwgdm9pZCosIGNvbnN0IGNoYXIqIHRocmVhZE4KIC8vIEhlbHBmdWwgZm9y
IHBsYXRmb3JtcyB3aGVyZSB0aGUgdGhyZWFkIG5hbWUgbXVzdCBiZSBzZXQgZnJvbSB3aXRoaW4g
dGhlIHRocmVhZC4KIHZvaWQgaW5pdGlhbGl6ZUN1cnJlbnRUaHJlYWRJbnRlcm5hbChjb25zdCBj
aGFyKiB0aHJlYWROYW1lKTsKIAorY29uc3QgY2hhciogcmV0cmlldmVUaHJlYWROYW1lKGNvbnN0
IGNoYXIqIHRocmVhZE5hbWUpOworCiB9IC8vIG5hbWVzcGFjZSBXVEYKIAogdXNpbmcgV1RGOjpU
aHJlYWRJZGVudGlmaWVyOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93dGYvVGhyZWFkaW5nUHRo
cmVhZHMuY3BwIGIvU291cmNlL1dURi93dGYvVGhyZWFkaW5nUHRocmVhZHMuY3BwCmluZGV4IGJl
MWQ4MjY2MTM5YWQyNDI4MGVlYWE3OTVhY2U1ZWQyNDhiZmM1YTEuLjViMDRhNDYxN2I2ZTc1NGZl
NjY1NzJjZGEzZGExMmMxNDVhOTVlZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvd3RmL1RocmVh
ZGluZ1B0aHJlYWRzLmNwcAorKysgYi9Tb3VyY2UvV1RGL3d0Zi9UaHJlYWRpbmdQdGhyZWFkcy5j
cHAKQEAgLTE5NSw5ICsxOTUsOSBAQCBUaHJlYWRJZGVudGlmaWVyIGNyZWF0ZVRocmVhZEludGVy
bmFsKFRocmVhZEZ1bmN0aW9uIGVudHJ5UG9pbnQsIHZvaWQqIGRhdGEsIGNvbgogdm9pZCBpbml0
aWFsaXplQ3VycmVudFRocmVhZEludGVybmFsKGNvbnN0IGNoYXIqIHRocmVhZE5hbWUpCiB7CiAj
aWYgSEFWRShQVEhSRUFEX1NFVE5BTUVfTlApCi0gICAgcHRocmVhZF9zZXRuYW1lX25wKHRocmVh
ZE5hbWUpOworICAgIHB0aHJlYWRfc2V0bmFtZV9ucChyZXRyaWV2ZVRocmVhZE5hbWUodGhyZWFk
TmFtZSkpOwogI2VsaWYgT1MoTElOVVgpCi0gICAgcHJjdGwoUFJfU0VUX05BTUUsIHRocmVhZE5h
bWUpOworICAgIHByY3RsKFBSX1NFVF9OQU1FLCByZXRyaWV2ZVRocmVhZE5hbWUodGhyZWFkTmFt
ZSkpOwogI2Vsc2UKICAgICBVTlVTRURfUEFSQU0odGhyZWFkTmFtZSk7CiAjZW5kaWYKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XVEYvd3RmL1RocmVhZGluZ1dpbi5jcHAgYi9Tb3VyY2UvV1RGL3d0Zi9U
aHJlYWRpbmdXaW4uY3BwCmluZGV4IDA2ODY0NmRhNDQ2YzZmM2JhMDI1OWI4MWI0N2I4OTgyMTU4
N2Q5MzkuLjFkNWNkZDAyMzlhNjFiMjc4YTFhMDg2MzY3OTEwZWFiMzI2NTNhNTkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XVEYvd3RmL1RocmVhZGluZ1dpbi5jcHAKKysrIGIvU291cmNlL1dURi93dGYv
VGhyZWFkaW5nV2luLmNwcApAQCAtMTI5LDcgKzEyOSw3IEBAIHZvaWQgaW5pdGlhbGl6ZUN1cnJl
bnRUaHJlYWRJbnRlcm5hbChjb25zdCBjaGFyKiBzelRocmVhZE5hbWUpCiAjZWxzZQogICAgIFRI
UkVBRE5BTUVfSU5GTyBpbmZvOwogICAgIGluZm8uZHdUeXBlID0gMHgxMDAwOwotICAgIGluZm8u
c3pOYW1lID0gc3pUaHJlYWROYW1lOworICAgIGluZm8uc3pOYW1lID0gcmV0cmlldmVUaHJlYWRO
YW1lKHN6VGhyZWFkTmFtZSk7CiAgICAgaW5mby5kd1RocmVhZElEID0gR2V0Q3VycmVudFRocmVh
ZElkKCk7CiAgICAgaW5mby5kd0ZsYWdzID0gMDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dURi93
dGYvZ2VuZXJpYy9Xb3JrUXVldWVHZW5lcmljLmNwcCBiL1NvdXJjZS9XVEYvd3RmL2dlbmVyaWMv
V29ya1F1ZXVlR2VuZXJpYy5jcHAKaW5kZXggNGVlYjMwMjA5MmMzY2UyNjdiNzIxNzA2ZDZlYjkz
MmE5ZGQ2Mjk0YS4uZjU5NGUyNDAxMTZkNGUwNDNkNGRjM2EzZjZjZjdjMDdkNGIyMzQ0MiAxMDA2
NDQKLS0tIGEvU291cmNlL1dURi93dGYvZ2VuZXJpYy9Xb3JrUXVldWVHZW5lcmljLmNwcAorKysg
Yi9Tb3VyY2UvV1RGL3d0Zi9nZW5lcmljL1dvcmtRdWV1ZUdlbmVyaWMuY3BwCkBAIC0zMiwyNCAr
MzIsMTAgQEAKIAogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCi1zdGF0aWMgY29u
c3Qgc2l6ZV90IGtWaXN1YWxTdHVkaW9UaHJlYWROYW1lTGltaXQgPSAzMTsKLQogdm9pZCBXb3Jr
UXVldWU6OnBsYXRmb3JtSW5pdGlhbGl6ZShjb25zdCBjaGFyKiBuYW1lLCBUeXBlLCBRT1MpCiB7
Ci0gICAgLy8gVGhpcyBuYW1lIGNhbiBiZSBjb20uYXBwbGUuV2ViS2l0LlByb2Nlc3NMYXVuY2hl
ciBvciBjb20uYXBwbGUuQ29yZUlQQy5SZWNlaXZlUXVldWUuCi0gICAgLy8gV2UgYXJlIHVzaW5n
IHRob3NlIG5hbWVzIGZvciB0aGUgdGhyZWFkIG5hbWUsIGJ1dCBib3RoIGFyZSBsb25nZXIgdGhh
biAzMSBjaGFyYWN0ZXJzLAotICAgIC8vIHdoaWNoIGlzIHRoZSBsaW1pdCBvZiBWaXN1YWwgU3R1
ZGlvIGZvciB0aHJlYWQgbmFtZXMuCi0gICAgLy8gV2hlbiBsb2cgaXMgZW5hYmxlZCBjcmVhdGVU
aHJlYWQoKSB3aWxsIGFzc2VydCBpbnN0ZWFkIG9mIHRydW5jYXRlIHRoZSBuYW1lLCBzbyB3ZSBu
ZWVkCi0gICAgLy8gdG8gbWFrZSBzdXJlIHdlIGRvbid0IHVzZSBhIG5hbWUgbG9uZ2VyIHRoYW4g
MzEgY2hhcmFjdGVycy4KLSAgICBTdHJpbmcgdGhyZWFkTmFtZShuYW1lKTsKLSAgICBzaXplX3Qg
c2l6ZSA9IHRocmVhZE5hbWUucmV2ZXJzZUZpbmQoJy4nKTsKLSAgICBpZiAoc2l6ZSAhPSBub3RG
b3VuZCkKLSAgICAgICAgdGhyZWFkTmFtZSA9IHRocmVhZE5hbWUuc3Vic3RyaW5nKHNpemUgKyAx
KTsKLSAgICBpZiAodGhyZWFkTmFtZS5sZW5ndGgoKSA+IGtWaXN1YWxTdHVkaW9UaHJlYWROYW1l
TGltaXQpCi0gICAgICAgIHRocmVhZE5hbWUgPSB0aHJlYWROYW1lLnJpZ2h0KGtWaXN1YWxTdHVk
aW9UaHJlYWROYW1lTGltaXQpOwotCiAgICAgTG9ja0hvbGRlciBsb2NrZXIobV9pbml0aWFsaXpl
UnVuTG9vcENvbmRpdGlvbk11dGV4KTsKLSAgICBtX3dvcmtRdWV1ZVRocmVhZCA9IGNyZWF0ZVRo
cmVhZCh0aHJlYWROYW1lLmFzY2lpKCkuZGF0YSgpLCBbdGhpc10geworICAgIG1fd29ya1F1ZXVl
VGhyZWFkID0gY3JlYXRlVGhyZWFkKG5hbWUsIFt0aGlzXSB7CiAgICAgICAgIHsKICAgICAgICAg
ICAgIExvY2tIb2xkZXIgbG9ja2VyKG1faW5pdGlhbGl6ZVJ1bkxvb3BDb25kaXRpb25NdXRleCk7
CiAgICAgICAgICAgICBtX3J1bkxvb3AgPSAmUnVuTG9vcDo6Y3VycmVudCgpOwpkaWZmIC0tZ2l0
IGEvU291cmNlL1dURi93dGYvdGV4dC9TdHJpbmdWaWV3LmggYi9Tb3VyY2UvV1RGL3d0Zi90ZXh0
L1N0cmluZ1ZpZXcuaAppbmRleCBhNjk0NWE1MDMyMDA4NmNlYjVkYTE2OTRmYjk1ODljODFjMzg4
YjU0Li4yY2MyNWNkMDIxMTIwMWM0MjYzZmVjZWIzNDljNzJkMjE4NjZhMDMyIDEwMDY0NAotLS0g
YS9Tb3VyY2UvV1RGL3d0Zi90ZXh0L1N0cmluZ1ZpZXcuaAorKysgYi9Tb3VyY2UvV1RGL3d0Zi90
ZXh0L1N0cmluZ1ZpZXcuaApAQCAtMjYsNiArMjYsNyBAQAogI2lmbmRlZiBTdHJpbmdWaWV3X2gK
ICNkZWZpbmUgU3RyaW5nVmlld19oCiAKKyNpbmNsdWRlIDxsaW1pdHMuaD4KICNpbmNsdWRlIDx1
bmljb2RlL3V0eXBlcy5oPgogI2luY2x1ZGUgPHd0Zi9Gb3J3YXJkLmg+CiAjaW5jbHVkZSA8d3Rm
L1JldGFpblB0ci5oPgpAQCAtMTE0LDYgKzExNSw4IEBAIGNsYXNzIFN0cmluZ1ZpZXcgewogICAg
IHZvaWQgZ2V0Q2hhcmFjdGVyc1dpdGhVcGNvbnZlcnQoVUNoYXIqKSBjb25zdDsKIAogICAgIFN0
cmluZ1ZpZXcgc3Vic3RyaW5nKHVuc2lnbmVkIHN0YXJ0LCB1bnNpZ25lZCBsZW5ndGggPSBzdGQ6
Om51bWVyaWNfbGltaXRzPHVuc2lnbmVkPjo6bWF4KCkpIGNvbnN0OworICAgIFN0cmluZ1ZpZXcg
bGVmdCh1bnNpZ25lZCBsZW4pIGNvbnN0IHsgcmV0dXJuIHN1YnN0cmluZygwLCBsZW4pOyB9Cisg
ICAgU3RyaW5nVmlldyByaWdodCh1bnNpZ25lZCBsZW4pIGNvbnN0IHsgcmV0dXJuIHN1YnN0cmlu
ZyhsZW5ndGgoKSAtIGxlbiwgbGVuKTsgfQogICAgIFdURl9FWFBPUlRfU1RSSU5HX0FQSSBWZWN0
b3I8U3RyaW5nVmlldz4gc3BsaXQoVUNoYXIpOwogCiAgICAgc2l6ZV90IGZpbmQoVUNoYXIsIHVu
c2lnbmVkIHN0YXJ0ID0gMCkgY29uc3Q7CkBAIC0xMjEsNiArMTI0LDggQEAgY2xhc3MgU3RyaW5n
VmlldyB7CiAKICAgICBXVEZfRVhQT1JUX1NUUklOR19BUEkgc2l6ZV90IGZpbmQoU3RyaW5nVmll
dywgdW5zaWduZWQgc3RhcnQpIGNvbnN0OwogCisgICAgc2l6ZV90IHJldmVyc2VGaW5kKFVDaGFy
LCB1bnNpZ25lZCBpbmRleCA9IFVJTlRfTUFYKSBjb25zdDsKKwogICAgIFdURl9FWFBPUlRfU1RS
SU5HX0FQSSBzaXplX3QgZmluZElnbm9yaW5nQVNDSUlDYXNlKGNvbnN0IFN0cmluZ1ZpZXcmKSBj
b25zdDsKICAgICBXVEZfRVhQT1JUX1NUUklOR19BUEkgc2l6ZV90IGZpbmRJZ25vcmluZ0FTQ0lJ
Q2FzZShjb25zdCBTdHJpbmdWaWV3JiwgdW5zaWduZWQgc3RhcnRPZmZzZXQpIGNvbnN0OwogCkBA
IC01MzEsNiArNTM2LDEzIEBAIGlubGluZSBzaXplX3QgU3RyaW5nVmlldzo6ZmluZChDaGFyYWN0
ZXJNYXRjaEZ1bmN0aW9uIG1hdGNoRnVuY3Rpb24sIHVuc2lnbmVkIHN0CiAgICAgcmV0dXJuIFdU
Rjo6ZmluZChjaGFyYWN0ZXJzMTYoKSwgbV9sZW5ndGgsIG1hdGNoRnVuY3Rpb24sIHN0YXJ0KTsK
IH0KIAoraW5saW5lIHNpemVfdCBTdHJpbmdWaWV3OjpyZXZlcnNlRmluZChVQ2hhciBjaGFyYWN0
ZXIsIHVuc2lnbmVkIGluZGV4KSBjb25zdAoreworICAgIGlmIChpczhCaXQoKSkKKyAgICAgICAg
cmV0dXJuIFdURjo6cmV2ZXJzZUZpbmQoY2hhcmFjdGVyczgoKSwgbV9sZW5ndGgsIGNoYXJhY3Rl
ciwgaW5kZXgpOworICAgIHJldHVybiBXVEY6OnJldmVyc2VGaW5kKGNoYXJhY3RlcnMxNigpLCBt
X2xlbmd0aCwgY2hhcmFjdGVyLCBpbmRleCk7Cit9CisKICNpZiAhQ0hFQ0tfU1RSSU5HVklFV19M
SUZFVElNRQogaW5saW5lIHZvaWQgU3RyaW5nVmlldzo6aW52YWxpZGF0ZShjb25zdCBTdHJpbmdJ
bXBsJikKIHsK
</data>
<flag name="review"
          id="320267"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>