<?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>141852</bug_id>
          
          <creation_ts>2015-02-20 12:52:08 -0800</creation_ts>
          <short_desc>API::String should just be a simple wrapper for WTF strings</short_desc>
          <delta_ts>2015-02-20 17:49:10 -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>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="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>bdakin</cc>
    
    <cc>cgarcia</cc>
    
    <cc>clopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1070787</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-02-20 12:52:08 -0800</bug_when>
    <thetext>API::String should just be a simple wrapper for WTF strings</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070788</commentid>
    <comment_count>1</comment_count>
      <attachid>246989</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-02-20 12:52:57 -0800</bug_when>
    <thetext>Created attachment 246989
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070791</commentid>
    <comment_count>2</comment_count>
      <attachid>246990</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-02-20 12:54:47 -0800</bug_when>
    <thetext>Created attachment 246990
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070796</commentid>
    <comment_count>3</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2015-02-20 13:09:25 -0800</bug_when>
    <thetext>Committed r180449: &lt;http://trac.webkit.org/changeset/180449&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070846</commentid>
    <comment_count>4</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2015-02-20 14:58:52 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Committed r180449: &lt;http://trac.webkit.org/changeset/180449&gt;

This broke the GTK build:

https://build.webkit.org/builders/GTK%20Linux%2064-bit%20Release%20%28Build%29/builds/55778/steps/compile-webkit/logs/stdio

Last 500 characters of output:
quest.cpp.o -c ../../Source/WebKit2/UIProcess/API/gtk/WebKitFileChooserRequest.cpp
../../Source/WebKit2/UIProcess/API/gtk/WebKitFileChooserRequest.cpp: In function &apos;const gchar* const* webkit_file_chooser_request_get_selected_files(WebKitFileChooserRequest*)&apos;:
../../Source/WebKit2/UIProcess/API/gtk/WebKitFileChooserRequest.cpp:357:26: error: &apos;class API::String&apos; has no member named &apos;isEmpty&apos;
         if (webFileName-&gt;isEmpty())
                          ^</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1070905</commentid>
    <comment_count>5</comment_count>
    <who name="Carlos Alberto Lopez Perez">clopez</who>
    <bug_when>2015-02-20 17:49:10 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (In reply to comment #3)
&gt; &gt; Committed r180449: &lt;http://trac.webkit.org/changeset/180449&gt;
&gt; 
&gt; This broke the GTK build:
&gt; 
&gt; https://build.webkit.org/builders/GTK%20Linux%2064-
&gt; bit%20Release%20%28Build%29/builds/55778/steps/compile-webkit/logs/stdio
&gt; 
&gt; Last 500 characters of output:
&gt; quest.cpp.o -c
&gt; ../../Source/WebKit2/UIProcess/API/gtk/WebKitFileChooserRequest.cpp
&gt; ../../Source/WebKit2/UIProcess/API/gtk/WebKitFileChooserRequest.cpp: In
&gt; function &apos;const gchar* const*
&gt; webkit_file_chooser_request_get_selected_files(WebKitFileChooserRequest*)&apos;:
&gt; ../../Source/WebKit2/UIProcess/API/gtk/WebKitFileChooserRequest.cpp:357:26:
&gt; error: &apos;class API::String&apos; has no member named &apos;isEmpty&apos;
&gt;          if (webFileName-&gt;isEmpty())
&gt;                           ^

Build fix landed in r180469 &lt;https://trac.webkit.org/r180469&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>246989</attachid>
            <date>2015-02-20 12:52:57 -0800</date>
            <delta_ts>2015-02-20 12:54:43 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-141852-20150220125248.patch</filename>
            <type>text/plain</type>
            <size>6528</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwNDQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYWJhNTQ3MWRlODEwYzFk
M2NmZDBhMGM2YTI4Njc4NzRiNTQyZjBjMi4uNGM3NTc4NWMyZjE0MDVmNjQzZjhkNDQzMDZjNDg4
NTA1YjI1ZDE3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI1IEBACiAyMDE1LTAyLTIwICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKKyAgICAgICAgQVBJOjpTdHJpbmcg
c2hvdWxkIGp1c3QgYmUgYSBzaW1wbGUgd3JhcHBlciBmb3IgV1RGIHN0cmluZ3MKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MTg1MgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEV4cG9zZSBhIFN0cmluZ1Zp
ZXcgbWVtYmVyIGZ1bmN0aW9uIG9uIEFQSTo6U3RyaW5nLiBNb3ZlIGFsbCB0aGUgV0tTdHJpbmcg
QVBJIGltcGxlbWVudGF0aW9ucyB0byBXS1N0cmluZy5jcHAuCisKKyAgICAgICAgKiBTaGFyZWQv
QVBJL0FQSVN0cmluZy5oOgorICAgICAgICAqIFNoYXJlZC9BUEkvYy9XS1N0cmluZy5jcHA6Cisg
ICAgICAgIChXS1N0cmluZ0lzRW1wdHkpOgorICAgICAgICAoV0tTdHJpbmdHZXRMZW5ndGgpOgor
ICAgICAgICAoV0tTdHJpbmdHZXRDaGFyYWN0ZXJzKToKKyAgICAgICAgKFdLU3RyaW5nR2V0TWF4
aW11bVVURjhDU3RyaW5nU2l6ZSk6CisgICAgICAgIChXS1N0cmluZ0dldFVURjhDU3RyaW5nKToK
KyAgICAgICAgKFdLU3RyaW5nSXNFcXVhbCk6CisgICAgICAgIChXS1N0cmluZ0lzRXF1YWxUb1VU
RjhDU3RyaW5nKToKKyAgICAgICAgKFdLU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmdJZ25vcmlu
Z0Nhc2UpOgorCisyMDE1LTAyLTIwICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5j
b20+CisKICAgICAgICAgQVBJOjpTdHJpbmc6OnN0cmluZygpIG5lZWRzIHRvIHJldHVybiBhbiBp
c29sYXRlZCBzdHJpbmcgY29weQogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTQxODQ2CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9B
UEkvQVBJU3RyaW5nLmggYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL0FQSVN0cmluZy5oCmlu
ZGV4IDExNmQ0Yjc2NWZjM2UxMmZiNjUzZDJkOGFlYTk0MmJkZjdmODMyYzAuLjJiNGIzMjQzODQw
ZjUxNWM3NjFlYzA2YTNhMjk0NGQxNWRiODg4ODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1NoYXJlZC9BUEkvQVBJU3RyaW5nLmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9B
UElTdHJpbmcuaApAQCAtNTUsNDIgKzU1LDcgQEAgcHVibGljOgogICAgIHsKICAgICB9CiAKLSAg
ICBib29sIGlzTnVsbCgpIGNvbnN0IHsgcmV0dXJuIG1fc3RyaW5nLmlzTnVsbCgpOyB9Ci0gICAg
Ym9vbCBpc0VtcHR5KCkgY29uc3QgeyByZXR1cm4gbV9zdHJpbmcuaXNFbXB0eSgpOyB9Ci0gICAg
Ci0gICAgc2l6ZV90IGxlbmd0aCgpIGNvbnN0IHsgcmV0dXJuIG1fc3RyaW5nLmxlbmd0aCgpOyB9
Ci0gICAgc2l6ZV90IGdldENoYXJhY3RlcnMoVUNoYXIqIGJ1ZmZlciwgc2l6ZV90IGJ1ZmZlckxl
bmd0aCkgY29uc3QKLSAgICB7Ci0gICAgICAgIHVuc2lnbmVkIHVuc2lnbmVkQnVmZmVyTGVuZ3Ro
ID0gc3RkOjptaW48c2l6ZV90PihidWZmZXJMZW5ndGgsIHN0ZDo6bnVtZXJpY19saW1pdHM8dW5z
aWduZWQ+OjptYXgoKSk7Ci0gICAgICAgIFN0cmluZ1ZpZXcgc3Vic3RyaW5nID0gU3RyaW5nVmll
dyhtX3N0cmluZykuc3Vic3RyaW5nKDAsIHVuc2lnbmVkQnVmZmVyTGVuZ3RoKTsKLSAgICAgICAg
c3Vic3RyaW5nLmdldENoYXJhY3RlcnNXaXRoVXBjb252ZXJ0KGJ1ZmZlcik7Ci0gICAgICAgIHJl
dHVybiBzdWJzdHJpbmcubGVuZ3RoKCk7Ci0gICAgfQotCi0gICAgc2l6ZV90IG1heGltdW1VVEY4
Q1N0cmluZ1NpemUoKSBjb25zdCB7IHJldHVybiBtX3N0cmluZy5sZW5ndGgoKSAqIDMgKyAxOyB9
Ci0gICAgc2l6ZV90IGdldFVURjhDU3RyaW5nKGNoYXIqIGJ1ZmZlciwgc2l6ZV90IGJ1ZmZlclNp
emUpCi0gICAgewotICAgICAgICBpZiAoIWJ1ZmZlclNpemUpCi0gICAgICAgICAgICByZXR1cm4g
MDsKLSAgICAgICAgY2hhciogcCA9IGJ1ZmZlcjsKLSAgICAgICAgV1RGOjpVbmljb2RlOjpDb252
ZXJzaW9uUmVzdWx0IHJlc3VsdDsKLSAgICAgICAgaWYgKG1fc3RyaW5nLmlzOEJpdCgpKSB7Ci0g
ICAgICAgICAgICBjb25zdCBMQ2hhciogY2hhcmFjdGVycyA9IG1fc3RyaW5nLmNoYXJhY3RlcnM4
KCk7Ci0gICAgICAgICAgICByZXN1bHQgPSBXVEY6OlVuaWNvZGU6OmNvbnZlcnRMYXRpbjFUb1VU
RjgoJmNoYXJhY3RlcnMsIGNoYXJhY3RlcnMgKyBtX3N0cmluZy5sZW5ndGgoKSwgJnAsIHAgKyBi
dWZmZXJTaXplIC0gMSk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBjb25zdCBVQ2hh
ciogY2hhcmFjdGVycyA9IG1fc3RyaW5nLmNoYXJhY3RlcnMxNigpOwotICAgICAgICAgICAgcmVz
dWx0ID0gV1RGOjpVbmljb2RlOjpjb252ZXJ0VVRGMTZUb1VURjgoJmNoYXJhY3RlcnMsIGNoYXJh
Y3RlcnMgKyBtX3N0cmluZy5sZW5ndGgoKSwgJnAsIHAgKyBidWZmZXJTaXplIC0gMSwgLyogc3Ry
aWN0ICovIHRydWUpOwotICAgICAgICB9Ci0gICAgICAgIGlmIChyZXN1bHQgIT0gV1RGOjpVbmlj
b2RlOjpjb252ZXJzaW9uT0sgJiYgcmVzdWx0ICE9IFdURjo6VW5pY29kZTo6dGFyZ2V0RXhoYXVz
dGVkKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgICpwKysgPSAnXDAnOwotICAgICAg
ICByZXR1cm4gcCAtIGJ1ZmZlcjsKLSAgICB9Ci0KLSAgICBib29sIGVxdWFsKFN0cmluZyogb3Ro
ZXIpIHsgcmV0dXJuIG1fc3RyaW5nID09IG90aGVyLT5tX3N0cmluZzsgfQotICAgIGJvb2wgZXF1
YWxUb1VURjhTdHJpbmcoY29uc3QgY2hhciogb3RoZXIpIHsgcmV0dXJuIG1fc3RyaW5nID09IFdU
Rjo6U3RyaW5nOjpmcm9tVVRGOChvdGhlcik7IH0KLSAgICBib29sIGVxdWFsVG9VVEY4U3RyaW5n
SWdub3JpbmdDYXNlKGNvbnN0IGNoYXIqIG90aGVyKSB7IHJldHVybiBlcXVhbElnbm9yaW5nQ2Fz
ZShtX3N0cmluZywgb3RoZXIpOyB9Ci0KKyAgICBXVEY6OlN0cmluZ1ZpZXcgc3RyaW5nVmlldygp
IGNvbnN0IHsgcmV0dXJuIG1fc3RyaW5nOyB9CiAgICAgV1RGOjpTdHJpbmcgc3RyaW5nKCkgY29u
c3QgeyByZXR1cm4gbV9zdHJpbmcuaXNvbGF0ZWRDb3B5KCk7IH0KIAogcHJpdmF0ZToKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS1N0cmluZy5jcHAgYi9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tTdHJpbmcuY3BwCmluZGV4IDkzYmVjZDllYTYzMDA3M2E3
MDM5M2Q0MjliMTQxYWI2OGJhOWE2YmMuLjg0NjU4ZDk1ZWI0NDJhMzQ5OTQyNmU4OTBlNjZhYmFh
MzEyOWE4NWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS1N0cmlu
Zy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLU3RyaW5nLmNwcApAQCAt
NDcsNDMgKzQ3LDY5IEBAIFdLU3RyaW5nUmVmIFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5n
KGNvbnN0IGNoYXIqIHN0cmluZykKIAogYm9vbCBXS1N0cmluZ0lzRW1wdHkoV0tTdHJpbmdSZWYg
c3RyaW5nUmVmKQogewotICAgIHJldHVybiB0b0ltcGwoc3RyaW5nUmVmKS0+aXNFbXB0eSgpOwor
ICAgIHJldHVybiB0b0ltcGwoc3RyaW5nUmVmKS0+c3RyaW5nVmlldygpLmlzRW1wdHkoKTsKIH0K
IAogc2l6ZV90IFdLU3RyaW5nR2V0TGVuZ3RoKFdLU3RyaW5nUmVmIHN0cmluZ1JlZikKIHsKLSAg
ICByZXR1cm4gdG9JbXBsKHN0cmluZ1JlZiktPmxlbmd0aCgpOworICAgIHJldHVybiB0b0ltcGwo
c3RyaW5nUmVmKS0+c3RyaW5nVmlldygpLmxlbmd0aCgpOwogfQogCiBzaXplX3QgV0tTdHJpbmdH
ZXRDaGFyYWN0ZXJzKFdLU3RyaW5nUmVmIHN0cmluZ1JlZiwgV0tDaGFyKiBidWZmZXIsIHNpemVf
dCBidWZmZXJMZW5ndGgpCiB7Ci0gICAgQ09NUElMRV9BU1NFUlQoc2l6ZW9mKFdLQ2hhcikgPT0g
c2l6ZW9mKFVDaGFyKSwgV0tTdHJpbmdHZXRDaGFyYWN0ZXJzX3NpemVvZl9XS0NoYXJfbWF0Y2hl
c19VQ2hhcik7Ci0gICAgcmV0dXJuICh0b0ltcGwoc3RyaW5nUmVmKS0+Z2V0Q2hhcmFjdGVycyhz
dGF0aWNfY2FzdDxVQ2hhcio+KGJ1ZmZlciksIGJ1ZmZlckxlbmd0aCkpOworICAgIHN0YXRpY19h
c3NlcnQoc2l6ZW9mKFdLQ2hhcikgPT0gc2l6ZW9mKFVDaGFyKSwgIlNpemUgb2YgV0tDaGFyIG11
c3QgbWF0Y2ggc2l6ZSBvZiBVQ2hhciIpOworCisgICAgdW5zaWduZWQgdW5zaWduZWRCdWZmZXJM
ZW5ndGggPSBzdGQ6Om1pbjxzaXplX3Q+KGJ1ZmZlckxlbmd0aCwgc3RkOjpudW1lcmljX2xpbWl0
czx1bnNpZ25lZD46Om1heCgpKTsKKyAgICBhdXRvIHN1YnN0cmluZyA9IHRvSW1wbChzdHJpbmdS
ZWYpLT5zdHJpbmdWaWV3KCkuc3Vic3RyaW5nKDAsIHVuc2lnbmVkQnVmZmVyTGVuZ3RoKTsKKwor
ICAgIHN1YnN0cmluZy5nZXRDaGFyYWN0ZXJzV2l0aFVwY29udmVydChzdGF0aWNfY2FzdDxVQ2hh
cio+KGJ1ZmZlcikpOworICAgIHJldHVybiBzdWJzdHJpbmcubGVuZ3RoKCk7CiB9CiAKIHNpemVf
dCBXS1N0cmluZ0dldE1heGltdW1VVEY4Q1N0cmluZ1NpemUoV0tTdHJpbmdSZWYgc3RyaW5nUmVm
KQogewotICAgIHJldHVybiB0b0ltcGwoc3RyaW5nUmVmKS0+bWF4aW11bVVURjhDU3RyaW5nU2l6
ZSgpOworICAgIHJldHVybiB0b0ltcGwoc3RyaW5nUmVmKS0+c3RyaW5nVmlldygpLmxlbmd0aCgp
ICogMyArIDE7CiB9CiAKIHNpemVfdCBXS1N0cmluZ0dldFVURjhDU3RyaW5nKFdLU3RyaW5nUmVm
IHN0cmluZ1JlZiwgY2hhciogYnVmZmVyLCBzaXplX3QgYnVmZmVyU2l6ZSkKIHsKLSAgICByZXR1
cm4gdG9JbXBsKHN0cmluZ1JlZiktPmdldFVURjhDU3RyaW5nKGJ1ZmZlciwgYnVmZmVyU2l6ZSk7
CisgICAgaWYgKCFidWZmZXJTaXplKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGF1dG8gc3Ry
aW5nVmlldyA9IHRvSW1wbChzdHJpbmdSZWYpLT5zdHJpbmdWaWV3KCk7CisKKyAgICBjaGFyKiBw
ID0gYnVmZmVyOworICAgIFdURjo6VW5pY29kZTo6Q29udmVyc2lvblJlc3VsdCByZXN1bHQ7CisK
KyAgICBpZiAoc3RyaW5nVmlldy5pczhCaXQoKSkgeworICAgICAgICBjb25zdCBMQ2hhciogY2hh
cmFjdGVycyA9IHN0cmluZ1ZpZXcuY2hhcmFjdGVyczgoKTsKKyAgICAgICAgcmVzdWx0ID0gV1RG
OjpVbmljb2RlOjpjb252ZXJ0TGF0aW4xVG9VVEY4KCZjaGFyYWN0ZXJzLCBjaGFyYWN0ZXJzICsg
c3RyaW5nVmlldy5sZW5ndGgoKSwgJnAsIHAgKyBidWZmZXJTaXplIC0gMSk7CisgICAgfSBlbHNl
IHsKKyAgICAgICAgY29uc3QgVUNoYXIqIGNoYXJhY3RlcnMgPSBzdHJpbmdWaWV3LmNoYXJhY3Rl
cnMxNigpOworICAgICAgICByZXN1bHQgPSBXVEY6OlVuaWNvZGU6OmNvbnZlcnRVVEYxNlRvVVRG
OCgmY2hhcmFjdGVycywgY2hhcmFjdGVycyArIHN0cmluZ1ZpZXcubGVuZ3RoKCksICZwLCBwICsg
YnVmZmVyU2l6ZSAtIDEsIC8qIHN0cmljdCAqLyB0cnVlKTsKKyAgICB9CisKKyAgICBpZiAocmVz
dWx0ICE9IFdURjo6VW5pY29kZTo6Y29udmVyc2lvbk9LICYmIHJlc3VsdCAhPSBXVEY6OlVuaWNv
ZGU6OnRhcmdldEV4aGF1c3RlZCkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICAqcCsrID0gJ1ww
JzsKKyAgICByZXR1cm4gcCAtIGJ1ZmZlcjsKIH0KIAogYm9vbCBXS1N0cmluZ0lzRXF1YWwoV0tT
dHJpbmdSZWYgYVJlZiwgV0tTdHJpbmdSZWYgYlJlZikKIHsKLSAgICByZXR1cm4gdG9JbXBsKGFS
ZWYpLT5lcXVhbCh0b0ltcGwoYlJlZikpOworICAgIHJldHVybiB0b0ltcGwoYVJlZiktPnN0cmlu
Z1ZpZXcoKSA9PSB0b0ltcGwoYlJlZiktPnN0cmluZ1ZpZXcoKTsKIH0KIAogYm9vbCBXS1N0cmlu
Z0lzRXF1YWxUb1VURjhDU3RyaW5nKFdLU3RyaW5nUmVmIGFSZWYsIGNvbnN0IGNoYXIqIGIpCiB7
Ci0gICAgcmV0dXJuIHRvSW1wbChhUmVmKS0+ZXF1YWxUb1VURjhTdHJpbmcoYik7CisgICAgcmV0
dXJuIHRvSW1wbChhUmVmKS0+c3RyaW5nVmlldygpID09IFdURjo6U3RyaW5nOjpmcm9tVVRGOChi
KTsKIH0KIAogYm9vbCBXS1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nSWdub3JpbmdDYXNlKFdL
U3RyaW5nUmVmIGFSZWYsIGNvbnN0IGNoYXIqIGIpCiB7Ci0gICAgcmV0dXJuIHRvSW1wbChhUmVm
KS0+ZXF1YWxUb1VURjhTdHJpbmdJZ25vcmluZ0Nhc2UoYik7CisgICAgLy8gRklYTQorICAgIHJl
dHVybiBlcXVhbElnbm9yaW5nQ2FzZSh0b0ltcGwoYVJlZiktPnN0cmluZygpLCBXVEY6OlN0cmlu
Zzo6ZnJvbVVURjgoYikpOwogfQogCiBXS1N0cmluZ1JlZiBXS1N0cmluZ0NyZWF0ZVdpdGhKU1N0
cmluZyhKU1N0cmluZ1JlZiBqc1N0cmluZ1JlZikK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>246990</attachid>
            <date>2015-02-20 12:54:47 -0800</date>
            <delta_ts>2015-02-20 13:08:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-141852-20150220125438.patch</filename>
            <type>text/plain</type>
            <size>6635</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTgwNDQ1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYWJhNTQ3MWRlODEwYzFk
M2NmZDBhMGM2YTI4Njc4NzRiNTQyZjBjMi4uNGM3NTc4NWMyZjE0MDVmNjQzZjhkNDQzMDZjNDg4
NTA1YjI1ZDE3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSw1ICsxLDI1IEBACiAyMDE1LTAyLTIwICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CiAKKyAgICAgICAgQVBJOjpTdHJpbmcg
c2hvdWxkIGp1c3QgYmUgYSBzaW1wbGUgd3JhcHBlciBmb3IgV1RGIHN0cmluZ3MKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE0MTg1MgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEV4cG9zZSBhIFN0cmluZ1Zp
ZXcgbWVtYmVyIGZ1bmN0aW9uIG9uIEFQSTo6U3RyaW5nLiBNb3ZlIGFsbCB0aGUgV0tTdHJpbmcg
QVBJIGltcGxlbWVudGF0aW9ucyB0byBXS1N0cmluZy5jcHAuCisKKyAgICAgICAgKiBTaGFyZWQv
QVBJL0FQSVN0cmluZy5oOgorICAgICAgICAqIFNoYXJlZC9BUEkvYy9XS1N0cmluZy5jcHA6Cisg
ICAgICAgIChXS1N0cmluZ0lzRW1wdHkpOgorICAgICAgICAoV0tTdHJpbmdHZXRMZW5ndGgpOgor
ICAgICAgICAoV0tTdHJpbmdHZXRDaGFyYWN0ZXJzKToKKyAgICAgICAgKFdLU3RyaW5nR2V0TWF4
aW11bVVURjhDU3RyaW5nU2l6ZSk6CisgICAgICAgIChXS1N0cmluZ0dldFVURjhDU3RyaW5nKToK
KyAgICAgICAgKFdLU3RyaW5nSXNFcXVhbCk6CisgICAgICAgIChXS1N0cmluZ0lzRXF1YWxUb1VU
RjhDU3RyaW5nKToKKyAgICAgICAgKFdLU3RyaW5nSXNFcXVhbFRvVVRGOENTdHJpbmdJZ25vcmlu
Z0Nhc2UpOgorCisyMDE1LTAyLTIwICBBbmRlcnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5j
b20+CisKICAgICAgICAgQVBJOjpTdHJpbmc6OnN0cmluZygpIG5lZWRzIHRvIHJldHVybiBhbiBp
c29sYXRlZCBzdHJpbmcgY29weQogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTQxODQ2CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9B
UEkvQVBJU3RyaW5nLmggYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvQVBJL0FQSVN0cmluZy5oCmlu
ZGV4IDExNmQ0Yjc2NWZjM2UxMmZiNjUzZDJkOGFlYTk0MmJkZjdmODMyYzAuLjJiNGIzMjQzODQw
ZjUxNWM3NjFlYzA2YTNhMjk0NGQxNWRiODg4ODggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1NoYXJlZC9BUEkvQVBJU3RyaW5nLmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9B
UElTdHJpbmcuaApAQCAtNTUsNDIgKzU1LDcgQEAgcHVibGljOgogICAgIHsKICAgICB9CiAKLSAg
ICBib29sIGlzTnVsbCgpIGNvbnN0IHsgcmV0dXJuIG1fc3RyaW5nLmlzTnVsbCgpOyB9Ci0gICAg
Ym9vbCBpc0VtcHR5KCkgY29uc3QgeyByZXR1cm4gbV9zdHJpbmcuaXNFbXB0eSgpOyB9Ci0gICAg
Ci0gICAgc2l6ZV90IGxlbmd0aCgpIGNvbnN0IHsgcmV0dXJuIG1fc3RyaW5nLmxlbmd0aCgpOyB9
Ci0gICAgc2l6ZV90IGdldENoYXJhY3RlcnMoVUNoYXIqIGJ1ZmZlciwgc2l6ZV90IGJ1ZmZlckxl
bmd0aCkgY29uc3QKLSAgICB7Ci0gICAgICAgIHVuc2lnbmVkIHVuc2lnbmVkQnVmZmVyTGVuZ3Ro
ID0gc3RkOjptaW48c2l6ZV90PihidWZmZXJMZW5ndGgsIHN0ZDo6bnVtZXJpY19saW1pdHM8dW5z
aWduZWQ+OjptYXgoKSk7Ci0gICAgICAgIFN0cmluZ1ZpZXcgc3Vic3RyaW5nID0gU3RyaW5nVmll
dyhtX3N0cmluZykuc3Vic3RyaW5nKDAsIHVuc2lnbmVkQnVmZmVyTGVuZ3RoKTsKLSAgICAgICAg
c3Vic3RyaW5nLmdldENoYXJhY3RlcnNXaXRoVXBjb252ZXJ0KGJ1ZmZlcik7Ci0gICAgICAgIHJl
dHVybiBzdWJzdHJpbmcubGVuZ3RoKCk7Ci0gICAgfQotCi0gICAgc2l6ZV90IG1heGltdW1VVEY4
Q1N0cmluZ1NpemUoKSBjb25zdCB7IHJldHVybiBtX3N0cmluZy5sZW5ndGgoKSAqIDMgKyAxOyB9
Ci0gICAgc2l6ZV90IGdldFVURjhDU3RyaW5nKGNoYXIqIGJ1ZmZlciwgc2l6ZV90IGJ1ZmZlclNp
emUpCi0gICAgewotICAgICAgICBpZiAoIWJ1ZmZlclNpemUpCi0gICAgICAgICAgICByZXR1cm4g
MDsKLSAgICAgICAgY2hhciogcCA9IGJ1ZmZlcjsKLSAgICAgICAgV1RGOjpVbmljb2RlOjpDb252
ZXJzaW9uUmVzdWx0IHJlc3VsdDsKLSAgICAgICAgaWYgKG1fc3RyaW5nLmlzOEJpdCgpKSB7Ci0g
ICAgICAgICAgICBjb25zdCBMQ2hhciogY2hhcmFjdGVycyA9IG1fc3RyaW5nLmNoYXJhY3RlcnM4
KCk7Ci0gICAgICAgICAgICByZXN1bHQgPSBXVEY6OlVuaWNvZGU6OmNvbnZlcnRMYXRpbjFUb1VU
RjgoJmNoYXJhY3RlcnMsIGNoYXJhY3RlcnMgKyBtX3N0cmluZy5sZW5ndGgoKSwgJnAsIHAgKyBi
dWZmZXJTaXplIC0gMSk7Ci0gICAgICAgIH0gZWxzZSB7Ci0gICAgICAgICAgICBjb25zdCBVQ2hh
ciogY2hhcmFjdGVycyA9IG1fc3RyaW5nLmNoYXJhY3RlcnMxNigpOwotICAgICAgICAgICAgcmVz
dWx0ID0gV1RGOjpVbmljb2RlOjpjb252ZXJ0VVRGMTZUb1VURjgoJmNoYXJhY3RlcnMsIGNoYXJh
Y3RlcnMgKyBtX3N0cmluZy5sZW5ndGgoKSwgJnAsIHAgKyBidWZmZXJTaXplIC0gMSwgLyogc3Ry
aWN0ICovIHRydWUpOwotICAgICAgICB9Ci0gICAgICAgIGlmIChyZXN1bHQgIT0gV1RGOjpVbmlj
b2RlOjpjb252ZXJzaW9uT0sgJiYgcmVzdWx0ICE9IFdURjo6VW5pY29kZTo6dGFyZ2V0RXhoYXVz
dGVkKQotICAgICAgICAgICAgcmV0dXJuIDA7Ci0gICAgICAgICpwKysgPSAnXDAnOwotICAgICAg
ICByZXR1cm4gcCAtIGJ1ZmZlcjsKLSAgICB9Ci0KLSAgICBib29sIGVxdWFsKFN0cmluZyogb3Ro
ZXIpIHsgcmV0dXJuIG1fc3RyaW5nID09IG90aGVyLT5tX3N0cmluZzsgfQotICAgIGJvb2wgZXF1
YWxUb1VURjhTdHJpbmcoY29uc3QgY2hhciogb3RoZXIpIHsgcmV0dXJuIG1fc3RyaW5nID09IFdU
Rjo6U3RyaW5nOjpmcm9tVVRGOChvdGhlcik7IH0KLSAgICBib29sIGVxdWFsVG9VVEY4U3RyaW5n
SWdub3JpbmdDYXNlKGNvbnN0IGNoYXIqIG90aGVyKSB7IHJldHVybiBlcXVhbElnbm9yaW5nQ2Fz
ZShtX3N0cmluZywgb3RoZXIpOyB9Ci0KKyAgICBXVEY6OlN0cmluZ1ZpZXcgc3RyaW5nVmlldygp
IGNvbnN0IHsgcmV0dXJuIG1fc3RyaW5nOyB9CiAgICAgV1RGOjpTdHJpbmcgc3RyaW5nKCkgY29u
c3QgeyByZXR1cm4gbV9zdHJpbmcuaXNvbGF0ZWRDb3B5KCk7IH0KIAogcHJpdmF0ZToKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS1N0cmluZy5jcHAgYi9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvQVBJL2MvV0tTdHJpbmcuY3BwCmluZGV4IDkzYmVjZDllYTYzMDA3M2E3
MDM5M2Q0MjliMTQxYWI2OGJhOWE2YmMuLjYyODUyNGIzZWEwYTJkNWE2OWY5MDc1NDEzNTlmZDQz
YTljMGNiNTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9BUEkvYy9XS1N0cmlu
Zy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL0FQSS9jL1dLU3RyaW5nLmNwcApAQCAt
NDcsNDMgKzQ3LDY5IEBAIFdLU3RyaW5nUmVmIFdLU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5n
KGNvbnN0IGNoYXIqIHN0cmluZykKIAogYm9vbCBXS1N0cmluZ0lzRW1wdHkoV0tTdHJpbmdSZWYg
c3RyaW5nUmVmKQogewotICAgIHJldHVybiB0b0ltcGwoc3RyaW5nUmVmKS0+aXNFbXB0eSgpOwor
ICAgIHJldHVybiB0b0ltcGwoc3RyaW5nUmVmKS0+c3RyaW5nVmlldygpLmlzRW1wdHkoKTsKIH0K
IAogc2l6ZV90IFdLU3RyaW5nR2V0TGVuZ3RoKFdLU3RyaW5nUmVmIHN0cmluZ1JlZikKIHsKLSAg
ICByZXR1cm4gdG9JbXBsKHN0cmluZ1JlZiktPmxlbmd0aCgpOworICAgIHJldHVybiB0b0ltcGwo
c3RyaW5nUmVmKS0+c3RyaW5nVmlldygpLmxlbmd0aCgpOwogfQogCiBzaXplX3QgV0tTdHJpbmdH
ZXRDaGFyYWN0ZXJzKFdLU3RyaW5nUmVmIHN0cmluZ1JlZiwgV0tDaGFyKiBidWZmZXIsIHNpemVf
dCBidWZmZXJMZW5ndGgpCiB7Ci0gICAgQ09NUElMRV9BU1NFUlQoc2l6ZW9mKFdLQ2hhcikgPT0g
c2l6ZW9mKFVDaGFyKSwgV0tTdHJpbmdHZXRDaGFyYWN0ZXJzX3NpemVvZl9XS0NoYXJfbWF0Y2hl
c19VQ2hhcik7Ci0gICAgcmV0dXJuICh0b0ltcGwoc3RyaW5nUmVmKS0+Z2V0Q2hhcmFjdGVycyhz
dGF0aWNfY2FzdDxVQ2hhcio+KGJ1ZmZlciksIGJ1ZmZlckxlbmd0aCkpOworICAgIHN0YXRpY19h
c3NlcnQoc2l6ZW9mKFdLQ2hhcikgPT0gc2l6ZW9mKFVDaGFyKSwgIlNpemUgb2YgV0tDaGFyIG11
c3QgbWF0Y2ggc2l6ZSBvZiBVQ2hhciIpOworCisgICAgdW5zaWduZWQgdW5zaWduZWRCdWZmZXJM
ZW5ndGggPSBzdGQ6Om1pbjxzaXplX3Q+KGJ1ZmZlckxlbmd0aCwgc3RkOjpudW1lcmljX2xpbWl0
czx1bnNpZ25lZD46Om1heCgpKTsKKyAgICBhdXRvIHN1YnN0cmluZyA9IHRvSW1wbChzdHJpbmdS
ZWYpLT5zdHJpbmdWaWV3KCkuc3Vic3RyaW5nKDAsIHVuc2lnbmVkQnVmZmVyTGVuZ3RoKTsKKwor
ICAgIHN1YnN0cmluZy5nZXRDaGFyYWN0ZXJzV2l0aFVwY29udmVydChzdGF0aWNfY2FzdDxVQ2hh
cio+KGJ1ZmZlcikpOworICAgIHJldHVybiBzdWJzdHJpbmcubGVuZ3RoKCk7CiB9CiAKIHNpemVf
dCBXS1N0cmluZ0dldE1heGltdW1VVEY4Q1N0cmluZ1NpemUoV0tTdHJpbmdSZWYgc3RyaW5nUmVm
KQogewotICAgIHJldHVybiB0b0ltcGwoc3RyaW5nUmVmKS0+bWF4aW11bVVURjhDU3RyaW5nU2l6
ZSgpOworICAgIHJldHVybiB0b0ltcGwoc3RyaW5nUmVmKS0+c3RyaW5nVmlldygpLmxlbmd0aCgp
ICogMyArIDE7CiB9CiAKIHNpemVfdCBXS1N0cmluZ0dldFVURjhDU3RyaW5nKFdLU3RyaW5nUmVm
IHN0cmluZ1JlZiwgY2hhciogYnVmZmVyLCBzaXplX3QgYnVmZmVyU2l6ZSkKIHsKLSAgICByZXR1
cm4gdG9JbXBsKHN0cmluZ1JlZiktPmdldFVURjhDU3RyaW5nKGJ1ZmZlciwgYnVmZmVyU2l6ZSk7
CisgICAgaWYgKCFidWZmZXJTaXplKQorICAgICAgICByZXR1cm4gMDsKKworICAgIGF1dG8gc3Ry
aW5nVmlldyA9IHRvSW1wbChzdHJpbmdSZWYpLT5zdHJpbmdWaWV3KCk7CisKKyAgICBjaGFyKiBw
ID0gYnVmZmVyOworICAgIFdURjo6VW5pY29kZTo6Q29udmVyc2lvblJlc3VsdCByZXN1bHQ7CisK
KyAgICBpZiAoc3RyaW5nVmlldy5pczhCaXQoKSkgeworICAgICAgICBjb25zdCBMQ2hhciogY2hh
cmFjdGVycyA9IHN0cmluZ1ZpZXcuY2hhcmFjdGVyczgoKTsKKyAgICAgICAgcmVzdWx0ID0gV1RG
OjpVbmljb2RlOjpjb252ZXJ0TGF0aW4xVG9VVEY4KCZjaGFyYWN0ZXJzLCBjaGFyYWN0ZXJzICsg
c3RyaW5nVmlldy5sZW5ndGgoKSwgJnAsIHAgKyBidWZmZXJTaXplIC0gMSk7CisgICAgfSBlbHNl
IHsKKyAgICAgICAgY29uc3QgVUNoYXIqIGNoYXJhY3RlcnMgPSBzdHJpbmdWaWV3LmNoYXJhY3Rl
cnMxNigpOworICAgICAgICByZXN1bHQgPSBXVEY6OlVuaWNvZGU6OmNvbnZlcnRVVEYxNlRvVVRG
OCgmY2hhcmFjdGVycywgY2hhcmFjdGVycyArIHN0cmluZ1ZpZXcubGVuZ3RoKCksICZwLCBwICsg
YnVmZmVyU2l6ZSAtIDEsIC8qIHN0cmljdCAqLyB0cnVlKTsKKyAgICB9CisKKyAgICBpZiAocmVz
dWx0ICE9IFdURjo6VW5pY29kZTo6Y29udmVyc2lvbk9LICYmIHJlc3VsdCAhPSBXVEY6OlVuaWNv
ZGU6OnRhcmdldEV4aGF1c3RlZCkKKyAgICAgICAgcmV0dXJuIDA7CisKKyAgICAqcCsrID0gJ1ww
JzsKKyAgICByZXR1cm4gcCAtIGJ1ZmZlcjsKIH0KIAogYm9vbCBXS1N0cmluZ0lzRXF1YWwoV0tT
dHJpbmdSZWYgYVJlZiwgV0tTdHJpbmdSZWYgYlJlZikKIHsKLSAgICByZXR1cm4gdG9JbXBsKGFS
ZWYpLT5lcXVhbCh0b0ltcGwoYlJlZikpOworICAgIHJldHVybiB0b0ltcGwoYVJlZiktPnN0cmlu
Z1ZpZXcoKSA9PSB0b0ltcGwoYlJlZiktPnN0cmluZ1ZpZXcoKTsKIH0KIAogYm9vbCBXS1N0cmlu
Z0lzRXF1YWxUb1VURjhDU3RyaW5nKFdLU3RyaW5nUmVmIGFSZWYsIGNvbnN0IGNoYXIqIGIpCiB7
Ci0gICAgcmV0dXJuIHRvSW1wbChhUmVmKS0+ZXF1YWxUb1VURjhTdHJpbmcoYik7CisgICAgcmV0
dXJuIHRvSW1wbChhUmVmKS0+c3RyaW5nVmlldygpID09IFdURjo6U3RyaW5nOjpmcm9tVVRGOChi
KTsKIH0KIAogYm9vbCBXS1N0cmluZ0lzRXF1YWxUb1VURjhDU3RyaW5nSWdub3JpbmdDYXNlKFdL
U3RyaW5nUmVmIGFSZWYsIGNvbnN0IGNoYXIqIGIpCiB7Ci0gICAgcmV0dXJuIHRvSW1wbChhUmVm
KS0+ZXF1YWxUb1VURjhTdHJpbmdJZ25vcmluZ0Nhc2UoYik7CisgICAgLy8gRklYTUU6IEluc3Rl
YWQgb2YgY29weWluZyB0aGUgc3RyaW5nIGhlcmUsIHdlIHNob3VsZCBhZGQgYSB2ZXJzaW9uIG9m
IGVxdWFsSWdub3JpbmdDYXNlIHRoYXQgdGFrZXMgU3RyaW5nVmlld3MuCisgICAgcmV0dXJuIGVx
dWFsSWdub3JpbmdDYXNlKHRvSW1wbChhUmVmKS0+c3RyaW5nKCksIFdURjo6U3RyaW5nOjpmcm9t
VVRGOChiKSk7CiB9CiAKIFdLU3RyaW5nUmVmIFdLU3RyaW5nQ3JlYXRlV2l0aEpTU3RyaW5nKEpT
U3RyaW5nUmVmIGpzU3RyaW5nUmVmKQo=
</data>
<flag name="review"
          id="271936"
          type_id="1"
          status="+"
          setter="bdakin"
    />
          </attachment>
      

    </bug>

</bugzilla>