<?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>50074</bug_id>
          
          <creation_ts>2010-11-25 06:34:15 -0800</creation_ts>
          <short_desc>Remove WebCore/platform/mac/GeolocationServiceMac.{h,mm}</short_desc>
          <delta_ts>2010-12-11 10:12:56 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</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>
          
          <blocked>40373</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="John Knottenbelt">jknotten</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>ddkilzer</cc>
    
    <cc>eric</cc>
    
    <cc>sam</cc>
    
    <cc>steveblock</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>313730</commentid>
    <comment_count>0</comment_count>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-11-25 06:34:15 -0800</bug_when>
    <thetext>GeolocationService is deprecated in favour of the client-based design. Since WebKit mac uses client-based design, this code is not used and can be removed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>319460</commentid>
    <comment_count>1</comment_count>
      <attachid>76065</attachid>
    <who name="John Knottenbelt">jknotten</who>
    <bug_when>2010-12-09 07:51:56 -0800</bug_when>
    <thetext>Created attachment 76065
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320124</commentid>
    <comment_count>2</comment_count>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-12-10 06:46:51 -0800</bug_when>
    <thetext>The client-based Mac implementation was added by Sam in http://trac.webkit.org/changeset/52368. Mac already builds with the client-based impl so this is dead code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320125</commentid>
    <comment_count>3</comment_count>
      <attachid>76065</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2010-12-10 06:48:45 -0800</bug_when>
    <thetext>Comment on attachment 76065
Patch

LGTM, but let&apos;s give Sam a chance to reply before you submit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320570</commentid>
    <comment_count>4</comment_count>
      <attachid>76065</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-12-10 20:59:55 -0800</bug_when>
    <thetext>Comment on attachment 76065
Patch

LGTM.  We can easily resurrect this from svn if needed.  If it doesn&apos;t break any builds, it&apos;s unlikely to be used.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320571</commentid>
    <comment_count>5</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-12-10 21:00:10 -0800</bug_when>
    <thetext>CCing someone from iOS too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320610</commentid>
    <comment_count>6</comment_count>
      <attachid>76065</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-12-10 22:50:23 -0800</bug_when>
    <thetext>Comment on attachment 76065
Patch

Clearing flags on attachment: 76065

Committed r73839: &lt;http://trac.webkit.org/changeset/73839&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320611</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-12-10 22:50:29 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>320693</commentid>
    <comment_count>8</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2010-12-11 10:12:56 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; CCing someone from iOS too.

Thanks Eric.  The iOS port is using non-client-based Geolocation, but our implementation is in a file called GeolocationServiceCoreLocation.mm which hasn&apos;t been upstreamed yet.  The GeolocationServiceMac.* source files were not used by the iOS port.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>76065</attachid>
            <date>2010-12-09 07:51:56 -0800</date>
            <delta_ts>2010-12-10 22:50:23 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-50074-20101209155154.patch</filename>
            <type>text/plain</type>
            <size>11451</size>
            <attacher name="John Knottenbelt">jknotten</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NDFhM2E3NGRhYWRhMDA0Mzk3YzU2NDU1ZDMwYjRkNDI2NzRmOGM1NS4uMGM1NDJmMDRhYzY5MDQ1
MGMwMTkwYWIwOTJiNzZjZGIzMjI2N2IzZSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cK
KysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMC0xMi0wOSAgSm9o
biBLbm90dGVuYmVsdCAgPGprbm90dGVuQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBSZW1vdmUgV2ViQ29yZS9wbGF0Zm9ybS9t
YWMvR2VvbG9jYXRpb25TZXJ2aWNlLntoLG1tfQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTAwNzQKKworICAgICAgICBSZW1vdmUgdW51c2VkIG5vbi1j
bGllbnQtYmFzZWQgZ2VvbG9jYXRpb24gY29kZS4KKworICAgICAgICAqIHBsYXRmb3JtL21hYy9H
ZW9sb2NhdGlvblNlcnZpY2VNYWMuaDogUmVtb3ZlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMv
R2VvbG9jYXRpb25TZXJ2aWNlTWFjLm1tOiBSZW1vdmVkLgorCiAyMDEwLTEyLTA4ICBYaWFvbWVp
IEppICA8eGppQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXZpZCBIeWF0
dC4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0dlb2xvY2F0aW9uU2VydmljZU1h
Yy5oIGIvV2ViQ29yZS9wbGF0Zm9ybS9tYWMvR2VvbG9jYXRpb25TZXJ2aWNlTWFjLmgKZGVsZXRl
ZCBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDRiZWVmY2E2MzAxZmQ1M2VjNWZlZDhhNWIwMmVmN2Y3
NDVmZWVjMTkuLjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAKLS0tIGEv
V2ViQ29yZS9wbGF0Zm9ybS9tYWMvR2VvbG9jYXRpb25TZXJ2aWNlTWFjLmgKKysrIC9kZXYvbnVs
bApAQCAtMSw3NyArMCwwIEBACi0vKgotICogQ29weXJpZ2h0IChDKSAyMDA5IEFwcGxlIEluYy4g
QWxsIFJpZ2h0cyBSZXNlcnZlZC4KLSAqCi0gKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNv
dXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKLSAqIG1vZGlmaWNhdGlvbiwg
YXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9ucwotICog
YXJlIG1ldDoKLSAqIDEuIFJlZGlzdHJpYnV0aW9ucyBvZiBzb3VyY2UgY29kZSBtdXN0IHJldGFp
biB0aGUgYWJvdmUgY29weXJpZ2h0Ci0gKiAgICBub3RpY2UsIHRoaXMgbGlzdCBvZiBjb25kaXRp
b25zIGFuZCB0aGUgZm9sbG93aW5nIGRpc2NsYWltZXIuCi0gKiAyLiBSZWRpc3RyaWJ1dGlvbnMg
aW4gYmluYXJ5IGZvcm0gbXVzdCByZXByb2R1Y2UgdGhlIGFib3ZlIGNvcHlyaWdodAotICogICAg
bm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFp
bWVyIGluIHRoZQotICogICAgZG9jdW1lbnRhdGlvbiBhbmQvb3Igb3RoZXIgbWF0ZXJpYWxzIHBy
b3ZpZGVkIHdpdGggdGhlIGRpc3RyaWJ1dGlvbi4KLSAqCi0gKiBUSElTIFNPRlRXQVJFIElTIFBS
T1ZJREVEIEJZIEFQUExFIElOQy4gYGBBUyBJUycnIEFORCBBTlkKLSAqIEVYUFJFU1MgT1IgSU1Q
TElFRCBXQVJSQU5USUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCi0gKiBJ
TVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBB
UlRJQ1VMQVIKLSAqIFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBB
UFBMRSBJTkMuIE9SCi0gKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJ
TkRJUkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKLSAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVO
VElBTCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKLSAqIFBST0NVUkVN
RU5UIE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBP
UgotICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBB
TkQgT04gQU5ZIFRIRU9SWQotICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBT
VFJJQ1QgTElBQklMSVRZLCBPUiBUT1JUCi0gKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RI
RVJXSVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKLSAqIE9GIFRISVMgU09G
VFdBUkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0Uu
IAotICovCi0KLSNpZm5kZWYgR2VvbG9jYXRpb25TZXJ2aWNlTWFjX2gKLSNkZWZpbmUgR2VvbG9j
YXRpb25TZXJ2aWNlTWFjX2gKLQotI2lmIEVOQUJMRShHRU9MT0NBVElPTikKLQotI2luY2x1ZGUg
Ikdlb2xvY2F0aW9uU2VydmljZS5oIgotI2luY2x1ZGUgPHd0Zi9QYXNzUmVmUHRyLmg+Ci0jaW5j
bHVkZSA8d3RmL1JlZlB0ci5oPgotI2luY2x1ZGUgPHd0Zi9SZXRhaW5QdHIuaD4KLQotI2lmZGVm
IF9fT0JKQ19fCi1AY2xhc3MgQ0xMb2NhdGlvbk1hbmFnZXI7Ci1AY2xhc3MgV2ViQ29yZUNvcmVM
b2NhdGlvbk9ic2VydmVyOwotI2Vsc2UKLWNsYXNzIENMTG9jYXRpb25NYW5hZ2VyOwotY2xhc3Mg
V2ViQ29yZUNvcmVMb2NhdGlvbk9ic2VydmVyOwotI2VuZGlmCi0KLW5hbWVzcGFjZSBXZWJDb3Jl
IHsKLQotY2xhc3MgR2VvbG9jYXRpb25TZXJ2aWNlTWFjIDogcHVibGljIEdlb2xvY2F0aW9uU2Vy
dmljZSB7Ci1wdWJsaWM6Ci0gICAgc3RhdGljIEdlb2xvY2F0aW9uU2VydmljZSogY3JlYXRlKEdl
b2xvY2F0aW9uU2VydmljZUNsaWVudCopOwotICAgIHZpcnR1YWwgfkdlb2xvY2F0aW9uU2Vydmlj
ZU1hYygpOwotICAgIAotICAgIHZpcnR1YWwgYm9vbCBzdGFydFVwZGF0aW5nKFBvc2l0aW9uT3B0
aW9ucyopOwotICAgIHZpcnR1YWwgdm9pZCBzdG9wVXBkYXRpbmcoKTsKLQotICAgIHZpcnR1YWwg
dm9pZCBzdXNwZW5kKCk7Ci0gICAgdmlydHVhbCB2b2lkIHJlc3VtZSgpOwotCi0gICAgdmlydHVh
bCBHZW9wb3NpdGlvbiogbGFzdFBvc2l0aW9uKCkgY29uc3QgeyByZXR1cm4gbV9sYXN0UG9zaXRp
b24uZ2V0KCk7IH0KLSAgICB2aXJ0dWFsIFBvc2l0aW9uRXJyb3IqIGxhc3RFcnJvcigpIGNvbnN0
IHsgcmV0dXJuIG1fbGFzdEVycm9yLmdldCgpOyB9Ci0KLSAgICB2b2lkIHBvc2l0aW9uQ2hhbmdl
ZChQYXNzUmVmUHRyPEdlb3Bvc2l0aW9uPik7Ci0gICAgdm9pZCBlcnJvck9jY3VycmVkKFBhc3NS
ZWZQdHI8UG9zaXRpb25FcnJvcj4pOwotCi1wcml2YXRlOgotICAgIEdlb2xvY2F0aW9uU2Vydmlj
ZU1hYyhHZW9sb2NhdGlvblNlcnZpY2VDbGllbnQqKTsKLQotICAgIFJldGFpblB0cjxDTExvY2F0
aW9uTWFuYWdlcj4gbV9sb2NhdGlvbk1hbmFnZXI7Ci0gICAgUmV0YWluUHRyPFdlYkNvcmVDb3Jl
TG9jYXRpb25PYnNlcnZlcj4gbV9vYmpjT2JzZXJ2ZXI7Ci0gICAgCi0gICAgUmVmUHRyPEdlb3Bv
c2l0aW9uPiBtX2xhc3RQb3NpdGlvbjsKLSAgICBSZWZQdHI8UG9zaXRpb25FcnJvcj4gbV9sYXN0
RXJyb3I7Ci19OwotICAgIAotfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQotCi0jZW5kaWYgLy8gRU5B
QkxFKEdFT0xPQ0FUSU9OKQotCi0jZW5kaWYgLy8gR2VvbG9jYXRpb25TZXJ2aWNlTWFjX2gKZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvcGxhdGZvcm0vbWFjL0dlb2xvY2F0aW9uU2VydmljZU1hYy5tbSBi
L1dlYkNvcmUvcGxhdGZvcm0vbWFjL0dlb2xvY2F0aW9uU2VydmljZU1hYy5tbQpkZWxldGVkIGZp
bGUgbW9kZSAxMDA2NDQKaW5kZXggOWM3ODFhZDA3NDdkMTNjZWVjNGExZGUyNDE0NzBiNjU0ZTRj
MWM2OC4uMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAotLS0gYS9XZWJD
b3JlL3BsYXRmb3JtL21hYy9HZW9sb2NhdGlvblNlcnZpY2VNYWMubW0KKysrIC9kZXYvbnVsbApA
QCAtMSwyMjEgKzAsMCBAQAotLyoKLSAqIENvcHlyaWdodCAoQykgMjAwOSBBcHBsZSBJbmMuIEFs
bCBSaWdodHMgUmVzZXJ2ZWQuCi0gKgotICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3Vy
Y2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0Ci0gKiBtb2RpZmljYXRpb24sIGFy
ZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKLSAqIGFy
ZSBtZXQ6Ci0gKiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4g
dGhlIGFib3ZlIGNvcHlyaWdodAotICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9u
cyBhbmQgdGhlIGZvbGxvd2luZyBkaXNjbGFpbWVyLgotICogMi4gUmVkaXN0cmlidXRpb25zIGlu
IGJpbmFyeSBmb3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKLSAqICAgIG5v
dGljZSwgdGhpcyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1l
ciBpbiB0aGUKLSAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92
aWRlZCB3aXRoIHRoZSBkaXN0cmlidXRpb24uCi0gKgotICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9W
SURFRCBCWSBBUFBMRSBJTkMuIGBgQVMgSVMnJyBBTkQgQU5ZCi0gKiBFWFBSRVNTIE9SIElNUExJ
RUQgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRQotICogSU1Q
TElFRCBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJU
SUNVTEFSCi0gKiBQVVJQT1NFIEFSRSBESVNDTEFJTUVELiAgSU4gTk8gRVZFTlQgU0hBTEwgQVBQ
TEUgSU5DLiBPUgotICogQ09OVFJJQlVUT1JTIEJFIExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5E
SVJFQ1QsIElOQ0lERU5UQUwsIFNQRUNJQUwsCi0gKiBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJ
QUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sCi0gKiBQUk9DVVJFTUVO
VCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJQ0VTOyBMT1NTIE9GIFVTRSwgREFUQSwgT1IK
LSAqIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVSUlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5E
IE9OIEFOWSBUSEVPUlkKLSAqIE9GIExJQUJJTElUWSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RS
SUNUIExJQUJJTElUWSwgT1IgVE9SVAotICogKElOQ0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVS
V0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBPRiBUSEUgVVNFCi0gKiBPRiBUSElTIFNPRlRX
QVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLiAK
LSAqLwotCi0jaW1wb3J0ICJjb25maWcuaCIKLQotI2lmIEVOQUJMRShHRU9MT0NBVElPTikgJiYg
IUVOQUJMRShDTElFTlRfQkFTRURfR0VPTE9DQVRJT04pCi0KLSNpbXBvcnQgIkdlb2xvY2F0aW9u
U2VydmljZU1hYy5oIgotCi0jaW1wb3J0ICJHZW9wb3NpdGlvbi5oIgotI2ltcG9ydCAiUG9zaXRp
b25FcnJvci5oIgotI2ltcG9ydCAiUG9zaXRpb25PcHRpb25zLmgiCi0jaW1wb3J0ICJTb2Z0TGlu
a2luZy5oIgotI2ltcG9ydCA8Q29yZUxvY2F0aW9uL0NvcmVMb2NhdGlvbi5oPgotI2ltcG9ydCA8
b2JqYy9vYmpjLXJ1bnRpbWUuaD4KLSNpbXBvcnQgPHd0Zi9SZWZQdHIuaD4KLSNpbXBvcnQgPHd0
Zi9VbnVzZWRQYXJhbS5oPgotCi1TT0ZUX0xJTktfRlJBTUVXT1JLKENvcmVMb2NhdGlvbikKLQot
U09GVF9MSU5LX0NMQVNTKENvcmVMb2NhdGlvbiwgQ0xMb2NhdGlvbk1hbmFnZXIpCi1TT0ZUX0xJ
TktfQ0xBU1MoQ29yZUxvY2F0aW9uLCBDTExvY2F0aW9uKQotCi1TT0ZUX0xJTktfQ09OU1RBTlQo
Q29yZUxvY2F0aW9uLCBrQ0xMb2NhdGlvbkFjY3VyYWN5QmVzdCwgZG91YmxlKQotU09GVF9MSU5L
X0NPTlNUQU5UKENvcmVMb2NhdGlvbiwga0NMTG9jYXRpb25BY2N1cmFjeUh1bmRyZWRNZXRlcnMs
IGRvdWJsZSkKLQotI2RlZmluZSBrQ0xMb2NhdGlvbkFjY3VyYWN5QmVzdCBnZXRrQ0xMb2NhdGlv
bkFjY3VyYWN5QmVzdCgpCi0jZGVmaW5lIGtDTExvY2F0aW9uQWNjdXJhY3lIdW5kcmVkTWV0ZXJz
IGdldGtDTExvY2F0aW9uQWNjdXJhY3lIdW5kcmVkTWV0ZXJzKCkKLQotdXNpbmcgbmFtZXNwYWNl
IFdlYkNvcmU7Ci0KLUBpbnRlcmZhY2UgV2ViQ29yZUNvcmVMb2NhdGlvbk9ic2VydmVyIDogTlNP
YmplY3Q8Q0xMb2NhdGlvbk1hbmFnZXJEZWxlZ2F0ZT4KLXsKLSAgICBHZW9sb2NhdGlvblNlcnZp
Y2VNYWMqIG1fY2FsbGJhY2s7Ci19Ci0KLS0gKGlkKWluaXRXaXRoQ2FsbGJhY2s6KEdlb2xvY2F0
aW9uU2VydmljZU1hYyopY2FsbGJhY2s7Ci0KLS0gKHZvaWQpbG9jYXRpb25NYW5hZ2VyOihDTExv
Y2F0aW9uTWFuYWdlciAqKW1hbmFnZXIgZGlkVXBkYXRlVG9Mb2NhdGlvbjooQ0xMb2NhdGlvbiAq
KW5ld0xvY2F0aW9uIGZyb21Mb2NhdGlvbjooQ0xMb2NhdGlvbiAqKW9sZExvY2F0aW9uOwotLSAo
dm9pZClsb2NhdGlvbk1hbmFnZXI6KENMTG9jYXRpb25NYW5hZ2VyICopbWFuYWdlciBkaWRGYWls
V2l0aEVycm9yOihOU0Vycm9yICopZXJyb3I7Ci0KLUBlbmQKLQotbmFtZXNwYWNlIFdlYkNvcmUg
ewotCi1HZW9sb2NhdGlvblNlcnZpY2UqIEdlb2xvY2F0aW9uU2VydmljZU1hYzo6Y3JlYXRlKEdl
b2xvY2F0aW9uU2VydmljZUNsaWVudCogY2xpZW50KQotewotICAgIHJldHVybiBuZXcgR2VvbG9j
YXRpb25TZXJ2aWNlTWFjKGNsaWVudCk7Ci19Ci0KLUdlb2xvY2F0aW9uU2VydmljZTo6RmFjdG9y
eUZ1bmN0aW9uKiBHZW9sb2NhdGlvblNlcnZpY2U6OnNfZmFjdG9yeUZ1bmN0aW9uID0gJkdlb2xv
Y2F0aW9uU2VydmljZU1hYzo6Y3JlYXRlOwotCi1HZW9sb2NhdGlvblNlcnZpY2VNYWM6Okdlb2xv
Y2F0aW9uU2VydmljZU1hYyhHZW9sb2NhdGlvblNlcnZpY2VDbGllbnQqIGNsaWVudCkKLSAgICA6
IEdlb2xvY2F0aW9uU2VydmljZShjbGllbnQpCi0gICAgLCBtX29iamNPYnNlcnZlcihBZG9wdE5T
LCBbW1dlYkNvcmVDb3JlTG9jYXRpb25PYnNlcnZlciBhbGxvY10gaW5pdFdpdGhDYWxsYmFjazp0
aGlzXSkKLXsKLX0KLQotR2VvbG9jYXRpb25TZXJ2aWNlTWFjOjp+R2VvbG9jYXRpb25TZXJ2aWNl
TWFjKCkKLXsKLSAgICBbbV9sb2NhdGlvbk1hbmFnZXIuZ2V0KCkgc3RvcFVwZGF0aW5nTG9jYXRp
b25dOwotICAgIG1fbG9jYXRpb25NYW5hZ2VyLmdldCgpLmRlbGVnYXRlID0gbmlsOwotfQotCi1i
b29sIEdlb2xvY2F0aW9uU2VydmljZU1hYzo6c3RhcnRVcGRhdGluZyhQb3NpdGlvbk9wdGlvbnMq
IG9wdGlvbnMpCi17Ci0gICAgI2RlZmluZSBDTExvY2F0aW9uTWFuYWdlciBnZXRDTExvY2F0aW9u
TWFuYWdlckNsYXNzKCkKLSAgICBpZiAoIW1fbG9jYXRpb25NYW5hZ2VyLmdldCgpKSB7Ci0gICAg
ICAgIG1fbG9jYXRpb25NYW5hZ2VyLmFkb3B0TlMoW1tDTExvY2F0aW9uTWFuYWdlciBhbGxvY10g
aW5pdF0pOwotICAgICAgICBtX2xvY2F0aW9uTWFuYWdlci5nZXQoKS5kZWxlZ2F0ZSA9IG1fb2Jq
Y09ic2VydmVyLmdldCgpOwotICAgIH0KLQotICAgIGlmICghbV9sb2NhdGlvbk1hbmFnZXIuZ2V0
KCkubG9jYXRpb25TZXJ2aWNlc0VuYWJsZWQpCi0gICAgICAgIHJldHVybiBmYWxzZTsKLQotICAg
IGlmIChvcHRpb25zKSB7Ci0gICAgICAgIC8vIENMTG9jYXRpb25BY2N1cmFjeSB2YWx1ZXMgc3Vn
Z2VzdGVkIGJ5IFJvbiBIdWFuZy4KLSAgICAgICAgQ0xMb2NhdGlvbkFjY3VyYWN5IGFjY3VyYWN5
ID0gb3B0aW9ucy0+ZW5hYmxlSGlnaEFjY3VyYWN5KCkgPyBrQ0xMb2NhdGlvbkFjY3VyYWN5QmVz
dCA6IGtDTExvY2F0aW9uQWNjdXJhY3lIdW5kcmVkTWV0ZXJzOwotICAgICAgICBtX2xvY2F0aW9u
TWFuYWdlci5nZXQoKS5kZXNpcmVkQWNjdXJhY3kgPSBhY2N1cmFjeTsKLSAgICB9Ci0gICAgCi0g
ICAgLy8gVGhpcyBjYW4gc2FmZWx5IGJlIGNhbGxlZCBtdWx0aXBsZSB0aW1lcy4KLSAgICBbbV9s
b2NhdGlvbk1hbmFnZXIuZ2V0KCkgc3RhcnRVcGRhdGluZ0xvY2F0aW9uXTsKLSAgICAKLSAgICBy
ZXR1cm4gdHJ1ZTsKLSAgICAjdW5kZWYgQ0xMb2NhdGlvbk1hbmFnZXIKLX0KLQotdm9pZCBHZW9s
b2NhdGlvblNlcnZpY2VNYWM6OnN0b3BVcGRhdGluZygpCi17Ci0gICAgW21fbG9jYXRpb25NYW5h
Z2VyLmdldCgpIHN0b3BVcGRhdGluZ0xvY2F0aW9uXTsKLX0KLQotdm9pZCBHZW9sb2NhdGlvblNl
cnZpY2VNYWM6OnN1c3BlbmQoKQotewotICAgIFttX2xvY2F0aW9uTWFuYWdlci5nZXQoKSBzdG9w
VXBkYXRpbmdMb2NhdGlvbl07Ci19Ci0KLXZvaWQgR2VvbG9jYXRpb25TZXJ2aWNlTWFjOjpyZXN1
bWUoKQotewotICAgIFttX2xvY2F0aW9uTWFuYWdlci5nZXQoKSBzdGFydFVwZGF0aW5nTG9jYXRp
b25dOwotfQotCi12b2lkIEdlb2xvY2F0aW9uU2VydmljZU1hYzo6cG9zaXRpb25DaGFuZ2VkKFBh
c3NSZWZQdHI8R2VvcG9zaXRpb24+IHBvc2l0aW9uKQotewotICAgIG1fbGFzdFBvc2l0aW9uID0g
cG9zaXRpb247Ci0gICAgR2VvbG9jYXRpb25TZXJ2aWNlOjpwb3NpdGlvbkNoYW5nZWQoKTsKLX0K
LSAgICAKLXZvaWQgR2VvbG9jYXRpb25TZXJ2aWNlTWFjOjplcnJvck9jY3VycmVkKFBhc3NSZWZQ
dHI8UG9zaXRpb25FcnJvcj4gZXJyb3IpCi17Ci0gICAgbV9sYXN0RXJyb3IgPSBlcnJvcjsKLSAg
ICBHZW9sb2NhdGlvblNlcnZpY2U6OmVycm9yT2NjdXJyZWQoKTsKLX0KLQotfSAvLyBuYW1lc3Bh
Y2UgV2ViQ29yZQotCi1AaW1wbGVtZW50YXRpb24gV2ViQ29yZUNvcmVMb2NhdGlvbk9ic2VydmVy
Ci0KLS0gKGlkKWluaXRXaXRoQ2FsbGJhY2s6KEdlb2xvY2F0aW9uU2VydmljZU1hYyAqKWNhbGxi
YWNrCi17Ci0gICAgc2VsZiA9IFtzdXBlciBpbml0XTsKLSAgICBpZiAoc2VsZikKLSAgICAgICAg
bV9jYWxsYmFjayA9IGNhbGxiYWNrOwotICAgIHJldHVybiBzZWxmOwotfQotCi0tICh2b2lkKWxv
Y2F0aW9uTWFuYWdlcjooQ0xMb2NhdGlvbk1hbmFnZXIgKiltYW5hZ2VyIGRpZFVwZGF0ZVRvTG9j
YXRpb246KENMTG9jYXRpb24gKiluZXdMb2NhdGlvbiBmcm9tTG9jYXRpb246KENMTG9jYXRpb24g
KilvbGRMb2NhdGlvbgotewotICAgIEFTU0VSVChtX2NhbGxiYWNrKTsKLSAgICBBU1NFUlQobmV3
TG9jYXRpb24pOwotICAgIFVOVVNFRF9QQVJBTShtYW5hZ2VyKTsKLSAgICBVTlVTRURfUEFSQU0o
b2xkTG9jYXRpb24pOwotCi0gICAgLy8gTm9ybWFsaXplCi0gICAgYm9vbCBjYW5Qcm92aWRlQWx0
aXR1ZGUgPSB0cnVlOwotICAgIGJvb2wgY2FuUHJvdmlkZUFsdGl0dWRlQWNjdXJhY3kgPSB0cnVl
OwotICAgIGRvdWJsZSBhbHRpdHVkZSA9IG5ld0xvY2F0aW9uLmFsdGl0dWRlOwotICAgIGRvdWJs
ZSBhbHRpdHVkZUFjY3VyYWN5ID0gbmV3TG9jYXRpb24udmVydGljYWxBY2N1cmFjeTsKLSAgICBp
ZiAoYWx0aXR1ZGVBY2N1cmFjeSA8IDAuMCkgewotICAgICAgICBjYW5Qcm92aWRlQWx0aXR1ZGUg
PSBmYWxzZTsKLSAgICAgICAgY2FuUHJvdmlkZUFsdGl0dWRlQWNjdXJhY3kgPSBmYWxzZTsKLSAg
ICB9Ci0gICAgCi0gICAgYm9vbCBjYW5Qcm92aWRlU3BlZWQgPSB0cnVlOwotICAgIGRvdWJsZSBz
cGVlZCA9IG5ld0xvY2F0aW9uLnNwZWVkOwotICAgIGlmIChzcGVlZCA8IDAuMCkKLSAgICAgICAg
Y2FuUHJvdmlkZVNwZWVkID0gZmFsc2U7Ci0KLSAgICBib29sIGNhblByb3ZpZGVIZWFkaW5nID0g
dHJ1ZTsKLSAgICBkb3VibGUgaGVhZGluZyA9IG5ld0xvY2F0aW9uLmNvdXJzZTsKLSAgICBpZiAo
aGVhZGluZyA8IDAuMCkKLSAgICAgICAgY2FuUHJvdmlkZUhlYWRpbmcgPSBmYWxzZTsKLSAgICAK
LSAgICBXVEY6OlJlZlB0cjxXZWJDb3JlOjpDb29yZGluYXRlcz4gbmV3Q29vcmRpbmF0ZXMgPSBX
ZWJDb3JlOjpDb29yZGluYXRlczo6Y3JlYXRlKAotICAgICAgICAgICAgICAgICAgICAgICAgICAg
IG5ld0xvY2F0aW9uLmNvb3JkaW5hdGUubGF0aXR1ZGUsCi0gICAgICAgICAgICAgICAgICAgICAg
ICAgICAgbmV3TG9jYXRpb24uY29vcmRpbmF0ZS5sb25naXR1ZGUsCi0gICAgICAgICAgICAgICAg
ICAgICAgICAgICAgY2FuUHJvdmlkZUFsdGl0dWRlLAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIGFsdGl0dWRlLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ld0xvY2F0aW9uLmhv
cml6b250YWxBY2N1cmFjeSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYW5Qcm92aWRl
QWx0aXR1ZGVBY2N1cmFjeSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHRpdHVkZUFj
Y3VyYWN5LAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhblByb3ZpZGVIZWFkaW5nLAot
ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhlYWRpbmcsCi0gICAgICAgICAgICAgICAgICAg
ICAgICAgICAgY2FuUHJvdmlkZVNwZWVkLAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNw
ZWVkKTsKLSAgICBXVEY6OlJlZlB0cjxXZWJDb3JlOjpHZW9wb3NpdGlvbj4gbmV3UG9zaXRpb24g
PSBXZWJDb3JlOjpHZW9wb3NpdGlvbjo6Y3JlYXRlKAotICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICBuZXdDb29yZGluYXRlcy5yZWxlYXNlKCksCi0gICAgICAgICAgICAgICAgICAgICAgICAg
ICAgIFtuZXdMb2NhdGlvbi50aW1lc3RhbXAgdGltZUludGVydmFsU2luY2UxOTcwXSAqIDEwMDAu
MCk7IC8vIHNlY29uZHMgLT4gbWlsbGlzZWNvbmRzCi0gICAgCi0gICAgbV9jYWxsYmFjay0+cG9z
aXRpb25DaGFuZ2VkKG5ld1Bvc2l0aW9uLnJlbGVhc2UoKSk7Ci19Ci0KLS0gKHZvaWQpbG9jYXRp
b25NYW5hZ2VyOihDTExvY2F0aW9uTWFuYWdlciAqKW1hbmFnZXIgZGlkRmFpbFdpdGhFcnJvcjoo
TlNFcnJvciAqKWVycm9yCi17Ci0gICAgQVNTRVJUKG1fY2FsbGJhY2spOwotICAgIEFTU0VSVChl
cnJvcik7Ci0gCi0gICAgVU5VU0VEX1BBUkFNKG1hbmFnZXIpOwotCi0gICAgUG9zaXRpb25FcnJv
cjo6RXJyb3JDb2RlIGNvZGU7Ci0gICAgc3dpdGNoIChbZXJyb3IgY29kZV0pIHsKLSAgICAgICAg
Y2FzZSBrQ0xFcnJvckRlbmllZDoKLSAgICAgICAgICAgIGNvZGUgPSBQb3NpdGlvbkVycm9yOjpQ
RVJNSVNTSU9OX0RFTklFRDsKLSAgICAgICAgICAgIGJyZWFrOwotICAgICAgICBjYXNlIGtDTEVy
cm9yTG9jYXRpb25Vbmtub3duOgotICAgICAgICAgICAgY29kZSA9IFBvc2l0aW9uRXJyb3I6OlBP
U0lUSU9OX1VOQVZBSUxBQkxFOwotICAgICAgICAgICAgYnJlYWs7Ci0gICAgICAgIGRlZmF1bHQ6
Ci0gICAgICAgICAgICBjb2RlID0gUG9zaXRpb25FcnJvcjo6UE9TSVRJT05fVU5BVkFJTEFCTEU7
Ci0gICAgICAgICAgICBicmVhazsKLSAgICB9Ci0KLSAgICBtX2NhbGxiYWNrLT5lcnJvck9jY3Vy
cmVkKFBvc2l0aW9uRXJyb3I6OmNyZWF0ZShjb2RlLCBbZXJyb3IgbG9jYWxpemVkRGVzY3JpcHRp
b25dKSk7Ci19Ci0KLUBlbmQKLQotI2VuZGlmIC8vIEVOQUJMRShHRU9MT0NBVElPTikK
</data>

          </attachment>
      

    </bug>

</bugzilla>