<?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>133813</bug_id>
          
          <creation_ts>2014-06-12 11:33:59 -0700</creation_ts>
          <short_desc>[Win] Avoid crashes in code that converted CFDictionarys to HashMap</short_desc>
          <delta_ts>2014-06-12 13:34:59 -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>WebKit Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Critical</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brent Fulgham">bfulgham</reporter>
          <assigned_to name="Brent Fulgham">bfulgham</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>thorton</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1015172</commentid>
    <comment_count>0</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-06-12 11:33:59 -0700</bug_when>
    <thetext>Work done in the past year to reduce dependencies on outside libraries included some changes to the Windows API routines where CFDictionaries were replaced with HashMaps. This introduced crashes in cases where nullptr were passed to these routines, since the CFDictionary logic would gracefully fail while the HashMap implementation crashes when attempting to hash a nullptr.

This patch protects these routines from the nullptr case so that the classes work as intended.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1015184</commentid>
    <comment_count>1</comment_count>
      <attachid>232972</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-06-12 12:18:00 -0700</bug_when>
    <thetext>Created attachment 232972
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1015185</commentid>
    <comment_count>2</comment_count>
      <attachid>232972</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-06-12 12:19:25 -0700</bug_when>
    <thetext>Comment on attachment 232972
Patch

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

&gt; Source/WebKit/win/WebView.h:89
&gt; +    , public WebCore::FullScreenControllerClient

This is needed so that std::make_unique can access the FullScreenControlerClient interface for casting.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1015207</commentid>
    <comment_count>3</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-06-12 13:15:46 -0700</bug_when>
    <thetext>The efl-wk2 error seems spurious. It does not build Windows-specific sources.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1015211</commentid>
    <comment_count>4</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2014-06-12 13:30:18 -0700</bug_when>
    <thetext>&lt;rdar://problem/17291647&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1015213</commentid>
    <comment_count>5</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2014-06-12 13:34:59 -0700</bug_when>
    <thetext>Committed r169909: &lt;http://trac.webkit.org/changeset/169909&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>232972</attachid>
            <date>2014-06-12 12:18:00 -0700</date>
            <delta_ts>2014-06-12 13:22:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-133813-20140612121747.patch</filename>
            <type>text/plain</type>
            <size>11850</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQvd2luL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2Uv
V2ViS2l0L3dpbi9DaGFuZ2VMb2cJKHJldmlzaW9uIDE2OTkwNCkKKysrIFNvdXJjZS9XZWJLaXQv
d2luL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMyIEBACisyMDE0LTA2LTEy
ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAgICAgIFtXaW5dIEF2
b2lkIGNyYXNoZXMgaW4gY29kZSB0aGF0IGNvbnZlcnRlZCBDRkRpY3Rpb25hcmllcyB0byBIYXNo
TWFwCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMzM4
MTMKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFdl
Ykhpc3RvcnkuY3BwOiBBZGQgZW1wdHkgc3RyaW5nIGNoZWNrcyB0byBhdm9pZCBjcmFzaGVzIGlu
CisgICAgICAgIGhhc2ggZnVuY3Rpb24uCisgICAgICAgIChXZWJIaXN0b3J5OjpyZW1vdmVJdGVt
KToKKyAgICAgICAgKFdlYkhpc3Rvcnk6OmFkZEl0ZW0pOgorICAgICAgICAoV2ViSGlzdG9yeTo6
dmlzaXRlZFVSTCk6CisgICAgICAgIChXZWJIaXN0b3J5OjppdGVtRm9yVVJMKToKKyAgICAgICAg
KFdlYkhpc3Rvcnk6OnJlbW92ZUl0ZW1Gb3JVUkxTdHJpbmcpOgorICAgICAgICAoV2ViSGlzdG9y
eTo6aXRlbUZvclVSTFN0cmluZyk6CisgICAgICAgICogV2ViUHJlZmVyZW5jZXMuY3BwOiBEaXR0
by4KKyAgICAgICAgKFdlYlByZWZlcmVuY2VzOjpnZXRJbnN0YW5jZUZvcklkZW50aWZpZXIpOgor
ICAgICAgICAoV2ViUHJlZmVyZW5jZXM6OnNldEluc3RhbmNlKToKKyAgICAgICAgKFdlYlByZWZl
cmVuY2VzOjpyZW1vdmVSZWZlcmVuY2VGb3JJZGVudGlmaWVyKToKKyAgICAgICAgKiBXZWJWaWV3
LmNwcDogRGl0dG8uIEFsc28gY29udmVydCBPd25QdHIgdXNlcyBpbiB0aGlzIGZpbGUKKyAgICAg
ICAgdG8gc3RkOjp1bmlxdWVfcHRyLgorICAgICAgICAoV2ViVmlldzo6Y2xvc2UpOgorICAgICAg
ICAoV2ViVmlldzo6aGFuZGxlTW91c2VFdmVudCk6CisgICAgICAgIChXZWJWaWV3OjpyZWdpc3Rl
ckVtYmVkZGVkVmlld01JTUVUeXBlKToKKyAgICAgICAgKFdlYlZpZXc6OnNob3VsZFVzZUVtYmVk
ZGVkVmlldyk6CisgICAgICAgIChXZWJWaWV3OjplbnRlckZ1bGxzY3JlZW5Gb3JOb2RlKToKKyAg
ICAgICAgKFdlYlZpZXc6OmZ1bGxTY3JlZW5Db250cm9sbGVyKToKKyAgICAgICAgKiBXZWJWaWV3
Lmg6CisKIDIwMTQtMDUtMDcgIEh5b3dvbiBLaW0gIDxodzEwMDgua2ltQHNhbXN1bmcuY29tPgog
CiAgICAgICAgIEdyYXBoaWNzTGF5ZXI6OmNsaWVudCgpIHNob3VsZCByZXR1cm4gYSByZWZlcmVu
Y2UuCkluZGV4OiBTb3VyY2UvV2ViS2l0L3dpbi9XZWJIaXN0b3J5LmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0L3dpbi9XZWJIaXN0b3J5LmNwcAkocmV2aXNpb24gMTY5OTAyKQorKysg
U291cmNlL1dlYktpdC93aW4vV2ViSGlzdG9yeS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTEsNSAr
MSw1IEBACiAvKgotICogQ29weXJpZ2h0IChDKSAyMDA2LCAyMDA3IEFwcGxlIEluYy4gIEFsbCBy
aWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIwMDYsIDIwMDcsIDIwMTQgQXBwbGUg
SW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRpc3RyaWJ1dGlvbiBhbmQgdXNl
IGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdpdGhvdXQKICAqIG1vZGlmaWNh
dGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBmb2xsb3dpbmcgY29uZGl0aW9u
cwpAQCAtNDI1LDYgKzQyNSw4IEBAIEhSRVNVTFQgV2ViSGlzdG9yeTo6cmVtb3ZlSXRlbShJV2Vi
SGlzdG8KICAgICAgICAgcmV0dXJuIGhyOwogCiAgICAgU3RyaW5nIHVybFN0cmluZyh1cmxCU3Ry
LCBTeXNTdHJpbmdMZW4odXJsQlN0cikpOworICAgIGlmICh1cmxTdHJpbmcuaXNFbXB0eSgpKQor
ICAgICAgICByZXR1cm4gRV9GQUlMOwogCiAgICAgYXV0byBpdCA9IG1fZW50cmllc0J5VVJMLmZp
bmQodXJsU3RyaW5nKTsKICAgICBpZiAoaXQgPT0gbV9lbnRyaWVzQnlVUkwuZW5kKCkpCkBAIC00
NjAsNiArNDYyLDggQEAgSFJFU1VMVCBXZWJIaXN0b3J5OjphZGRJdGVtKElXZWJIaXN0b3J5SQog
ICAgICAgICByZXR1cm4gaHI7CiAKICAgICBTdHJpbmcgdXJsU3RyaW5nKHVybEJTdHIsIFN5c1N0
cmluZ0xlbih1cmxCU3RyKSk7CisgICAgaWYgKHVybFN0cmluZy5pc0VtcHR5KCkpCisgICAgICAg
IHJldHVybiBFX0ZBSUw7CiAKICAgICBDT01QdHI8SVdlYkhpc3RvcnlJdGVtPiBvbGRFbnRyeSht
X2VudHJpZXNCeVVSTC5nZXQodXJsU3RyaW5nKSk7CiAKQEAgLTQ5Niw3ICs1MDAsMTEgQEAgSFJF
U1VMVCBXZWJIaXN0b3J5OjphZGRJdGVtKElXZWJIaXN0b3J5SQogCiB2b2lkIFdlYkhpc3Rvcnk6
OnZpc2l0ZWRVUkwoY29uc3QgVVJMJiB1cmwsIGNvbnN0IFN0cmluZyYgdGl0bGUsIGNvbnN0IFN0
cmluZyYgaHR0cE1ldGhvZCwgYm9vbCB3YXNGYWlsdXJlLCBib29sIGluY3JlYXNlVmlzaXRDb3Vu
dCkKIHsKLSAgICBJV2ViSGlzdG9yeUl0ZW0qIGVudHJ5ID0gbV9lbnRyaWVzQnlVUkwuZ2V0KHVy
bC5zdHJpbmcoKSkuZ2V0KCk7CisgICAgY29uc3QgU3RyaW5nJiB1cmxTdHJpbmcgPSB1cmwuc3Ry
aW5nKCk7CisgICAgaWYgKHVybFN0cmluZy5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybjsKKwor
ICAgIElXZWJIaXN0b3J5SXRlbSogZW50cnkgPSBtX2VudHJpZXNCeVVSTC5nZXQodXJsU3RyaW5n
KS5nZXQoKTsKICAgICBpZiAoIWVudHJ5KSB7CiAgICAgICAgIENPTVB0cjxXZWJIaXN0b3J5SXRl
bT4gaXRlbShBZG9wdENPTSwgV2ViSGlzdG9yeUl0ZW06OmNyZWF0ZUluc3RhbmNlKCkpOwogICAg
ICAgICBpZiAoIWl0ZW0pCkBAIC01MTAsMTAgKzUxOCwxMCBAQCB2b2lkIFdlYkhpc3Rvcnk6OnZp
c2l0ZWRVUkwoY29uc3QgVVJMJiB1CiAgICAgICAgIGlmICghU3lzdGVtVGltZVRvVmFyaWFudFRp
bWUoJmN1cnJlbnRUaW1lLCAmbGFzdFZpc2l0ZWQpKQogICAgICAgICAgICAgcmV0dXJuOwogCi0g
ICAgICAgIGlmIChGQUlMRUQoZW50cnktPmluaXRXaXRoVVJMU3RyaW5nKEJTdHJpbmcodXJsLnN0
cmluZygpKSwgQlN0cmluZyh0aXRsZSksIGxhc3RWaXNpdGVkKSkpCisgICAgICAgIGlmIChGQUlM
RUQoZW50cnktPmluaXRXaXRoVVJMU3RyaW5nKEJTdHJpbmcodXJsU3RyaW5nKSwgQlN0cmluZyh0
aXRsZSksIGxhc3RWaXNpdGVkKSkpCiAgICAgICAgICAgICByZXR1cm47CiAgICAgICAgIAotICAg
ICAgICBtX2VudHJpZXNCeVVSTC5zZXQodXJsLnN0cmluZygpLCBlbnRyeSk7CisgICAgICAgIG1f
ZW50cmllc0J5VVJMLnNldCh1cmxTdHJpbmcsIGVudHJ5KTsKICAgICB9CiAKICAgICBDT01QdHI8
SVdlYkhpc3RvcnlJdGVtUHJpdmF0ZT4gZW50cnlQcml2YXRlKFF1ZXJ5LCBlbnRyeSk7CkBAIC01
MzAsMTMgKzUzOCwxNyBAQCB2b2lkIFdlYkhpc3Rvcnk6OnZpc2l0ZWRVUkwoY29uc3QgVVJMJiB1
CiAgICAgcG9zdE5vdGlmaWNhdGlvbihrV2ViSGlzdG9yeUl0ZW1zQWRkZWROb3RpZmljYXRpb24s
IHVzZXJJbmZvLmdldCgpKTsKIH0KIAotSFJFU1VMVCBXZWJIaXN0b3J5OjppdGVtRm9yVVJMKEJT
VFIgdXJsLCBJV2ViSGlzdG9yeUl0ZW0qKiBpdGVtKQorSFJFU1VMVCBXZWJIaXN0b3J5OjppdGVt
Rm9yVVJMKEJTVFIgdXJsQlN0ciwgSVdlYkhpc3RvcnlJdGVtKiogaXRlbSkKIHsKICAgICBpZiAo
IWl0ZW0pCiAgICAgICAgIHJldHVybiBFX0ZBSUw7CiAgICAgKml0ZW0gPSAwOwogCi0gICAgYXV0
byBpdCA9IG1fZW50cmllc0J5VVJMLmZpbmQodXJsKTsKKyAgICBTdHJpbmcgdXJsU3RyaW5nKHVy
bEJTdHIsIFN5c1N0cmluZ0xlbih1cmxCU3RyKSk7CisgICAgaWYgKHVybFN0cmluZy5pc0VtcHR5
KCkpCisgICAgICAgIHJldHVybiBFX0ZBSUw7CisKKyAgICBhdXRvIGl0ID0gbV9lbnRyaWVzQnlV
UkwuZmluZCh1cmxTdHJpbmcpOwogICAgIGlmIChpdCA9PSBtX2VudHJpZXNCeVVSTC5lbmQoKSkK
ICAgICAgICAgcmV0dXJuIEVfRkFJTDsKIApAQCAtNTQ2LDYgKzU1OCw5IEBAIEhSRVNVTFQgV2Vi
SGlzdG9yeTo6aXRlbUZvclVSTChCU1RSIHVybCwKIAogSFJFU1VMVCBXZWJIaXN0b3J5OjpyZW1v
dmVJdGVtRm9yVVJMU3RyaW5nKGNvbnN0IFdURjo6U3RyaW5nJiB1cmxTdHJpbmcpCiB7CisgICAg
aWYgKHVybFN0cmluZy5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiBFX0ZBSUw7CisKICAgICBh
dXRvIGl0ID0gbV9lbnRyaWVzQnlVUkwuZmluZCh1cmxTdHJpbmcpOwogICAgIGlmIChpdCA9PSBt
X2VudHJpZXNCeVVSTC5lbmQoKSkKICAgICAgICAgcmV0dXJuIEVfRkFJTDsKQEAgLTU1OCw4ICs1
NzMsOCBAQCBIUkVTVUxUIFdlYkhpc3Rvcnk6OnJlbW92ZUl0ZW1Gb3JVUkxTdHJpCiAKIENPTVB0
cjxJV2ViSGlzdG9yeUl0ZW0+IFdlYkhpc3Rvcnk6Oml0ZW1Gb3JVUkxTdHJpbmcoY29uc3QgU3Ry
aW5nJiB1cmxTdHJpbmcpIGNvbnN0CiB7Ci0gICAgaWYgKCF1cmxTdHJpbmcpCi0gICAgICAgIHJl
dHVybiAwOworICAgIGlmICh1cmxTdHJpbmcuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm4gbnVs
bHB0cjsKICAgICByZXR1cm4gbV9lbnRyaWVzQnlVUkwuZ2V0KHVybFN0cmluZyk7CiB9CiAKSW5k
ZXg6IFNvdXJjZS9XZWJLaXQvd2luL1dlYlByZWZlcmVuY2VzLmNwcAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvV2ViS2l0L3dpbi9XZWJQcmVmZXJlbmNlcy5jcHAJKHJldmlzaW9uIDE2OTkwMikKKysr
IFNvdXJjZS9XZWJLaXQvd2luL1dlYlByZWZlcmVuY2VzLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYsIDIwMDcsIDIwMDgsIDIwMDks
IDIwMTAsIDIwMTEgQXBwbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdo
dCAoQykgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSwgMjAxMCwgMjAxMSwgMjAxNCBBcHBsZSBJbmMu
ICBBbGwgcmlnaHRzIHJlc2VydmVkLgogICoKICAqIFJlZGlzdHJpYnV0aW9uIGFuZCB1c2UgaW4g
c291cmNlIGFuZCBiaW5hcnkgZm9ybXMsIHdpdGggb3Igd2l0aG91dAogICogbW9kaWZpY2F0aW9u
LCBhcmUgcGVybWl0dGVkIHByb3ZpZGVkIHRoYXQgdGhlIGZvbGxvd2luZyBjb25kaXRpb25zCkBA
IC0xNTQsNiArMTU0LDkgQEAgV2ViUHJlZmVyZW5jZXMqIFdlYlByZWZlcmVuY2VzOjpnZXRJbnN0
YQogICAgICAgICByZXR1cm4gc2hhcmVkU3RhbmRhcmRQcmVmZXJlbmNlcygpOwogCiAgICAgV1RG
OjpTdHJpbmcgaWRlbnRpZmllclN0cmluZyhpZGVudGlmaWVyLCBTeXNTdHJpbmdMZW4oaWRlbnRp
ZmllcikpOworICAgIGlmIChpZGVudGlmaWVyU3RyaW5nLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0
dXJuIHNoYXJlZFN0YW5kYXJkUHJlZmVyZW5jZXMoKTsKKwogICAgIHJldHVybiB3ZWJQcmVmZXJl
bmNlc0luc3RhbmNlcy5nZXQoaWRlbnRpZmllclN0cmluZykuZ2V0KCk7CiB9CiAKQEAgLTE2Miw2
ICsxNjUsOCBAQCB2b2lkIFdlYlByZWZlcmVuY2VzOjpzZXRJbnN0YW5jZShXZWJQcmVmCiAgICAg
aWYgKCFpZGVudGlmaWVyIHx8ICFpbnN0YW5jZSkKICAgICAgICAgcmV0dXJuOwogICAgIFdURjo6
U3RyaW5nIGlkZW50aWZpZXJTdHJpbmcoaWRlbnRpZmllciwgU3lzU3RyaW5nTGVuKGlkZW50aWZp
ZXIpKTsKKyAgICBpZiAoaWRlbnRpZmllclN0cmluZy5pc0VtcHR5KCkpCisgICAgICAgIHJldHVy
bjsKICAgICB3ZWJQcmVmZXJlbmNlc0luc3RhbmNlcy5hZGQoaWRlbnRpZmllclN0cmluZywgaW5z
dGFuY2UpOwogfQogCkBAIC0xNzEsNiArMTc2LDggQEAgdm9pZCBXZWJQcmVmZXJlbmNlczo6cmVt
b3ZlUmVmZXJlbmNlRm9ySQogICAgICAgICByZXR1cm47CiAKICAgICBXVEY6OlN0cmluZyBpZGVu
dGlmaWVyU3RyaW5nKGlkZW50aWZpZXIsIFN5c1N0cmluZ0xlbihpZGVudGlmaWVyKSk7CisgICAg
aWYgKGlkZW50aWZpZXJTdHJpbmcuaXNFbXB0eSgpKQorICAgICAgICByZXR1cm47CiAgICAgV2Vi
UHJlZmVyZW5jZXMqIHdlYlByZWZlcmVuY2UgPSB3ZWJQcmVmZXJlbmNlc0luc3RhbmNlcy5nZXQo
aWRlbnRpZmllclN0cmluZykuZ2V0KCk7CiAgICAgaWYgKHdlYlByZWZlcmVuY2UgJiYgd2ViUHJl
ZmVyZW5jZS0+bV9yZWZDb3VudCA9PSAxKQogICAgICAgICB3ZWJQcmVmZXJlbmNlc0luc3RhbmNl
cy5yZW1vdmUoaWRlbnRpZmllclN0cmluZyk7CkluZGV4OiBTb3VyY2UvV2ViS2l0L3dpbi9XZWJW
aWV3LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L3dpbi9XZWJWaWV3LmNwcAkocmV2
aXNpb24gMTY5OTAyKQorKysgU291cmNlL1dlYktpdC93aW4vV2ViVmlldy5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTk2LDYgKzk2LDcgQEAKICNpbmNsdWRlIDxXZWJDb3JlL0ZyYW1lVHJlZS5oPgog
I2luY2x1ZGUgPFdlYkNvcmUvRnJhbWVWaWV3Lmg+CiAjaW5jbHVkZSA8V2ViQ29yZS9GcmFtZVdp
bi5oPgorI2luY2x1ZGUgPFdlYkNvcmUvRnVsbFNjcmVlbkNvbnRyb2xsZXIuaD4KICNpbmNsdWRl
IDxXZWJDb3JlL0dESU9iamVjdENvdW50ZXIuaD4KICNpbmNsdWRlIDxXZWJDb3JlL0dlb2xvY2F0
aW9uQ29udHJvbGxlci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvR2VvbG9jYXRpb25FcnJvci5oPgpA
QCAtNzE3LDcgKzcxOCw3IEBAIEhSRVNVTFQgU1RETUVUSE9EQ0FMTFRZUEUgV2ViVmlldzo6Y2xv
c2UKICAgICBpZiAobV9tb3VzZU91dFRyYWNrZXIpIHsKICAgICAgICAgbV9tb3VzZU91dFRyYWNr
ZXItPmR3RmxhZ3MgPSBUTUVfQ0FOQ0VMOwogICAgICAgICA6OlRyYWNrTW91c2VFdmVudChtX21v
dXNlT3V0VHJhY2tlci5nZXQoKSk7Ci0gICAgICAgIG1fbW91c2VPdXRUcmFja2VyLmNsZWFyKCk7
CisgICAgICAgIG1fbW91c2VPdXRUcmFja2VyLnJlc2V0KCk7CiAgICAgfQogICAgIAogICAgIHJl
dm9rZURyYWdEcm9wKCk7CkBAIC0xNTM5LDcgKzE1NDAsNyBAQCBib29sIFdlYlZpZXc6OmhhbmRs
ZU1vdXNlRXZlbnQoVUlOVCBtZXNzCiAgICAgfSBlbHNlIGlmIChtZXNzYWdlID09IFdNX01PVVNF
TEVBVkUgJiYgbV9tb3VzZU91dFRyYWNrZXIpIHsKICAgICAgICAgLy8gT25jZSBXTV9NT1VTRUxF
QVZFIGlzIGZpcmVkIHdpbmRvd3MgY2xlYXJzIHRoaXMgdHJhY2tlcgogICAgICAgICAvLyBzbyB0
aGVyZSBpcyBubyBuZWVkIHRvIGRpc2FibGUgaXQgb3Vyc2VsdmVzLgotICAgICAgICBtX21vdXNl
T3V0VHJhY2tlci5jbGVhcigpOworICAgICAgICBtX21vdXNlT3V0VHJhY2tlci5yZXNldCgpOwog
ICAgICAgICBtX3BhZ2UtPm1haW5GcmFtZSgpLmV2ZW50SGFuZGxlcigpLm1vdXNlTW92ZWQobW91
c2VFdmVudCk7CiAgICAgICAgIGhhbmRsZWQgPSB0cnVlOwogICAgIH0gZWxzZSBpZiAobWVzc2Fn
ZSA9PSBXTV9NT1VTRU1PVkUpIHsKQEAgLTE1NDgsNyArMTU0OSw3IEBAIGJvb2wgV2ViVmlldzo6
aGFuZGxlTW91c2VFdmVudChVSU5UIG1lc3MKICAgICAgICAgbW91c2VFdmVudC5zZXRDbGlja0Nv
dW50KGdsb2JhbENsaWNrQ291bnQpOwogICAgICAgICBoYW5kbGVkID0gbV9wYWdlLT5tYWluRnJh
bWUoKS5ldmVudEhhbmRsZXIoKS5tb3VzZU1vdmVkKG1vdXNlRXZlbnQpOwogICAgICAgICBpZiAo
IW1fbW91c2VPdXRUcmFja2VyKSB7Ci0gICAgICAgICAgICBtX21vdXNlT3V0VHJhY2tlciA9IGFk
b3B0UHRyKG5ldyBUUkFDS01PVVNFRVZFTlQpOworICAgICAgICAgICAgbV9tb3VzZU91dFRyYWNr
ZXIgPSBzdGQ6Om1ha2VfdW5pcXVlPFRSQUNLTU9VU0VFVkVOVD4oKTsKICAgICAgICAgICAgIG1f
bW91c2VPdXRUcmFja2VyLT5jYlNpemUgPSBzaXplb2YoVFJBQ0tNT1VTRUVWRU5UKTsKICAgICAg
ICAgICAgIG1fbW91c2VPdXRUcmFja2VyLT5kd0ZsYWdzID0gVE1FX0xFQVZFOwogICAgICAgICAg
ICAgbV9tb3VzZU91dFRyYWNrZXItPmh3bmRUcmFjayA9IG1fdmlld1dpbmRvdzsKQEAgLTYxOTUs
MTMgKzYxOTYsMTMgQEAgSFJFU1VMVCBTVERNRVRIT0RDQUxMVFlQRSBXZWJWaWV3OjphbHdheQog
ICAgIHJldHVybiBTX09LOwogfQogCi1IUkVTVUxUIFNURE1FVEhPRENBTExUWVBFIFdlYlZpZXc6
OnJlZ2lzdGVyRW1iZWRkZWRWaWV3TUlNRVR5cGUoQlNUUiBtaW1lVHlwZSkKK0hSRVNVTFQgV2Vi
Vmlldzo6cmVnaXN0ZXJFbWJlZGRlZFZpZXdNSU1FVHlwZShCU1RSIG1pbWVUeXBlKQogewogICAg
IGlmICghbWltZVR5cGUpCiAgICAgICAgIHJldHVybiBFX1BPSU5URVI7CiAKICAgICBpZiAoIW1f
ZW1iZWRkZWRWaWV3TUlNRVR5cGVzKQotICAgICAgICBtX2VtYmVkZGVkVmlld01JTUVUeXBlcyA9
IGFkb3B0UHRyKG5ldyBIYXNoU2V0PFN0cmluZz4pOworICAgICAgICBtX2VtYmVkZGVkVmlld01J
TUVUeXBlcyA9IHN0ZDo6bWFrZV91bmlxdWU8SGFzaFNldDxTdHJpbmc+PigpOwogCiAgICAgbV9l
bWJlZGRlZFZpZXdNSU1FVHlwZXMtPmFkZCh0b1N0cmluZyhtaW1lVHlwZSkpOwogICAgIHJldHVy
biBTX09LOwpAQCAtNjIxMiw2ICs2MjEzLDkgQEAgYm9vbCBXZWJWaWV3OjpzaG91bGRVc2VFbWJl
ZGRlZFZpZXcoY29ucwogICAgIGlmICghbV9lbWJlZGRlZFZpZXdNSU1FVHlwZXMpCiAgICAgICAg
IHJldHVybiBmYWxzZTsKIAorICAgIGlmIChtaW1lVHlwZS5pc0VtcHR5KCkpCisgICAgICAgIHJl
dHVybiBmYWxzZTsKKwogICAgIHJldHVybiBtX2VtYmVkZGVkVmlld01JTUVUeXBlcy0+Y29udGFp
bnMobWltZVR5cGUpOwogfQogCkBAIC02Mjk5LDcgKzYzMDMsNyBAQCB2b2lkIFdlYlZpZXc6OmVu
dGVyRnVsbHNjcmVlbkZvck5vZGUoTm9kCiAgICAgICAgIEFTU0VSVCghbV9mdWxsU2NyZWVuVmlk
ZW9Db250cm9sbGVyKTsKICAgICB9CiAKLSAgICBtX2Z1bGxTY3JlZW5WaWRlb0NvbnRyb2xsZXIg
PSBhZG9wdFB0cihuZXcgRnVsbHNjcmVlblZpZGVvQ29udHJvbGxlcik7CisgICAgbV9mdWxsU2Ny
ZWVuVmlkZW9Db250cm9sbGVyID0gc3RkOjptYWtlX3VuaXF1ZTxGdWxsc2NyZWVuVmlkZW9Db250
cm9sbGVyPigpOwogICAgIG1fZnVsbFNjcmVlblZpZGVvQ29udHJvbGxlci0+c2V0TWVkaWFFbGVt
ZW50KHZpZGVvRWxlbWVudCk7CiAgICAgbV9mdWxsU2NyZWVuVmlkZW9Db250cm9sbGVyLT5lbnRl
ckZ1bGxzY3JlZW4oKTsKICNlbmRpZgpAQCAtNjkwMiw3ICs2OTA2LDcgQEAgYm9vbCBXZWJWaWV3
Ojppc0Z1bGxTY3JlZW4oKSBjb25zdAogRnVsbFNjcmVlbkNvbnRyb2xsZXIqIFdlYlZpZXc6OmZ1
bGxTY3JlZW5Db250cm9sbGVyKCkKIHsKICAgICBpZiAoIW1fZnVsbHNjcmVlbkNvbnRyb2xsZXIp
Ci0gICAgICAgIG1fZnVsbHNjcmVlbkNvbnRyb2xsZXIgPSBhZG9wdFB0cihuZXcgRnVsbFNjcmVl
bkNvbnRyb2xsZXIodGhpcykpOworICAgICAgICBtX2Z1bGxzY3JlZW5Db250cm9sbGVyID0gc3Rk
OjptYWtlX3VuaXF1ZTxGdWxsU2NyZWVuQ29udHJvbGxlcj4odGhpcyk7CiAgICAgcmV0dXJuIG1f
ZnVsbHNjcmVlbkNvbnRyb2xsZXIuZ2V0KCk7CiB9CiAKSW5kZXg6IFNvdXJjZS9XZWJLaXQvd2lu
L1dlYlZpZXcuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0L3dpbi9XZWJWaWV3LmgJKHJl
dmlzaW9uIDE2OTkwMikKKysrIFNvdXJjZS9XZWJLaXQvd2luL1dlYlZpZXcuaAkod29ya2luZyBj
b3B5KQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMDYsIDIwMDcsIDIw
MDgsIDIwMDksIDIwMTAsIDIwMTEsIDIwMTIgQXBwbGUgSW5jLiAgQWxsIHJpZ2h0cyByZXNlcnZl
ZC4KKyAqIENvcHlyaWdodCAoQykgMjAwNiwgMjAwNywgMjAwOCwgMjAwOSwgMjAxMCwgMjAxMSwg
MjAxMiwgMjAxNCBBcHBsZSBJbmMuICBBbGwgcmlnaHRzIHJlc2VydmVkLgogICogQ29weXJpZ2h0
IChDKSAyMDA5LCAyMDEwLCAyMDExIEFwcGNlbGVyYXRvciwgSW5jLiBBbGwgcmlnaHRzIHJlc2Vy
dmVkLgogICogQ29weXJpZ2h0IChDKSAyMDExIEJyZW50IEZ1bGdoYW0uIEFsbCByaWdodHMgcmVz
ZXJ2ZWQuCiAgKgpAQCAtNDEsNyArNDEsNiBAQAogI2luY2x1ZGUgPFdlYkNvcmUvU3VzcGVuZGFi
bGVUaW1lci5oPgogI2luY2x1ZGUgPFdlYkNvcmUvV2luZG93TWVzc2FnZUxpc3RlbmVyLmg+CiAj
aW5jbHVkZSA8d3RmL0hhc2hTZXQuaD4KLSNpbmNsdWRlIDx3dGYvT3duUHRyLmg+CiAjaW5jbHVk
ZSA8d3RmL1JlZlB0ci5oPgogCiAjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJKQpAQCAtODcsNyAr
ODYsNyBAQCBjbGFzcyBXZWJWaWV3CiAgICAgLCBXZWJDb3JlOjpHcmFwaGljc0xheWVyQ2xpZW50
CiAgICAgLCBXZWJDb3JlOjpDQUNGTGF5ZXJUcmVlSG9zdENsaWVudAogI2lmIEVOQUJMRShGVUxM
U0NSRUVOX0FQSSkKLSAgICAsIFdlYkNvcmU6OkZ1bGxTY3JlZW5Db250cm9sbGVyQ2xpZW50Cisg
ICAgLCBwdWJsaWMgV2ViQ29yZTo6RnVsbFNjcmVlbkNvbnRyb2xsZXJDbGllbnQKICNlbmRpZgog
ewogcHVibGljOgpAQCAtMTEyNiwxMSArMTEyNSwxMSBAQCBwcm90ZWN0ZWQ6CiAgICAgc3RhdGlj
IGJvb2wgc19hbGxvd1NpdGVTcGVjaWZpY0hhY2tzOwogCiAgICAgV2ViQ29yZTo6U3VzcGVuZGFi
bGVUaW1lciogbV9jbG9zZVdpbmRvd1RpbWVyOwotICAgIE93blB0cjxUUkFDS01PVVNFRVZFTlQ+
IG1fbW91c2VPdXRUcmFja2VyOworICAgIHN0ZDo6dW5pcXVlX3B0cjxUUkFDS01PVVNFRVZFTlQ+
IG1fbW91c2VPdXRUcmFja2VyOwogCiAgICAgSFdORCBtX3RvcExldmVsUGFyZW50OwogCi0gICAg
T3duUHRyPEhhc2hTZXQ8V1RGOjpTdHJpbmc+ID4gbV9lbWJlZGRlZFZpZXdNSU1FVHlwZXM7Cisg
ICAgc3RkOjp1bmlxdWVfcHRyPEhhc2hTZXQ8V1RGOjpTdHJpbmc+PiBtX2VtYmVkZGVkVmlld01J
TUVUeXBlczsKIAogICAgIC8vVmFyaWFibGVzIG5lZWRlZCB0byBzdG9yZSBnZXN0dXJlIGluZm9y
bWF0aW9uCiAgICAgUmVmUHRyPFdlYkNvcmU6Ok5vZGU+IG1fZ2VzdHVyZVRhcmdldE5vZGU7CkBA
IC0xMTQwLDcgKzExMzksNyBAQCBwcm90ZWN0ZWQ6CiAgICAgbG9uZyBtX3lPdmVycGFuOwogCiAj
aWYgRU5BQkxFKFZJREVPKQotICAgIE93blB0cjxGdWxsc2NyZWVuVmlkZW9Db250cm9sbGVyPiBt
X2Z1bGxTY3JlZW5WaWRlb0NvbnRyb2xsZXI7CisgICAgc3RkOjp1bmlxdWVfcHRyPEZ1bGxzY3Jl
ZW5WaWRlb0NvbnRyb2xsZXI+IG1fZnVsbFNjcmVlblZpZGVvQ29udHJvbGxlcjsKICNlbmRpZgog
CiAgICAgYm9vbCBpc0FjY2VsZXJhdGVkQ29tcG9zaXRpbmcoKSBjb25zdCB7IHJldHVybiBtX2lz
QWNjZWxlcmF0ZWRDb21wb3NpdGluZzsgfQpAQCAtMTE2MSw3ICsxMTYwLDcgQEAgcHJvdGVjdGVk
OgogCiAjaWYgRU5BQkxFKEZVTExTQ1JFRU5fQVBJKQogICAgIFJlZlB0cjxXZWJDb3JlOjpFbGVt
ZW50PiBtX2Z1bGxTY3JlZW5FbGVtZW50OwotICAgIE93blB0cjxXZWJDb3JlOjpGdWxsU2NyZWVu
Q29udHJvbGxlcj4gbV9mdWxsc2NyZWVuQ29udHJvbGxlcjsKKyAgICBzdGQ6OnVuaXF1ZV9wdHI8
V2ViQ29yZTo6RnVsbFNjcmVlbkNvbnRyb2xsZXI+IG1fZnVsbHNjcmVlbkNvbnRyb2xsZXI7CiAg
ICAgV2ViQ29yZTo6SW50UG9pbnQgbV9zY3JvbGxQb3NpdGlvbjsKICNlbmRpZgogfTsK
</data>
<flag name="review"
          id="257475"
          type_id="1"
          status="+"
          setter="thorton"
    />
          </attachment>
      

    </bug>

</bugzilla>