<?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>57837</bug_id>
          
          <creation_ts>2011-04-05 06:09:14 -0700</creation_ts>
          <short_desc>Switch from Vector&lt;UChar&gt; to StringBuilder in accessibility/</short_desc>
          <delta_ts>2011-04-05 06:38:30 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Nikolas Zimmermann">zimmermann</reporter>
          <assigned_to name="Nikolas Zimmermann">zimmermann</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>kling</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>379491</commentid>
    <comment_count>0</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2011-04-05 06:09:14 -0700</bug_when>
    <thetext>As discussed in bug 56099, we should deploy StringBuilder usage in WebCore where possible.
This bug addresses Source/WebCore/accessibility.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>379492</commentid>
    <comment_count>1</comment_count>
      <attachid>88214</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2011-04-05 06:11:54 -0700</bug_when>
    <thetext>Created attachment 88214
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>379496</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-04-05 06:16:43 -0700</bug_when>
    <thetext>Attachment 88214 did not build on chromium:
Build output: http://queues.webkit.org/results/8334317</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>379500</commentid>
    <comment_count>3</comment_count>
      <attachid>88216</attachid>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2011-04-05 06:22:54 -0700</bug_when>
    <thetext>Created attachment 88216
Patch v2

Fix missing include, hard to notice on mac which does AllInOne builds.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>379506</commentid>
    <comment_count>4</comment_count>
      <attachid>88216</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2011-04-05 06:28:43 -0700</bug_when>
    <thetext>Comment on attachment 88216
Patch v2

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

&gt; Source/WebCore/accessibility/AccessibilityRenderObject.cpp:1185
&gt;          String nameFragment = accessibleNameForNode(idElement);

Seems like we don&apos;t need this local anymore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>379516</commentid>
    <comment_count>5</comment_count>
    <who name="Nikolas Zimmermann">zimmermann</who>
    <bug_when>2011-04-05 06:38:30 -0700</bug_when>
    <thetext>Fixed Andreas suggestion! Landed in r82934.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>88214</attachid>
            <date>2011-04-05 06:11:54 -0700</date>
            <delta_ts>2011-04-05 06:22:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>Cleanup2.diff</filename>
            <type>text/plain</type>
            <size>5198</size>
            <attacher name="Nikolas Zimmermann">zimmermann</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDgyOTMxKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMDQtMDUgIE5pa29sYXMg
WmltbWVybWFubiAgPG56aW1tZXJtYW5uQHJpbS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU3dpdGNoIGZyb20gVmVjdG9yPFVDaGFyPiB0byBT
dHJpbmdCdWlsZGVyIGluIGFjY2Vzc2liaWxpdHkvCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NzgzNworCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9B
Y2Nlc3NpYmlsaXR5T2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlP
YmplY3Q6Omxpc3RNYXJrZXJUZXh0Rm9yTm9kZUFuZFBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNv
cmU6OkFjY2Vzc2liaWxpdHlPYmplY3Q6OnN0cmluZ0ZvclZpc2libGVQb3NpdGlvblJhbmdlKToK
KyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdDo6YWNjZXNzaWJpbGl0
eURlc2NyaXB0aW9uRm9yRWxlbWVudHMpOgorCiAyMDExLTA0LTA1ICBBbGV4ZXkgUHJvc2t1cnlh
a292ICA8YXBAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgpJ
bmRleDogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxp
dHlPYmplY3QuY3BwCShyZXZpc2lvbiA4MTk2MCkKKysrIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2li
aWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUyLDYgKzUy
LDggQEAKICNpbmNsdWRlICJodG1sZWRpdGluZy5oIgogI2luY2x1ZGUgInZpc2libGVfdW5pdHMu
aCIKICNpbmNsdWRlIDx3dGYvU3RkTGliRXh0cmFzLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvU3Ry
aW5nQnVpbGRlci5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0NvbmNhdGVuYXRlLmg+CiAj
aW5jbHVkZSA8d3RmL3VuaWNvZGUvQ2hhcmFjdGVyTmFtZXMuaD4KIAogdXNpbmcgbmFtZXNwYWNl
IHN0ZDsKQEAgLTQzMCwxMiArNDMyLDcgQEAgU3RyaW5nIEFjY2Vzc2liaWxpdHlPYmplY3Q6Omxp
c3RNYXJrZXJUZQogICAgIC8vIEFwcGVuZCB0ZXh0LCBwbHVzIHRoZSBwZXJpb2QgdGhhdCBmb2xs
b3dzIHRoZSB0ZXh0LgogICAgIC8vIEZJWE1FOiBOb3QgYWxsIGxpc3QgbWFya2VyIHN0eWxlcyBh
cmUgZm9sbG93ZWQgYnkgYSBwZXJpb2QsIGJ1dCB0aGlzCiAgICAgLy8gc291bmRzIG11Y2ggYmV0
dGVyIHdoZW4gdGhlcmUgaXMgYSBzeW50aGVzaXplZCBwYXVzZSBiZWNhdXNlIG9mIGEgcGVyaW9k
LgotICAgIFZlY3RvcjxVQ2hhcj4gcmVzdWx0VmVjdG9yOwotICAgIHJlc3VsdFZlY3Rvci5hcHBl
bmQobWFya2VyVGV4dC5jaGFyYWN0ZXJzKCksIG1hcmtlclRleHQubGVuZ3RoKCkpOwotICAgIHJl
c3VsdFZlY3Rvci5hcHBlbmQoJy4nKTsKLSAgICByZXN1bHRWZWN0b3IuYXBwZW5kKCcgJyk7Ci0g
ICAgCi0gICAgcmV0dXJuIFN0cmluZzo6YWRvcHQocmVzdWx0VmVjdG9yKTsKKyAgICByZXR1cm4g
bWFrZVN0cmluZyhtYXJrZXJUZXh0LCAiLiAiKTsKIH0KICAgICAKIFN0cmluZyBBY2Nlc3NpYmls
aXR5T2JqZWN0OjpzdHJpbmdGb3JWaXNpYmxlUG9zaXRpb25SYW5nZShjb25zdCBWaXNpYmxlUG9z
aXRpb25SYW5nZSYgdmlzaWJsZVBvc2l0aW9uUmFuZ2UpIGNvbnN0CkBAIC00NDMsNyArNDQwLDcg
QEAgU3RyaW5nIEFjY2Vzc2liaWxpdHlPYmplY3Q6OnN0cmluZ0ZvclZpcwogICAgIGlmICh2aXNp
YmxlUG9zaXRpb25SYW5nZS5pc051bGwoKSkKICAgICAgICAgcmV0dXJuIFN0cmluZygpOwogCi0g
ICAgVmVjdG9yPFVDaGFyPiByZXN1bHRWZWN0b3I7CisgICAgU3RyaW5nQnVpbGRlciBidWlsZGVy
OwogICAgIFJlZlB0cjxSYW5nZT4gcmFuZ2UgPSBtYWtlUmFuZ2UodmlzaWJsZVBvc2l0aW9uUmFu
Z2Uuc3RhcnQsIHZpc2libGVQb3NpdGlvblJhbmdlLmVuZCk7CiAgICAgZm9yIChUZXh0SXRlcmF0
b3IgaXQocmFuZ2UuZ2V0KCkpOyAhaXQuYXRFbmQoKTsgaXQuYWR2YW5jZSgpKSB7CiAgICAgICAg
IC8vIG5vbi16ZXJvIGxlbmd0aCBtZWFucyB0ZXh0dWFsIG5vZGUsIHplcm8gbGVuZ3RoIG1lYW5z
IHJlcGxhY2VkIG5vZGUgKEFLQSAiYXR0YWNobWVudHMiIGluIEFYKQpAQCAtNDUxLDkgKzQ0OCw5
IEBAIFN0cmluZyBBY2Nlc3NpYmlsaXR5T2JqZWN0OjpzdHJpbmdGb3JWaXMKICAgICAgICAgICAg
IC8vIEFkZCBhIHRleHR1YWwgcmVwcmVzZW50YXRpb24gZm9yIGxpc3QgbWFya2VyIHRleHQKICAg
ICAgICAgICAgIFN0cmluZyBsaXN0TWFya2VyVGV4dCA9IGxpc3RNYXJrZXJUZXh0Rm9yTm9kZUFu
ZFBvc2l0aW9uKGl0Lm5vZGUoKSwgdmlzaWJsZVBvc2l0aW9uUmFuZ2Uuc3RhcnQpOwogICAgICAg
ICAgICAgaWYgKCFsaXN0TWFya2VyVGV4dC5pc0VtcHR5KCkpCi0gICAgICAgICAgICAgICAgcmVz
dWx0VmVjdG9yLmFwcGVuZChsaXN0TWFya2VyVGV4dC5jaGFyYWN0ZXJzKCksIGxpc3RNYXJrZXJU
ZXh0Lmxlbmd0aCgpKTsKLSAgICAgICAgICAgICAgICAKLSAgICAgICAgICAgIHJlc3VsdFZlY3Rv
ci5hcHBlbmQoaXQuY2hhcmFjdGVycygpLCBpdC5sZW5ndGgoKSk7CisgICAgICAgICAgICAgICAg
YnVpbGRlci5hcHBlbmQobGlzdE1hcmtlclRleHQpOworCisgICAgICAgICAgICBidWlsZGVyLmFw
cGVuZChpdC5jaGFyYWN0ZXJzKCksIGl0Lmxlbmd0aCgpKTsKICAgICAgICAgfSBlbHNlIHsKICAg
ICAgICAgICAgIC8vIGxvY2F0ZSB0aGUgbm9kZSBhbmQgc3RhcnRpbmcgb2Zmc2V0IGZvciB0aGlz
IHJlcGxhY2VkIHJhbmdlCiAgICAgICAgICAgICBpbnQgZXhjZXB0aW9uID0gMDsKQEAgLTQ2Miwx
MSArNDU5LDExIEBAIFN0cmluZyBBY2Nlc3NpYmlsaXR5T2JqZWN0OjpzdHJpbmdGb3JWaXMKICAg
ICAgICAgICAgIGludCBvZmZzZXQgPSBpdC5yYW5nZSgpLT5zdGFydE9mZnNldChleGNlcHRpb24p
OwogCiAgICAgICAgICAgICBpZiAocmVwbGFjZWROb2RlTmVlZHNDaGFyYWN0ZXIobm9kZS0+Y2hp
bGROb2RlKG9mZnNldCkpKQotICAgICAgICAgICAgICAgIHJlc3VsdFZlY3Rvci5hcHBlbmQob2Jq
ZWN0UmVwbGFjZW1lbnRDaGFyYWN0ZXIpOworICAgICAgICAgICAgICAgIGJ1aWxkZXIuYXBwZW5k
KG9iamVjdFJlcGxhY2VtZW50Q2hhcmFjdGVyKTsKICAgICAgICAgfQogICAgIH0KIAotICAgIHJl
dHVybiBTdHJpbmc6OmFkb3B0KHJlc3VsdFZlY3Rvcik7CisgICAgcmV0dXJuIGJ1aWxkZXIudG9T
dHJpbmcoKTsKIH0KIAogaW50IEFjY2Vzc2liaWxpdHlPYmplY3Q6Omxlbmd0aEZvclZpc2libGVQ
b3NpdGlvblJhbmdlKGNvbnN0IFZpc2libGVQb3NpdGlvblJhbmdlJiB2aXNpYmxlUG9zaXRpb25S
YW5nZSkgY29uc3QKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJp
bGl0eVJlbmRlck9iamVjdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmNwcAkocmV2aXNpb24gODE5NjApCisr
KyBTb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Qu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xMTc2LDI1ICsxMTc2LDI0IEBAIHN0YXRpYyBTdHJpbmcg
YWNjZXNzaWJsZU5hbWVGb3JOb2RlKE5vZGUKIAogU3RyaW5nIEFjY2Vzc2liaWxpdHlSZW5kZXJP
YmplY3Q6OmFjY2Vzc2liaWxpdHlEZXNjcmlwdGlvbkZvckVsZW1lbnRzKFZlY3RvcjxFbGVtZW50
Kj4gJmVsZW1lbnRzKSBjb25zdAogewotICAgIFZlY3RvcjxVQ2hhcj4gYXJpYUxhYmVsOworICAg
IFN0cmluZ0J1aWxkZXIgYnVpbGRlcjsKICAgICB1bnNpZ25lZCBzaXplID0gZWxlbWVudHMuc2l6
ZSgpOwogICAgIGZvciAodW5zaWduZWQgaSA9IDA7IGkgPCBzaXplOyArK2kpIHsKICAgICAgICAg
RWxlbWVudCogaWRFbGVtZW50ID0gZWxlbWVudHNbaV07CiAgICAgICAgIAogICAgICAgICBTdHJp
bmcgbmFtZUZyYWdtZW50ID0gYWNjZXNzaWJsZU5hbWVGb3JOb2RlKGlkRWxlbWVudCk7Ci0gICAg
ICAgIGFyaWFMYWJlbC5hcHBlbmQobmFtZUZyYWdtZW50LmNoYXJhY3RlcnMoKSwgbmFtZUZyYWdt
ZW50Lmxlbmd0aCgpKTsKKyAgICAgICAgYnVpbGRlci5hcHBlbmQobmFtZUZyYWdtZW50KTsKICAg
ICAgICAgZm9yIChOb2RlKiBuID0gaWRFbGVtZW50LT5maXJzdENoaWxkKCk7IG47IG4gPSBuLT50
cmF2ZXJzZU5leHROb2RlKGlkRWxlbWVudCkpIHsKICAgICAgICAgICAgIG5hbWVGcmFnbWVudCA9
IGFjY2Vzc2libGVOYW1lRm9yTm9kZShuKTsKLSAgICAgICAgICAgIGFyaWFMYWJlbC5hcHBlbmQo
bmFtZUZyYWdtZW50LmNoYXJhY3RlcnMoKSwgbmFtZUZyYWdtZW50Lmxlbmd0aCgpKTsKKyAgICAg
ICAgICAgIGJ1aWxkZXIuYXBwZW5kKG5hbWVGcmFnbWVudCk7CiAgICAgICAgIH0KICAgICAgICAg
ICAgIAogICAgICAgICBpZiAoaSAhPSBzaXplIC0gMSkKLSAgICAgICAgICAgIGFyaWFMYWJlbC5h
cHBlbmQoJyAnKTsKKyAgICAgICAgICAgIGJ1aWxkZXIuYXBwZW5kKCcgJyk7CiAgICAgfQotICAg
IHJldHVybiBTdHJpbmc6OmFkb3B0KGFyaWFMYWJlbCk7CisgICAgcmV0dXJuIGJ1aWxkZXIudG9T
dHJpbmcoKTsKIH0KIAotICAgIAogdm9pZCBBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0OjplbGVt
ZW50c0Zyb21BdHRyaWJ1dGUoVmVjdG9yPEVsZW1lbnQqPiYgZWxlbWVudHMsIGNvbnN0IFF1YWxp
ZmllZE5hbWUmIGF0dHJpYnV0ZSkgY29uc3QKIHsKICAgICBOb2RlKiBub2RlID0gbV9yZW5kZXJl
ci0+bm9kZSgpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>88216</attachid>
            <date>2011-04-05 06:22:54 -0700</date>
            <delta_ts>2011-04-05 06:28:43 -0700</delta_ts>
            <desc>Patch v2</desc>
            <filename>Cleanup2a.diff</filename>
            <type>text/plain</type>
            <size>5403</size>
            <attacher name="Nikolas Zimmermann">zimmermann</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDgyOTMxKQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMDQtMDUgIE5pa29sYXMg
WmltbWVybWFubiAgPG56aW1tZXJtYW5uQHJpbS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgU3dpdGNoIGZyb20gVmVjdG9yPFVDaGFyPiB0byBT
dHJpbmdCdWlsZGVyIGluIGFjY2Vzc2liaWxpdHkvCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NzgzNworCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9B
Y2Nlc3NpYmlsaXR5T2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlP
YmplY3Q6Omxpc3RNYXJrZXJUZXh0Rm9yTm9kZUFuZFBvc2l0aW9uKToKKyAgICAgICAgKFdlYkNv
cmU6OkFjY2Vzc2liaWxpdHlPYmplY3Q6OnN0cmluZ0ZvclZpc2libGVQb3NpdGlvblJhbmdlKToK
KyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuY3BwOgor
ICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdDo6YWNjZXNzaWJpbGl0
eURlc2NyaXB0aW9uRm9yRWxlbWVudHMpOgorCiAyMDExLTA0LTA1ICBBbGV4ZXkgUHJvc2t1cnlh
a292ICA8YXBAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEFkbGVyLgpJ
bmRleDogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxp
dHlPYmplY3QuY3BwCShyZXZpc2lvbiA4MTk2MCkKKysrIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2li
aWxpdHkvQWNjZXNzaWJpbGl0eU9iamVjdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTUyLDYgKzUy
LDggQEAKICNpbmNsdWRlICJodG1sZWRpdGluZy5oIgogI2luY2x1ZGUgInZpc2libGVfdW5pdHMu
aCIKICNpbmNsdWRlIDx3dGYvU3RkTGliRXh0cmFzLmg+CisjaW5jbHVkZSA8d3RmL3RleHQvU3Ry
aW5nQnVpbGRlci5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0NvbmNhdGVuYXRlLmg+CiAj
aW5jbHVkZSA8d3RmL3VuaWNvZGUvQ2hhcmFjdGVyTmFtZXMuaD4KIAogdXNpbmcgbmFtZXNwYWNl
IHN0ZDsKQEAgLTQzMCwxMiArNDMyLDcgQEAgU3RyaW5nIEFjY2Vzc2liaWxpdHlPYmplY3Q6Omxp
c3RNYXJrZXJUZQogICAgIC8vIEFwcGVuZCB0ZXh0LCBwbHVzIHRoZSBwZXJpb2QgdGhhdCBmb2xs
b3dzIHRoZSB0ZXh0LgogICAgIC8vIEZJWE1FOiBOb3QgYWxsIGxpc3QgbWFya2VyIHN0eWxlcyBh
cmUgZm9sbG93ZWQgYnkgYSBwZXJpb2QsIGJ1dCB0aGlzCiAgICAgLy8gc291bmRzIG11Y2ggYmV0
dGVyIHdoZW4gdGhlcmUgaXMgYSBzeW50aGVzaXplZCBwYXVzZSBiZWNhdXNlIG9mIGEgcGVyaW9k
LgotICAgIFZlY3RvcjxVQ2hhcj4gcmVzdWx0VmVjdG9yOwotICAgIHJlc3VsdFZlY3Rvci5hcHBl
bmQobWFya2VyVGV4dC5jaGFyYWN0ZXJzKCksIG1hcmtlclRleHQubGVuZ3RoKCkpOwotICAgIHJl
c3VsdFZlY3Rvci5hcHBlbmQoJy4nKTsKLSAgICByZXN1bHRWZWN0b3IuYXBwZW5kKCcgJyk7Ci0g
ICAgCi0gICAgcmV0dXJuIFN0cmluZzo6YWRvcHQocmVzdWx0VmVjdG9yKTsKKyAgICByZXR1cm4g
bWFrZVN0cmluZyhtYXJrZXJUZXh0LCAiLiAiKTsKIH0KICAgICAKIFN0cmluZyBBY2Nlc3NpYmls
aXR5T2JqZWN0OjpzdHJpbmdGb3JWaXNpYmxlUG9zaXRpb25SYW5nZShjb25zdCBWaXNpYmxlUG9z
aXRpb25SYW5nZSYgdmlzaWJsZVBvc2l0aW9uUmFuZ2UpIGNvbnN0CkBAIC00NDMsNyArNDQwLDcg
QEAgU3RyaW5nIEFjY2Vzc2liaWxpdHlPYmplY3Q6OnN0cmluZ0ZvclZpcwogICAgIGlmICh2aXNp
YmxlUG9zaXRpb25SYW5nZS5pc051bGwoKSkKICAgICAgICAgcmV0dXJuIFN0cmluZygpOwogCi0g
ICAgVmVjdG9yPFVDaGFyPiByZXN1bHRWZWN0b3I7CisgICAgU3RyaW5nQnVpbGRlciBidWlsZGVy
OwogICAgIFJlZlB0cjxSYW5nZT4gcmFuZ2UgPSBtYWtlUmFuZ2UodmlzaWJsZVBvc2l0aW9uUmFu
Z2Uuc3RhcnQsIHZpc2libGVQb3NpdGlvblJhbmdlLmVuZCk7CiAgICAgZm9yIChUZXh0SXRlcmF0
b3IgaXQocmFuZ2UuZ2V0KCkpOyAhaXQuYXRFbmQoKTsgaXQuYWR2YW5jZSgpKSB7CiAgICAgICAg
IC8vIG5vbi16ZXJvIGxlbmd0aCBtZWFucyB0ZXh0dWFsIG5vZGUsIHplcm8gbGVuZ3RoIG1lYW5z
IHJlcGxhY2VkIG5vZGUgKEFLQSAiYXR0YWNobWVudHMiIGluIEFYKQpAQCAtNDUxLDkgKzQ0OCw5
IEBAIFN0cmluZyBBY2Nlc3NpYmlsaXR5T2JqZWN0OjpzdHJpbmdGb3JWaXMKICAgICAgICAgICAg
IC8vIEFkZCBhIHRleHR1YWwgcmVwcmVzZW50YXRpb24gZm9yIGxpc3QgbWFya2VyIHRleHQKICAg
ICAgICAgICAgIFN0cmluZyBsaXN0TWFya2VyVGV4dCA9IGxpc3RNYXJrZXJUZXh0Rm9yTm9kZUFu
ZFBvc2l0aW9uKGl0Lm5vZGUoKSwgdmlzaWJsZVBvc2l0aW9uUmFuZ2Uuc3RhcnQpOwogICAgICAg
ICAgICAgaWYgKCFsaXN0TWFya2VyVGV4dC5pc0VtcHR5KCkpCi0gICAgICAgICAgICAgICAgcmVz
dWx0VmVjdG9yLmFwcGVuZChsaXN0TWFya2VyVGV4dC5jaGFyYWN0ZXJzKCksIGxpc3RNYXJrZXJU
ZXh0Lmxlbmd0aCgpKTsKLSAgICAgICAgICAgICAgICAKLSAgICAgICAgICAgIHJlc3VsdFZlY3Rv
ci5hcHBlbmQoaXQuY2hhcmFjdGVycygpLCBpdC5sZW5ndGgoKSk7CisgICAgICAgICAgICAgICAg
YnVpbGRlci5hcHBlbmQobGlzdE1hcmtlclRleHQpOworCisgICAgICAgICAgICBidWlsZGVyLmFw
cGVuZChpdC5jaGFyYWN0ZXJzKCksIGl0Lmxlbmd0aCgpKTsKICAgICAgICAgfSBlbHNlIHsKICAg
ICAgICAgICAgIC8vIGxvY2F0ZSB0aGUgbm9kZSBhbmQgc3RhcnRpbmcgb2Zmc2V0IGZvciB0aGlz
IHJlcGxhY2VkIHJhbmdlCiAgICAgICAgICAgICBpbnQgZXhjZXB0aW9uID0gMDsKQEAgLTQ2Miwx
MSArNDU5LDExIEBAIFN0cmluZyBBY2Nlc3NpYmlsaXR5T2JqZWN0OjpzdHJpbmdGb3JWaXMKICAg
ICAgICAgICAgIGludCBvZmZzZXQgPSBpdC5yYW5nZSgpLT5zdGFydE9mZnNldChleGNlcHRpb24p
OwogCiAgICAgICAgICAgICBpZiAocmVwbGFjZWROb2RlTmVlZHNDaGFyYWN0ZXIobm9kZS0+Y2hp
bGROb2RlKG9mZnNldCkpKQotICAgICAgICAgICAgICAgIHJlc3VsdFZlY3Rvci5hcHBlbmQob2Jq
ZWN0UmVwbGFjZW1lbnRDaGFyYWN0ZXIpOworICAgICAgICAgICAgICAgIGJ1aWxkZXIuYXBwZW5k
KG9iamVjdFJlcGxhY2VtZW50Q2hhcmFjdGVyKTsKICAgICAgICAgfQogICAgIH0KIAotICAgIHJl
dHVybiBTdHJpbmc6OmFkb3B0KHJlc3VsdFZlY3Rvcik7CisgICAgcmV0dXJuIGJ1aWxkZXIudG9T
dHJpbmcoKTsKIH0KIAogaW50IEFjY2Vzc2liaWxpdHlPYmplY3Q6Omxlbmd0aEZvclZpc2libGVQ
b3NpdGlvblJhbmdlKGNvbnN0IFZpc2libGVQb3NpdGlvblJhbmdlJiB2aXNpYmxlUG9zaXRpb25S
YW5nZSkgY29uc3QKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJp
bGl0eVJlbmRlck9iamVjdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmNwcAkocmV2aXNpb24gODE5NjApCisr
KyBTb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Qu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC03Nyw2ICs3Nyw3IEBACiAjaW5jbHVkZSAiaHRtbGVkaXRp
bmcuaCIKICNpbmNsdWRlICJ2aXNpYmxlX3VuaXRzLmgiCiAjaW5jbHVkZSA8d3RmL1N0ZExpYkV4
dHJhcy5oPgorI2luY2x1ZGUgPHd0Zi90ZXh0L1N0cmluZ0J1aWxkZXIuaD4KICNpbmNsdWRlIDx3
dGYvdW5pY29kZS9DaGFyYWN0ZXJOYW1lcy5oPgogCiB1c2luZyBuYW1lc3BhY2Ugc3RkOwpAQCAt
MTE3NiwyNSArMTE3NywyNCBAQCBzdGF0aWMgU3RyaW5nIGFjY2Vzc2libGVOYW1lRm9yTm9kZShO
b2RlCiAKIFN0cmluZyBBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0OjphY2Nlc3NpYmlsaXR5RGVz
Y3JpcHRpb25Gb3JFbGVtZW50cyhWZWN0b3I8RWxlbWVudCo+ICZlbGVtZW50cykgY29uc3QKIHsK
LSAgICBWZWN0b3I8VUNoYXI+IGFyaWFMYWJlbDsKKyAgICBTdHJpbmdCdWlsZGVyIGJ1aWxkZXI7
CiAgICAgdW5zaWduZWQgc2l6ZSA9IGVsZW1lbnRzLnNpemUoKTsKICAgICBmb3IgKHVuc2lnbmVk
IGkgPSAwOyBpIDwgc2l6ZTsgKytpKSB7CiAgICAgICAgIEVsZW1lbnQqIGlkRWxlbWVudCA9IGVs
ZW1lbnRzW2ldOwogICAgICAgICAKICAgICAgICAgU3RyaW5nIG5hbWVGcmFnbWVudCA9IGFjY2Vz
c2libGVOYW1lRm9yTm9kZShpZEVsZW1lbnQpOwotICAgICAgICBhcmlhTGFiZWwuYXBwZW5kKG5h
bWVGcmFnbWVudC5jaGFyYWN0ZXJzKCksIG5hbWVGcmFnbWVudC5sZW5ndGgoKSk7CisgICAgICAg
IGJ1aWxkZXIuYXBwZW5kKG5hbWVGcmFnbWVudCk7CiAgICAgICAgIGZvciAoTm9kZSogbiA9IGlk
RWxlbWVudC0+Zmlyc3RDaGlsZCgpOyBuOyBuID0gbi0+dHJhdmVyc2VOZXh0Tm9kZShpZEVsZW1l
bnQpKSB7CiAgICAgICAgICAgICBuYW1lRnJhZ21lbnQgPSBhY2Nlc3NpYmxlTmFtZUZvck5vZGUo
bik7Ci0gICAgICAgICAgICBhcmlhTGFiZWwuYXBwZW5kKG5hbWVGcmFnbWVudC5jaGFyYWN0ZXJz
KCksIG5hbWVGcmFnbWVudC5sZW5ndGgoKSk7CisgICAgICAgICAgICBidWlsZGVyLmFwcGVuZChu
YW1lRnJhZ21lbnQpOwogICAgICAgICB9CiAgICAgICAgICAgICAKICAgICAgICAgaWYgKGkgIT0g
c2l6ZSAtIDEpCi0gICAgICAgICAgICBhcmlhTGFiZWwuYXBwZW5kKCcgJyk7CisgICAgICAgICAg
ICBidWlsZGVyLmFwcGVuZCgnICcpOwogICAgIH0KLSAgICByZXR1cm4gU3RyaW5nOjphZG9wdChh
cmlhTGFiZWwpOworICAgIHJldHVybiBidWlsZGVyLnRvU3RyaW5nKCk7CiB9CiAKLSAgICAKIHZv
aWQgQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdDo6ZWxlbWVudHNGcm9tQXR0cmlidXRlKFZlY3Rv
cjxFbGVtZW50Kj4mIGVsZW1lbnRzLCBjb25zdCBRdWFsaWZpZWROYW1lJiBhdHRyaWJ1dGUpIGNv
bnN0CiB7CiAgICAgTm9kZSogbm9kZSA9IG1fcmVuZGVyZXItPm5vZGUoKTsK
</data>
<flag name="review"
          id="80689"
          type_id="1"
          status="+"
          setter="kling"
    />
          </attachment>
      

    </bug>

</bugzilla>