<?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>42847</bug_id>
          
          <creation_ts>2010-07-22 13:45:56 -0700</creation_ts>
          <short_desc>Eliminate unneeded WKBundleFrameCopyInnerText function from WebKit2</short_desc>
          <delta_ts>2010-07-25 23:05:00 -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>WebKit2</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="Darin Adler">darin</reporter>
          <assigned_to name="Darin Adler">darin</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>254962</commentid>
    <comment_count>0</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-07-22 13:45:56 -0700</bug_when>
    <thetext>Eliminate unneeded WKBundleFrameCopyInnerText function from WebKit2</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>255046</commentid>
    <comment_count>1</comment_count>
      <attachid>62355</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-07-22 16:20:43 -0700</bug_when>
    <thetext>Created attachment 62355
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>255093</commentid>
    <comment_count>2</comment_count>
      <attachid>62355</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2010-07-22 17:20:18 -0700</bug_when>
    <thetext>Comment on attachment 62355
Patch

Nice. r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>255189</commentid>
    <comment_count>3</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2010-07-22 20:47:12 -0700</bug_when>
    <thetext>Committed a much-refined version of this as &lt;http://trac.webkit.org/changeset/63949&gt;.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>62355</attachid>
            <date>2010-07-22 16:20:43 -0700</date>
            <delta_ts>2010-07-22 17:20:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-42847-20100722162042.patch</filename>
            <type>text/plain</type>
            <size>14186</size>
            <attacher name="Darin Adler">darin</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MzkwOSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNyBAQAorMjAxMC0wNy0yMiAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+
CisKKyAgICAgICAgKiBXZWJDb3JlLnhjb2RlcHJvai9wcm9qZWN0LnBieHByb2o6IEFsbG93ZWQg
WGNvZGUgdG8gZWRpdCB0aGlzIGZpbGUuCisKIDIwMTAtMDctMjAgIEplc3NpZSBCZXJsaW4gIDxq
YmVybGluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KSW5k
ZXg6IFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCShyZXZpc2lvbiA2
MzkwNykKKysrIFdlYkNvcmUvV2ViQ29yZS54Y29kZXByb2ovcHJvamVjdC5wYnhwcm9qCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xOTkwMiw3ICsxOTkwMiw2IEBACiAJCQlpc2EgPSBQQlhQcm9qZWN0Owog
CQkJYnVpbGRDb25maWd1cmF0aW9uTGlzdCA9IDE0OUMyODQzMDg5MDJCMTEwMDhBOUVGQyAvKiBC
dWlsZCBjb25maWd1cmF0aW9uIGxpc3QgZm9yIFBCWFByb2plY3QgIldlYkNvcmUiICovOwogCQkJ
Y29tcGF0aWJpbGl0eVZlcnNpb24gPSAiWGNvZGUgMi40IjsKLQkJCWRldmVsb3BtZW50UmVnaW9u
ID0gRW5nbGlzaDsKIAkJCWhhc1NjYW5uZWRGb3JFbmNvZGluZ3MgPSAxOwogCQkJa25vd25SZWdp
b25zID0gKAogCQkJCUVuZ2xpc2gsCkluZGV4OiBXZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJLaXQyL0NoYW5nZUxvZwkocmV2aXNpb24gNjM5MDkpCisrKyBXZWJLaXQyL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBACisyMDEwLTA3LTIyICBEYXJpbiBB
ZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBFbGltaW5hdGUgdW5uZWVkZWQgV0tCdW5kbGVGcmFtZUNvcHlJbm5l
clRleHQgZnVuY3Rpb24gZnJvbSBXZWJLaXQyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD00Mjg0NworCisgICAgICAgICogV2ViUHJvY2Vzcy9JbmplY3Rl
ZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZUZyYW1lLmNwcDogUmVtb3ZlZCBXS0J1bmRsZUZyYW1lQ29w
eUlubmVyVGV4dC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dL
QnVuZGxlRnJhbWUuaDogRGl0dG8uCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkZy
YW1lLmNwcDogUmVtb3ZlZCBpbm5lclRleHQuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdl
L1dlYkZyYW1lLmg6IERpdHRvLgorCiAyMDEwLTA3LTIyICBTYW0gV2VpbmlnICA8c2FtQHdlYmtp
dC5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQW5kZXJzIENhcmxzc29uLgpJbmRleDogV2Vi
S2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxlRnJhbWUuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFdlYktpdDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1
bmRsZUZyYW1lLmNwcAkocmV2aXNpb24gNjM5MDcpCisrKyBXZWJLaXQyL1dlYlByb2Nlc3MvSW5q
ZWN0ZWRCdW5kbGUvQVBJL2MvV0tCdW5kbGVGcmFtZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ0
LDEzICs0NCw2IEBAIFdLVVJMUmVmIFdLQnVuZGxlRnJhbWVHZXRVUkwoV0tCdW5kbGVGcmEKICAg
ICByZXR1cm4gdG9VUkxSZWYodG9XSyhmcmFtZVJlZiktPnVybCgpLmltcGwoKSk7CiB9CiAKLVdL
U3RyaW5nUmVmIFdLQnVuZGxlRnJhbWVDb3B5SW5uZXJUZXh0KFdLQnVuZGxlRnJhbWVSZWYgZnJh
bWVSZWYpCi17Ci0gICAgV2ViQ29yZTo6U3RyaW5nIHN0cmluZyA9IHRvV0soZnJhbWVSZWYpLT5p
bm5lclRleHQoKTsKLSAgICBzdHJpbmcuaW1wbCgpLT5yZWYoKTsKLSAgICByZXR1cm4gdG9SZWYo
c3RyaW5nLmltcGwoKSk7Ci19Ci0KIFdLQXJyYXlSZWYgV0tCdW5kbGVGcmFtZUNvcHlDaGlsZEZy
YW1lcyhXS0J1bmRsZUZyYW1lUmVmIGZyYW1lUmVmKQogewogICAgIHJldHVybiB0b1JlZih0b1dL
KGZyYW1lUmVmKS0+Y2hpbGRGcmFtZXMoKS5yZWxlYXNlUmVmKCkpOyAgICAKSW5kZXg6IFdlYktp
dDIvV2ViUHJvY2Vzcy9JbmplY3RlZEJ1bmRsZS9BUEkvYy9XS0J1bmRsZUZyYW1lLmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViS2l0Mi9XZWJQcm9jZXNzL0luamVjdGVkQnVuZGxlL0FQSS9jL1dLQnVuZGxl
RnJhbWUuaAkocmV2aXNpb24gNjM5MDcpCisrKyBXZWJLaXQyL1dlYlByb2Nlc3MvSW5qZWN0ZWRC
dW5kbGUvQVBJL2MvV0tCdW5kbGVGcmFtZS5oCSh3b3JraW5nIGNvcHkpCkBAIC00NCw4ICs0NCw2
IEBAIFdLX0VYUE9SVCBKU0dsb2JhbENvbnRleHRSZWYgV0tCdW5kbGVGcmEKIAogV0tfRVhQT1JU
IFdLVVJMUmVmIFdLQnVuZGxlRnJhbWVHZXRVUkwoV0tCdW5kbGVGcmFtZVJlZiBmcmFtZSk7CiAK
LVdLX0VYUE9SVCBXS1N0cmluZ1JlZiBXS0J1bmRsZUZyYW1lQ29weUlubmVyVGV4dChXS0J1bmRs
ZUZyYW1lUmVmIGZyYW1lKTsKLQogV0tfRVhQT1JUIFdLQXJyYXlSZWYgV0tCdW5kbGVGcmFtZUNv
cHlDaGlsZEZyYW1lcyhXS0J1bmRsZUZyYW1lUmVmIGZyYW1lKTsKIAogV0tfRVhQT1JUIHVuc2ln
bmVkIFdLQnVuZGxlRnJhbWVHZXROdW1iZXJPZkFjdGl2ZUFuaW1hdGlvbnMoV0tCdW5kbGVGcmFt
ZVJlZiBmcmFtZSk7CkluZGV4OiBXZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJGcmFtZS5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUuY3Bw
CShyZXZpc2lvbiA2MzkwNykKKysrIFdlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkZyYW1l
LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTc5LDE0ICsxNzksNiBAQCBTdHJpbmcgV2ViRnJhbWU6
OnVybCgpIGNvbnN0CiAgICAgcmV0dXJuIG1fY29yZUZyYW1lLT5sb2FkZXIoKS0+dXJsKCkuc3Ry
aW5nKCk7CiB9CiAKLVN0cmluZyBXZWJGcmFtZTo6aW5uZXJUZXh0KCkgY29uc3QKLXsKLSAgICBp
ZiAoIW1fY29yZUZyYW1lKQotICAgICAgICByZXR1cm4gU3RyaW5nKCk7Ci0KLSAgICByZXR1cm4g
bV9jb3JlRnJhbWUtPmRvY3VtZW50KCktPmRvY3VtZW50RWxlbWVudCgpLT5pbm5lclRleHQoKTsK
LX0KLQogc3RhdGljIHZvaWQgY2hpbGRGcmFtZVJlZihjb25zdCB2b2lkKiBmcmFtZSkKIHsKICAg
ICBzdGF0aWNfY2FzdDxXZWJGcmFtZSo+KGNvbnN0X2Nhc3Q8dm9pZCo+KGZyYW1lKSktPnJlZigp
OwpJbmRleDogV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViRnJhbWUuaAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJGcmFtZS5oCShyZXZpc2lvbiA2Mzkw
NykKKysrIFdlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYkZyYW1lLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTY3LDcgKzY3LDYgQEAgcHVibGljOgogICAgIGJvb2wgaXNNYWluRnJhbWUoKSBjb25z
dDsKICAgICBXZWJDb3JlOjpTdHJpbmcgbmFtZSgpIGNvbnN0OwogICAgIFdlYkNvcmU6OlN0cmlu
ZyB1cmwoKSBjb25zdDsKLSAgICBXZWJDb3JlOjpTdHJpbmcgaW5uZXJUZXh0KCkgY29uc3Q7CiAg
ICAgUGFzc1JlZlB0cjxJbW11dGFibGVBcnJheT4gY2hpbGRGcmFtZXMoKTsKIAogICAgIHVuc2ln
bmVkIG51bWJlck9mQWN0aXZlQW5pbWF0aW9ucygpOwpJbmRleDogV2ViS2l0VG9vbHMvQ2hhbmdl
TG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gNjM5MDkp
CisrKyBXZWJLaXRUb29scy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwzMSBA
QAorMjAxMC0wNy0yMiAgRGFyaW4gQWRsZXIgIDxkYXJpbkBhcHBsZS5jb20+CisKKyAgICAgICAg
UmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRWxpbWluYXRlIHVubmVlZGVk
IFdLQnVuZGxlRnJhbWVDb3B5SW5uZXJUZXh0IGZ1bmN0aW9uIGZyb20gV2ViS2l0MgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDI4NDcKKworICAgICAg
ICAqIFdlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQYWdlLmNw
cDoKKyAgICAgICAgKFdUUjo6ZW1wdHlTdHJpbmcpOiBBZGRlZC4KKyAgICAgICAgKFdUUjo6VVRG
OCk6IFJlbmFtZWQgdGhpcyBmaWxlLWxvY2FsIGhlbHBlciBmdW5jdGlvbiBmcm9tIFdLU3RyaW5n
VG9VVEY4CisgICAgICAgIHRvIFVURjgsIGFuZCBhZGRlZCBhbiBvdmVybG9hZCB0aGF0IHdvcmtz
IG9uIGEgSlNTdHJpbmdSZWYuCisgICAgICAgIChXVFI6OnByb3BlcnR5VmFsdWUpOiBBZGRlZC4K
KyAgICAgICAgKFdUUjo6cHJvcGVydHlPYmplY3QpOiBBZGRlZC4KKyAgICAgICAgKFdUUjo6cHJv
cGVydHlTdHJpbmcpOiBBZGRlZC4KKyAgICAgICAgKFdUUjo6d2luZG93UHJvcGVydHlWYWx1ZSk6
IEFkZGVkLiBGYWN0b3JzIG91dCB0aGUgdHlwZS1pbmRlcGVuZGVudCBwYXJ0LgorICAgICAgICAo
V1RSOjpudW1lcmljV2luZG93UHJvcGVydHlWYWx1ZSk6IENoYW5nZWQgdG8gY2FsbCB3aW5kb3dQ
cm9wZXJ0eVZhbHVlLgorICAgICAgICAoV1RSOjpzdHJpbmdXaW5kb3dQcm9wZXJ0eVZhbHVlKTog
QWRkZWQuCisgICAgICAgIChXVFI6OmR1bXBGcmFtZVNjcm9sbFBvc2l0aW9uKTogVXBkYXRlIFdL
U3RyaW5nVG9VVEY4IGNhbGwgdG8gdXNlIG5ldyBuYW1lIFVURjguCisgICAgICAgIChXVFI6OmR1
bXBGcmFtZVRleHQpOiBVc2Ugc3RyaW5nV2luZG93UHJvcGVydHlWYWx1ZSBpbnN0ZWFkIG9mCisg
ICAgICAgIFdLQnVuZGxlRnJhbWVDb3B5SW5uZXJUZXh0LgorICAgICAgICAoV1RSOjpkdW1wRGVz
Y2VuZGFudEZyYW1lc1RleHQpOiBVcGRhdGUgV0tTdHJpbmdUb1VURjggY2FsbCB0byB1c2UgbmV3
IG5hbWUgVVRGOC4KKyAgICAgICAgKFdUUjo6SW5qZWN0ZWRCdW5kbGVQYWdlOjpkdW1wKTogRGl0
dG8uCisgICAgICAgIChXVFI6OkluamVjdGVkQnVuZGxlUGFnZTo6d2lsbEFkZE1lc3NhZ2VUb0Nv
bnNvbGUpOiBEaXR0by4KKyAgICAgICAgKFdUUjo6SW5qZWN0ZWRCdW5kbGVQYWdlOjp3aWxsU2V0
U3RhdHVzYmFyVGV4dCk6IERpdHRvLgorICAgICAgICAoV1RSOjpJbmplY3RlZEJ1bmRsZVBhZ2U6
OndpbGxSdW5KYXZhU2NyaXB0QWxlcnQpOiBEaXR0by4KKyAgICAgICAgKFdUUjo6SW5qZWN0ZWRC
dW5kbGVQYWdlOjp3aWxsUnVuSmF2YVNjcmlwdENvbmZpcm0pOiBEaXR0by4KKyAgICAgICAgKFdU
Ujo6SW5qZWN0ZWRCdW5kbGVQYWdlOjp3aWxsUnVuSmF2YVNjcmlwdFByb21wdCk6IERpdHRvLgor
CiAyMDEwLTA3LTIyICBEYXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAgICBS
ZXZpZXdlZCBieSBTYW0gV2VpbmlnLgpJbmRleDogV2ViS2l0VG9vbHMvV2ViS2l0VGVzdFJ1bm5l
ci9JbmplY3RlZEJ1bmRsZS9JbmplY3RlZEJ1bmRsZVBhZ2UuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YktpdFRvb2xzL1dlYktpdFRlc3RSdW5uZXIvSW5qZWN0ZWRCdW5kbGUvSW5qZWN0ZWRCdW5kbGVQ
YWdlLmNwcAkocmV2aXNpb24gNjM5MDcpCisrKyBXZWJLaXRUb29scy9XZWJLaXRUZXN0UnVubmVy
L0luamVjdGVkQnVuZGxlL0luamVjdGVkQnVuZGxlUGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAg
LTM5LDE2ICszOSwzNCBAQAogCiBuYW1lc3BhY2UgV1RSIHsKIAotc3RhdGljIFBhc3NPd25QdHI8
VmVjdG9yPGNoYXI+ID4gV0tTdHJpbmdUb1VURjgoV0tTdHJpbmdSZWYgd2tTdHJpbmdSZWYpCitz
dGF0aWMgUGFzc093blB0cjxWZWN0b3I8Y2hhcj4gPiBlbXB0eVN0cmluZygpCiB7CisgICAgT3du
UHRyPFZlY3RvcjxjaGFyPiA+IGJ1ZmZlcihuZXcgVmVjdG9yPGNoYXI+KDEpKTsKKyAgICAoKmJ1
ZmZlcilbMF0gPSAwOworICAgIHJldHVybiBidWZmZXIucmVsZWFzZSgpOworfQorCitzdGF0aWMg
UGFzc093blB0cjxWZWN0b3I8Y2hhcj4gPiBVVEY4KFdLU3RyaW5nUmVmIHdrU3RyaW5nUmVmKQor
eworICAgIGlmICghd2tTdHJpbmdSZWYpCisgICAgICAgIHJldHVybiBlbXB0eVN0cmluZygpOwog
ICAgIFJldGFpblB0cjxDRlN0cmluZ1JlZj4gY2ZTdHJpbmcoQWRvcHRDRiwgV0tTdHJpbmdDb3B5
Q0ZTdHJpbmcoMCwgd2tTdHJpbmdSZWYpKTsKICAgICBDRkluZGV4IGJ1ZmZlckxlbmd0aCA9IENG
U3RyaW5nR2V0TWF4aW11bVNpemVGb3JFbmNvZGluZyhDRlN0cmluZ0dldExlbmd0aChjZlN0cmlu
Zy5nZXQoKSksIGtDRlN0cmluZ0VuY29kaW5nVVRGOCkgKyAxOwogICAgIE93blB0cjxWZWN0b3I8
Y2hhcj4gPiBidWZmZXIobmV3IFZlY3RvcjxjaGFyPihidWZmZXJMZW5ndGgpKTsKLSAgICBpZiAo
IUNGU3RyaW5nR2V0Q1N0cmluZyhjZlN0cmluZy5nZXQoKSwgYnVmZmVyLT5kYXRhKCksIGJ1ZmZl
ckxlbmd0aCwga0NGU3RyaW5nRW5jb2RpbmdVVEY4KSkgewotICAgICAgICBidWZmZXItPnNocmlu
aygxKTsKLSAgICAgICAgKCpidWZmZXIpWzBdID0gMDsKLSAgICB9IGVsc2UKLSAgICAgICAgYnVm
ZmVyLT5zaHJpbmsoc3RybGVuKGJ1ZmZlci0+ZGF0YSgpKSArIDEpOworICAgIGlmICghQ0ZTdHJp
bmdHZXRDU3RyaW5nKGNmU3RyaW5nLmdldCgpLCBidWZmZXItPmRhdGEoKSwgYnVmZmVyTGVuZ3Ro
LCBrQ0ZTdHJpbmdFbmNvZGluZ1VURjgpKQorICAgICAgICByZXR1cm4gZW1wdHlTdHJpbmcoKTsK
KyAgICBidWZmZXItPnNocmluayhzdHJsZW4oYnVmZmVyLT5kYXRhKCkpICsgMSk7CisgICAgcmV0
dXJuIGJ1ZmZlci5yZWxlYXNlKCk7Cit9CisKK3N0YXRpYyBQYXNzT3duUHRyPFZlY3RvcjxjaGFy
PiA+IFVURjgoSlNTdHJpbmdSZWYgc3RyaW5nKQoreworICAgIGlmICghc3RyaW5nKQorICAgICAg
ICByZXR1cm4gZW1wdHlTdHJpbmcoKTsKKyAgICBDRkluZGV4IGJ1ZmZlckxlbmd0aCA9IEpTU3Ry
aW5nR2V0TWF4aW11bVVURjhDU3RyaW5nU2l6ZShzdHJpbmcpICsgMTsKKyAgICBPd25QdHI8VmVj
dG9yPGNoYXI+ID4gYnVmZmVyKG5ldyBWZWN0b3I8Y2hhcj4oYnVmZmVyTGVuZ3RoKSk7CisgICAg
c2l6ZV90IGxlbmd0aCA9IEpTU3RyaW5nR2V0VVRGOENTdHJpbmcoc3RyaW5nLCBidWZmZXItPmRh
dGEoKSwgYnVmZmVyTGVuZ3RoKTsKKyAgICBidWZmZXItPnNocmluayhsZW5ndGggKyAxKTsKICAg
ICByZXR1cm4gYnVmZmVyLnJlbGVhc2UoKTsKIH0KIApAQCAtMTQ2LDE1ICsxNjQsMzcgQEAgdm9p
ZCBJbmplY3RlZEJ1bmRsZVBhZ2U6OmRpZENvbW1pdExvYWRGbwogewogfQogCitzdGF0aWMgSlNW
YWx1ZVJlZiBwcm9wZXJ0eVZhbHVlKEpTQ29udGV4dFJlZiBjb250ZXh0LCBKU09iamVjdFJlZiBv
YmplY3QsIGNvbnN0IGNoYXIqIHByb3BlcnR5TmFtZSkKK3sKKyAgICBKU1JldGFpblB0cjxKU1N0
cmluZ1JlZj4gcHJvcGVydHlOYW1lU3RyaW5nKEFkb3B0LCBKU1N0cmluZ0NyZWF0ZVdpdGhVVEY4
Q1N0cmluZyhwcm9wZXJ0eU5hbWUpKTsKKyAgICBKU1ZhbHVlUmVmIGV4Y2VwdGlvbjsKKyAgICBy
ZXR1cm4gSlNPYmplY3RHZXRQcm9wZXJ0eShjb250ZXh0LCBvYmplY3QsIHByb3BlcnR5TmFtZVN0
cmluZy5nZXQoKSwgJmV4Y2VwdGlvbik7Cit9CisKK3N0YXRpYyBKU09iamVjdFJlZiBwcm9wZXJ0
eU9iamVjdChKU0NvbnRleHRSZWYgY29udGV4dCwgSlNPYmplY3RSZWYgb2JqZWN0LCBjb25zdCBj
aGFyKiBwcm9wZXJ0eU5hbWUpCit7CisgICAgSlNWYWx1ZVJlZiB2YWx1ZSA9IHByb3BlcnR5VmFs
dWUoY29udGV4dCwgb2JqZWN0LCBwcm9wZXJ0eU5hbWUpOworICAgIGlmICghdmFsdWUgfHwgIUpT
VmFsdWVJc09iamVjdChjb250ZXh0LCB2YWx1ZSkpCisgICAgICAgIHJldHVybiAwOworICAgIHJl
dHVybiBjb25zdF9jYXN0PEpTT2JqZWN0UmVmPih2YWx1ZSk7Cit9CisKK3N0YXRpYyBKU1JldGFp
blB0cjxKU1N0cmluZ1JlZj4gcHJvcGVydHlTdHJpbmcoSlNDb250ZXh0UmVmIGNvbnRleHQsIEpT
T2JqZWN0UmVmIG9iamVjdCwgY29uc3QgY2hhciogcHJvcGVydHlOYW1lKQoreworICAgIEpTVmFs
dWVSZWYgdmFsdWUgPSBwcm9wZXJ0eVZhbHVlKGNvbnRleHQsIG9iamVjdCwgcHJvcGVydHlOYW1l
KTsKKyAgICBpZiAoIXZhbHVlKQorICAgICAgICByZXR1cm4gMDsKKyAgICBKU1ZhbHVlUmVmIGV4
Y2VwdGlvbjsKKyAgICByZXR1cm4gSlNSZXRhaW5QdHI8SlNTdHJpbmdSZWY+KEFkb3B0LCBKU1Zh
bHVlVG9TdHJpbmdDb3B5KGNvbnRleHQsIHZhbHVlLCAmZXhjZXB0aW9uKSk7Cit9CisKIHN0YXRp
YyBkb3VibGUgbnVtZXJpY1dpbmRvd1Byb3BlcnR5VmFsdWUoV0tCdW5kbGVGcmFtZVJlZiBmcmFt
ZSwgY29uc3QgY2hhciogcHJvcGVydHlOYW1lKQogewogICAgIEpTR2xvYmFsQ29udGV4dFJlZiBj
b250ZXh0ID0gV0tCdW5kbGVGcmFtZUdldEphdmFTY3JpcHRDb250ZXh0KGZyYW1lKTsKLSAgICBK
U09iamVjdFJlZiB3aW5kb3cgPSBKU0NvbnRleHRHZXRHbG9iYWxPYmplY3QoY29udGV4dCk7Ci0g
ICAgSlNWYWx1ZVJlZiBleGNlcHRpb24gPSAwOwotICAgIEpTUmV0YWluUHRyPEpTU3RyaW5nUmVm
PiBwcm9wZXJ0eU5hbWVTdHJpbmcoQWRvcHQsIEpTU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5n
KHByb3BlcnR5TmFtZSkpOwotICAgIEpTVmFsdWVSZWYgdmFsdWUgPSBKU09iamVjdEdldFByb3Bl
cnR5KGNvbnRleHQsIHdpbmRvdywgcHJvcGVydHlOYW1lU3RyaW5nLmdldCgpLCAmZXhjZXB0aW9u
KTsKLSAgICBpZiAoZXhjZXB0aW9uKQorICAgIEpTVmFsdWVSZWYgdmFsdWUgPSBwcm9wZXJ0eVZh
bHVlKGNvbnRleHQsIEpTQ29udGV4dEdldEdsb2JhbE9iamVjdChjb250ZXh0KSwgcHJvcGVydHlO
YW1lKTsKKyAgICBpZiAoIXZhbHVlKQogICAgICAgICByZXR1cm4gMDsKKyAgICBKU1ZhbHVlUmVm
IGV4Y2VwdGlvbjsKICAgICByZXR1cm4gSlNWYWx1ZVRvTnVtYmVyKGNvbnRleHQsIHZhbHVlLCAm
ZXhjZXB0aW9uKTsKIH0KIApAQCAtMTY3LDcgKzIwNyw3IEBAIHN0YXRpYyB2b2lkIGR1bXBGcmFt
ZVNjcm9sbFBvc2l0aW9uKFdLQnUKICAgICBpZiAoZmFicyh4KSA+IDAuMDAwMDAwMDEgfHwgZmFi
cyh5KSA+IDAuMDAwMDAwMDEpIHsKICAgICAgICAgaWYgKHNob3VsZEluY2x1ZGVGcmFtZU5hbWUp
IHsKICAgICAgICAgICAgIFdLUmV0YWluUHRyPFdLU3RyaW5nUmVmPiBuYW1lKEFkb3B0V0ssIFdL
QnVuZGxlRnJhbWVDb3B5TmFtZShmcmFtZSkpOwotICAgICAgICAgICAgSW5qZWN0ZWRCdW5kbGU6
OnNoYXJlZCgpLm9zKCkgPDwgImZyYW1lICciIDw8IFdLU3RyaW5nVG9VVEY4KG5hbWUuZ2V0KCkp
LT5kYXRhKCkgPDwgIicgIjsKKyAgICAgICAgICAgIEluamVjdGVkQnVuZGxlOjpzaGFyZWQoKS5v
cygpIDw8ICJmcmFtZSAnIiA8PCBVVEY4KG5hbWUuZ2V0KCkpLT5kYXRhKCkgPDwgIicgIjsKICAg
ICAgICAgfQogICAgICAgICBJbmplY3RlZEJ1bmRsZTo6c2hhcmVkKCkub3MoKSA8PCAic2Nyb2xs
ZWQgdG8gIiA8PCB4IDw8ICIsIiA8PCB5IDw8ICJcbiI7CiAgICAgfQpAQCAtMTkyLDEwICsyMzIs
MjEgQEAgdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2U6OmR1bXBBbGxGcmFtZVNjcgogICAgIGR1bXBE
ZXNjZW5kYW50RnJhbWVTY3JvbGxQb3NpdGlvbnMoZnJhbWUpOwogfQogCitzdGF0aWMgSlNSZXRh
aW5QdHI8SlNTdHJpbmdSZWY+IGZyYW1lVGV4dChXS0J1bmRsZUZyYW1lUmVmIGZyYW1lKQorewor
ICAgIEpTR2xvYmFsQ29udGV4dFJlZiBjb250ZXh0ID0gV0tCdW5kbGVGcmFtZUdldEphdmFTY3Jp
cHRDb250ZXh0KGZyYW1lKTsKKyAgICBKU09iamVjdFJlZiBkb2N1bWVudCA9IHByb3BlcnR5T2Jq
ZWN0KGNvbnRleHQsIEpTQ29udGV4dEdldEdsb2JhbE9iamVjdChjb250ZXh0KSwgImRvY3VtZW50
Iik7CisgICAgaWYgKCFkb2N1bWVudCkKKyAgICAgICAgcmV0dXJuIDA7CisgICAgSlNPYmplY3RS
ZWYgZG9jdW1lbnRFbGVtZW50ID0gcHJvcGVydHlPYmplY3QoY29udGV4dCwgZG9jdW1lbnQsICJk
b2N1bWVudEVsZW1lbnQiKTsKKyAgICBpZiAoIWRvY3VtZW50RWxlbWVudCkKKyAgICAgICAgcmV0
dXJuIDA7CisgICAgcmV0dXJuIHByb3BlcnR5U3RyaW5nKGNvbnRleHQsIGRvY3VtZW50RWxlbWVu
dCwgImlubmVyVGV4dCIpOworfQorCiBzdGF0aWMgdm9pZCBkdW1wRnJhbWVUZXh0KFdLQnVuZGxl
RnJhbWVSZWYgZnJhbWUpCiB7Ci0gICAgV0tSZXRhaW5QdHI8V0tTdHJpbmdSZWY+IHRleHQoQWRv
cHRXSywgV0tCdW5kbGVGcmFtZUNvcHlJbm5lclRleHQoZnJhbWUpKTsKLSAgICBJbmplY3RlZEJ1
bmRsZTo6c2hhcmVkKCkub3MoKSA8PCBXS1N0cmluZ1RvVVRGOCh0ZXh0LmdldCgpKS0+ZGF0YSgp
IDw8ICJcbiI7CisgICAgSW5qZWN0ZWRCdW5kbGU6OnNoYXJlZCgpLm9zKCkgPDwgVVRGOChmcmFt
ZVRleHQoZnJhbWUpLmdldCgpKS0+ZGF0YSgpIDw8ICJcbiI7CiB9CiAKIHN0YXRpYyB2b2lkIGR1
bXBEZXNjZW5kYW50RnJhbWVzVGV4dChXS0J1bmRsZUZyYW1lUmVmIGZyYW1lKQpAQCAtMjA2LDcg
KzI1Nyw3IEBAIHN0YXRpYyB2b2lkIGR1bXBEZXNjZW5kYW50RnJhbWVzVGV4dChXS0IKICAgICAg
ICAgLy8gRklYTUU6IEkgZG9uJ3QgbGlrZSB0aGF0IHdlIGhhdmUgdG8gY29uc3RfY2FzdCBoZXJl
LiBDYW4gd2UgY2hhbmdlIFdLQXJyYXk/CiAgICAgICAgIFdLQnVuZGxlRnJhbWVSZWYgc3ViZnJh
bWUgPSBzdGF0aWNfY2FzdDxXS0J1bmRsZUZyYW1lUmVmPihjb25zdF9jYXN0PHZvaWQqPihXS0Fy
cmF5R2V0SXRlbUF0SW5kZXgoY2hpbGRGcmFtZXMuZ2V0KCksIGkpKSk7CiAgICAgICAgIFdLUmV0
YWluUHRyPFdLU3RyaW5nUmVmPiBzdWJmcmFtZU5hbWUoQWRvcHRXSywgV0tCdW5kbGVGcmFtZUNv
cHlOYW1lKHN1YmZyYW1lKSk7Ci0gICAgICAgIEluamVjdGVkQnVuZGxlOjpzaGFyZWQoKS5vcygp
IDw8ICJcbi0tLS0tLS0tXG5GcmFtZTogJyIgPDwgV0tTdHJpbmdUb1VURjgoc3ViZnJhbWVOYW1l
LmdldCgpKS0+ZGF0YSgpIDw8ICInXG4tLS0tLS0tLVxuIjsKKyAgICAgICAgSW5qZWN0ZWRCdW5k
bGU6OnNoYXJlZCgpLm9zKCkgPDwgIlxuLS0tLS0tLS1cbkZyYW1lOiAnIiA8PCBVVEY4KHN1YmZy
YW1lTmFtZS5nZXQoKSktPmRhdGEoKSA8PCAiJ1xuLS0tLS0tLS1cbiI7CiAgICAgICAgIGR1bXBG
cmFtZVRleHQoc3ViZnJhbWUpOwogICAgICAgICBkdW1wRGVzY2VuZGFudEZyYW1lc1RleHQoc3Vi
ZnJhbWUpOwogICAgIH0KQEAgLTIyNiw3ICsyNzcsNyBAQCB2b2lkIEluamVjdGVkQnVuZGxlUGFn
ZTo6ZHVtcCgpCiAgICAgc3dpdGNoIChJbmplY3RlZEJ1bmRsZTo6c2hhcmVkKCkubGF5b3V0VGVz
dENvbnRyb2xsZXIoKS0+d2hhdFRvRHVtcCgpKSB7CiAgICAgY2FzZSBMYXlvdXRUZXN0Q29udHJv
bGxlcjo6UmVuZGVyVHJlZTogewogICAgICAgICBXS1JldGFpblB0cjxXS1N0cmluZ1JlZj4gdGV4
dChBZG9wdFdLLCBXS0J1bmRsZVBhZ2VDb3B5UmVuZGVyVHJlZUV4dGVybmFsUmVwcmVzZW50YXRp
b24obV9wYWdlKSk7Ci0gICAgICAgIEluamVjdGVkQnVuZGxlOjpzaGFyZWQoKS5vcygpIDw8IFdL
U3RyaW5nVG9VVEY4KHRleHQuZ2V0KCkpLT5kYXRhKCk7CisgICAgICAgIEluamVjdGVkQnVuZGxl
OjpzaGFyZWQoKS5vcygpIDw8IFVURjgodGV4dC5nZXQoKSktPmRhdGEoKTsKICAgICAgICAgYnJl
YWs7CiAgICAgfQogICAgIGNhc2UgTGF5b3V0VGVzdENvbnRyb2xsZXI6Ok1haW5GcmFtZVRleHQ6
CkBAIC0zMDgsNyArMzU5LDcgQEAgdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2U6Ol93aWxsUnVuSmF2
YVNjcgogdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2U6OndpbGxBZGRNZXNzYWdlVG9Db25zb2xlKFdL
U3RyaW5nUmVmIG1lc3NhZ2UsIHVpbnQzMl90IGxpbmVOdW1iZXIpCiB7CiAgICAgLy8gRklYTUU6
IFN0cmlwIGZpbGU6IHVybHMuCi0gICAgSW5qZWN0ZWRCdW5kbGU6OnNoYXJlZCgpLm9zKCkgPDwg
IkNPTlNPTEUgTUVTU0FHRTogbGluZSAiIDw8IGxpbmVOdW1iZXIgPDwgIjogIiA8PCBXS1N0cmlu
Z1RvVVRGOChtZXNzYWdlKS0+ZGF0YSgpIDw8ICJcbiI7CisgICAgSW5qZWN0ZWRCdW5kbGU6OnNo
YXJlZCgpLm9zKCkgPDwgIkNPTlNPTEUgTUVTU0FHRTogbGluZSAiIDw8IGxpbmVOdW1iZXIgPDwg
IjogIiA8PCBVVEY4KG1lc3NhZ2UpLT5kYXRhKCkgPDwgIlxuIjsKIH0KIAogdm9pZCBJbmplY3Rl
ZEJ1bmRsZVBhZ2U6OndpbGxTZXRTdGF0dXNiYXJUZXh0KFdLU3RyaW5nUmVmIHN0YXR1c2JhclRl
eHQpCkBAIC0zMTYsMjIgKzM2NywyMiBAQCB2b2lkIEluamVjdGVkQnVuZGxlUGFnZTo6d2lsbFNl
dFN0YXR1c2JhCiAgICAgaWYgKCFJbmplY3RlZEJ1bmRsZTo6c2hhcmVkKCkubGF5b3V0VGVzdENv
bnRyb2xsZXIoKS0+c2hvdWxkRHVtcFN0YXR1c0NhbGxiYWNrcygpKQogICAgICAgICByZXR1cm47
CiAKLSAgICBJbmplY3RlZEJ1bmRsZTo6c2hhcmVkKCkub3MoKSA8PCAiVUkgREVMRUdBVEUgU1RB
VFVTIENBTExCQUNLOiBzZXRTdGF0dXNUZXh0OiIgPDwgV0tTdHJpbmdUb1VURjgoc3RhdHVzYmFy
VGV4dCktPmRhdGEoKSA8PCAiXG4iOworICAgIEluamVjdGVkQnVuZGxlOjpzaGFyZWQoKS5vcygp
IDw8ICJVSSBERUxFR0FURSBTVEFUVVMgQ0FMTEJBQ0s6IHNldFN0YXR1c1RleHQ6IiA8PCBVVEY4
KHN0YXR1c2JhclRleHQpLT5kYXRhKCkgPDwgIlxuIjsKIH0KIAogdm9pZCBJbmplY3RlZEJ1bmRs
ZVBhZ2U6OndpbGxSdW5KYXZhU2NyaXB0QWxlcnQoV0tTdHJpbmdSZWYgbWVzc2FnZSwgV0tCdW5k
bGVGcmFtZVJlZikKIHsKLSAgICBJbmplY3RlZEJ1bmRsZTo6c2hhcmVkKCkub3MoKSA8PCAiQUxF
UlQ6ICIgPDwgV0tTdHJpbmdUb1VURjgobWVzc2FnZSktPmRhdGEoKSA8PCAiXG4iOworICAgIElu
amVjdGVkQnVuZGxlOjpzaGFyZWQoKS5vcygpIDw8ICJBTEVSVDogIiA8PCBVVEY4KG1lc3NhZ2Up
LT5kYXRhKCkgPDwgIlxuIjsKIH0KIAogdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2U6OndpbGxSdW5K
YXZhU2NyaXB0Q29uZmlybShXS1N0cmluZ1JlZiBtZXNzYWdlLCBXS0J1bmRsZUZyYW1lUmVmKQog
ewotICAgIEluamVjdGVkQnVuZGxlOjpzaGFyZWQoKS5vcygpIDw8ICJDT05GSVJNOiAiIDw8IFdL
U3RyaW5nVG9VVEY4KG1lc3NhZ2UpLT5kYXRhKCkgPDwgIlxuIjsKKyAgICBJbmplY3RlZEJ1bmRs
ZTo6c2hhcmVkKCkub3MoKSA8PCAiQ09ORklSTTogIiA8PCBVVEY4KG1lc3NhZ2UpLT5kYXRhKCkg
PDwgIlxuIjsKIH0KIAogdm9pZCBJbmplY3RlZEJ1bmRsZVBhZ2U6OndpbGxSdW5KYXZhU2NyaXB0
UHJvbXB0KFdLU3RyaW5nUmVmIG1lc3NhZ2UsIFdLU3RyaW5nUmVmIGRlZmF1bHRWYWx1ZSwgV0tC
dW5kbGVGcmFtZVJlZikKIHsKLSAgICBJbmplY3RlZEJ1bmRsZTo6c2hhcmVkKCkub3MoKSA8PCAi
UFJPTVBUOiAiIDw8IFdLU3RyaW5nVG9VVEY4KG1lc3NhZ2UpLT5kYXRhKCkgPDwgIiwgZGVmYXVs
dCB0ZXh0OiAiIDw8IFdLU3RyaW5nVG9VVEY4KGRlZmF1bHRWYWx1ZSktPmRhdGEoKSA8PCAgIlxu
IjsKKyAgICBJbmplY3RlZEJ1bmRsZTo6c2hhcmVkKCkub3MoKSA8PCAiUFJPTVBUOiAiIDw8IFVU
RjgobWVzc2FnZSktPmRhdGEoKSA8PCAiLCBkZWZhdWx0IHRleHQ6ICIgPDwgVVRGOChkZWZhdWx0
VmFsdWUpLT5kYXRhKCkgPDwgICJcbiI7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdUUgo=
</data>
<flag name="review"
          id="50533"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>