<?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>42710</bug_id>
          
          <creation_ts>2010-07-20 16:02:56 -0700</creation_ts>
          <short_desc>Assertion in Connection::readEventHandler when launching WebKitTestRunner</short_desc>
          <delta_ts>2010-07-21 13:25:58 -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>PC</rep_platform>
          <op_sys>Windows XP</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar, PlatformOnly</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Adam Roben (:aroben)">aroben</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>andersca</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>254041</commentid>
    <comment_count>0</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2010-07-20 16:02:56 -0700</bug_when>
    <thetext>To reproduce:

1. run-webkit-tests --webkit-test-runner

You&apos;ll hit an ASSERT_NOT_REACHED() on launch in Connection::readEventHandler because GetOverlappedResult returned FALSE and GetLastError returned ERROR_MORE_DATA.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>254044</commentid>
    <comment_count>1</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2010-07-20 16:03:11 -0700</bug_when>
    <thetext>&lt;rdar://problem/8197571&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>254280</commentid>
    <comment_count>2</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2010-07-21 07:59:00 -0700</bug_when>
    <thetext>MSDN says:

The results reported by the GetOverlappedResult function are those of the specified handle&apos;s last overlapped operation to which the specified OVERLAPPED structure was provided, and for which the operation&apos;s results were pending.
&lt;http://msdn.microsoft.com/en-us/library/ms683209(VS.85).aspx&gt;

and:

If a named pipe is being read in message mode and the next message is longer than the nNumberOfBytesToRead parameter specifies, ReadFile returns FALSE and GetLastError returns ERROR_MORE_DATA. The remainder of the message can be read by a subsequent call to the ReadFile or PeekNamedPipe function.
&lt;http://msdn.microsoft.com/en-us/library/aa365467(VS.85).aspx&gt;

So we must be sending a message that&apos;s more than inlineMessageMaxSize (4096) bytes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>254282</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2010-07-21 08:01:12 -0700</bug_when>
    <thetext>Indeed, we&apos;re sending a message that&apos;s 9128 bytes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>254289</commentid>
    <comment_count>4</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2010-07-21 08:10:33 -0700</bug_when>
    <thetext>I added an (incorrect, but useful for debugging) assertion to Connection::sendOutGoingMessage:

    ASSERT(arguments-&gt;bufferSize() &lt; inlineMessageMaxSize);

This assertion does get hit.

It looks like the message being sent has an ID of 0x00050003, which I think corresponds to WebProcessProxyMessage::PostMessage.

Sam thinks that this is likely the render tree dump being sent from the web process to the UI process.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>254422</commentid>
    <comment_count>5</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2010-07-21 10:58:40 -0700</bug_when>
    <thetext>I think our existing ReadFile code is a little wrong. MSDN says:

Use NULL for [lpNumberOfBytesRead] if this is an asynchronous operation to avoid potentially erroneous results.
&lt;http://msdn.microsoft.com/en-us/library/aa365467(VS.85).aspx&gt;

But we&apos;re not doing that. I think we&apos;re supposed to call GetOverlappedResult to get the number of bytes read even if ReadFile returns TRUE.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>254477</commentid>
    <comment_count>6</comment_count>
      <attachid>62224</attachid>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2010-07-21 13:04:30 -0700</bug_when>
    <thetext>Created attachment 62224
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>254489</commentid>
    <comment_count>7</comment_count>
    <who name="Adam Roben (:aroben)">aroben</who>
    <bug_when>2010-07-21 13:25:58 -0700</bug_when>
    <thetext>Committed r63852: &lt;http://trac.webkit.org/changeset/63852&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>62224</attachid>
            <date>2010-07-21 13:04:30 -0700</date>
            <delta_ts>2010-07-21 13:13:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-42710-20100721160436.patch</filename>
            <type>text/plain</type>
            <size>9053</size>
            <attacher name="Adam Roben (:aroben)">aroben</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdDIvQ2hhbmdlTG9nIGIvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXgg
ODhiYmZkMGI0ZmM5YTkyMGY3ZGUzYzJjNTVjODlhNWY2Y2M1MDc1ZS4uYTcwZjdlNDhjN2I2MDAz
MzkwNGMwMTNjYjIwMzk4NWY0ZjFkMDI4NSAxMDA2NDQKLS0tIGEvV2ViS2l0Mi9DaGFuZ2VMb2cK
KysrIGIvV2ViS2l0Mi9DaGFuZ2VMb2cKQEAgLTEsNSArMSw1NCBAQAogMjAxMC0wNy0yMSAgQWRh
bSBSb2JlbiAgPGFyb2JlbkBhcHBsZS5jb20+CiAKKyAgICAgICAgVGVhY2ggQ29yZUlQQyBob3cg
dG8gaGFuZGxlIG1lc3NhZ2VzIHRoYXQgYXJlIGxhcmdlciB0aGFuIHRoZSBwaXBlJ3MKKyAgICAg
ICAgYnVmZmVyCisKKyAgICAgICAgOjpHZXRPdmVybGFwcGVkUmVzdWx0IGFuZCA6OlJlYWRGaWxl
IGNhbiBmYWlsIHdpdGggRVJST1JfTU9SRV9EQVRBCisgICAgICAgIHdoZW4gdGhlcmUgaXMgbW9y
ZSBkYXRhIGF2YWlsYWJsZSBvbiB0aGUgcGlwZSB0aGFuIHdhcyByZXF1ZXN0ZWQgaW4KKyAgICAg
ICAgdGhlIHJlYWQgb3BlcmF0aW9uLiBJbiB0aG9zZSBjYXNlcywgdGhlIGFwcHJvcHJpYXRlIHJl
c3BvbnNlIGlzIHRvCisgICAgICAgIHBlcmZvcm0gYW5vdGhlciByZWFkIG9wZXJhdGlvbiB0byBy
ZWFkIHRoZSBleHRyYSBkYXRhLiBXZSBub3cgZG8gdGhpcy4KKworICAgICAgICBBbHNvLCBNU0RO
IHNheXMgdGhhdCwgYmVjYXVzZSB3ZSBhcmUgZG9pbmcgYXN5bmNocm9ub3VzIHJlYWQKKyAgICAg
ICAgb3BlcmF0aW9ucywgd2Ugc2hvdWxkIG5vdCBwYXNzIGEgcG9pbnRlciB0byA6OlJlYWRGaWxl
IHRvIGZpbmQgb3V0IGhvdworICAgICAgICBtYW55IGJ5dGVzIHdlcmUgcmVhZC4gSW5zdGVhZCB3
ZSBzaG91bGQgYWx3YXlzIGNhbGwKKyAgICAgICAgOjpHZXRPdmVybGFwcGVkUmVzdWx0IHRvIGZp
bmQgdGhpcyBvdXQuIEkndmUgY2hhbmdlZAorICAgICAgICBDb25uZWN0aW9uOjpyZWFkRXZlbnRI
YW5kbGVyIHRvIGhhdmUgYSBzaW5nbGUgbG9vcCB0aGF0IGNhbGxzCisgICAgICAgIDo6R2V0T3Zl
cmxhcHBlZFJlc3VsdCBhbmQgOjpSZWFkRmlsZSBpbiBhbHRlcm5hdGlvbiwgcmF0aGVyIHRoYW4K
KyAgICAgICAgc29tZXRpbWVzIGNhbGxpbmcgOjpSZWFkRmlsZSBtdWx0aXBsZSB0aW1lcyBpbiBh
IHJvdywgdG8gc2F0aXNmeSB0aGlzCisgICAgICAgIHJlcXVpcmVtZW50LgorCisgICAgICAgIElu
IG9yZGVyIHRvIHNpbXBsaWZ5IHRoZSBsb2dpYyBpbiB0aGlzIGZ1bmN0aW9uLCBJJ3ZlIG1hZGUg
dXMgcmVxdWVzdAorICAgICAgICBvbmx5IGEgc2luZ2xlIGJ5dGUgZnJvbSB0aGUgcGlwZSB3aGVu
IHRoZXJlIGFyZSBubyBtZXNzYWdlcyBhbHJlYWR5IGluCisgICAgICAgIHRoZSBwaXBlLiAoUHJl
dmlvdXNseSB3ZSB3ZXJlIHJlcXVlc3RpbmcgNDA5NiBieXRlcyBpbiB0aGlzIGNhc2UuKQorICAg
ICAgICBUaGlzIGFsbG93cyB1cyBub3QgdG8gaGF2ZSB0byBjb25zaWRlciB0aGUgY2FzZSB3aGVy
ZSB0aGUgcmVjZWl2ZWQKKyAgICAgICAgbWVzc2FnZSBpcyBzbWFsbGVyIHRoYW4gb3VyIHJlYWQg
YnVmZmVyLiBJZiB3ZSBkZWNpZGUgdGhhdCB0aGlzIGhhcyBhCisgICAgICAgIG5lZ2F0aXZlIGlt
cGFjdCBvbiBwZXJmb3JtYW5jZSwgd2UgY2FuIG9mIGNvdXJzZSBjaGFuZ2UgaXQuIEkndmUKKyAg
ICAgICAgbWl0aWdhdGVkIHRoaXMgc29tZXdoYXQgYnkgdXNpbmcgOjpQZWVrTmFtZWRNZXNzYWdl
IHRvIGZpbmQgb3V0IHRoZQorICAgICAgICBzaXplIG9mIHRoZSBuZXh0IG1lc3NhZ2UgaW4gdGhl
IHBpcGUgKGlmIGFueSksIHNvIHRoYXQgd2UgY2FuIHJlYWQgaXQKKyAgICAgICAgYWxsIGluIG9u
ZSByZWFkIG9wZXJhdGlvbi4KKworICAgICAgICBGaXhlcyA8aHR0cDovL3dlYmtpdC5vcmcvYi80
MjcxMD4gPHJkYXI6Ly9wcm9ibGVtLzgxOTc1NzE+IEFzc2VydGlvbgorICAgICAgICBpbiBDb25u
ZWN0aW9uOjpyZWFkRXZlbnRIYW5kbGVyIHdoZW4gbGF1bmNoaW5nIFdlYktpdFRlc3RSdW5uZXIK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFBsYXRm
b3JtL0NvcmVJUEMvd2luL0Nvbm5lY3Rpb25XaW4uY3BwOgorICAgICAgICAoQ29yZUlQQzo6Q29u
bmVjdGlvbjo6cmVhZEV2ZW50SGFuZGxlcik6IFB1dCB0aGUgY2FsbCB0bworICAgICAgICA6Okdl
dE92ZXJsYXBwZWRSZXN1bHQgaW4gdGhlIHNhbWUgbG9vcCBhcyA6OlJlYWRGaWxlIHNvIHRoYXQg
d2Ugd2lsbAorICAgICAgICBjYWxsIHRoZW0gYWx0ZXJuYXRlbHkuIElmIDo6R2V0T3ZlcmxhcHBl
ZFJlc3VsdCBmYWlscyB3aXRoCisgICAgICAgIEVSUk9SX01PUkVfREFUQSwgdXNlIDo6UGVla05h
bWVkUGlwZSB0byBkZXRlcm1pbmUgdGhlIHNpemUgb2YgdGhlIHJlc3QKKyAgICAgICAgb2YgdGhl
IG1lc3NhZ2UsIHRoZW4gcmVhZCBpdCBmcm9tIHRoZSBwaXBlLiBBZnRlciBkaXNwYXRjaGluZyB0
aGUKKyAgICAgICAgbWVzc2FnZSwgdXNlIDo6UGVla05hbWVkUGlwZSB0byBmaW5kIG91dCB0aGUg
c2l6ZSBvZiB0aGUgbmV4dCBtZXNzYWdlCisgICAgICAgIGluIHRoZSBwaXBlIHNvIHdlIGNhbiBy
ZWFkIGl0IGFsbCBpbiBvbmUgb3BlcmF0aW9uLiBJZiB0aGVyZSdzIG5vCisgICAgICAgIG1lc3Nh
Z2UgaW4gdGhlIHBpcGUsIHdlJ2xsIHJlcXVlc3QganVzdCBhIHNpbmdsZSBieXRlIG9mIHRoZSBu
ZXh0CisgICAgICAgIG1lc3NhZ2UgdGhhdCBiZWNvbWVzIGF2YWlsYWJsZSwgYW5kIFdpbmRvd3Mg
d2lsbCB0ZWxsIHVzIHdoZW4gdGhlIHJlc3QKKyAgICAgICAgb2YgdGhlIG1lc3NhZ2UgaXMgcmVh
ZHkuIElmIDo6UmVhZEZpbGUgZmFpbHMgd2l0aCBFUlJPUl9NT1JFX0RBVEEgaXQKKyAgICAgICAg
bWVhbnMgdGhlcmUgaXMgZGF0YSBhdmFpbGFibGUgbm93IGV2ZW4gdGhvdWdoIHdlIGRpZG4ndCB0
aGluayB0aGVyZQorICAgICAgICB3YXMgYW55LiBXZSBnbyBiYWNrIHRvIHRoZSB0b3Agb2YgdGhl
IGxvb3AgaW4gdGhpcyBjYXNlIGFuZCBjYWxsCisgICAgICAgIDo6R2V0T3ZlcmxhcHBlZFJlc3Vs
dCBhZ2FpbiB0byByZXRyaWV2ZSB0aGUgYXZhaWxhYmxlIGRhdGEuCisKKzIwMTAtMDctMjEgIEFk
YW0gUm9iZW4gIDxhcm9iZW5AYXBwbGUuY29tPgorCiAgICAgICAgIFdpbmRvd3MgYnVpbGQgZml4
CiAKICAgICAgICAgKiBTaGFyZWQvd2luL1VwZGF0ZUNodW5rLmg6CmRpZmYgLS1naXQgYS9XZWJL
aXQyL1BsYXRmb3JtL0NvcmVJUEMvd2luL0Nvbm5lY3Rpb25XaW4uY3BwIGIvV2ViS2l0Mi9QbGF0
Zm9ybS9Db3JlSVBDL3dpbi9Db25uZWN0aW9uV2luLmNwcAppbmRleCA3Mjk2YTUwNGQ2YzdhYWE2
OTNmY2Q4NzFlYTBkMzcyMDU3NWJkMjEyLi42NDk0MmU5ODM2NGEzY2M4OGFhYTMxMGVlNjk2OTY2
YzNjNjQ4NDhlIDEwMDY0NAotLS0gYS9XZWJLaXQyL1BsYXRmb3JtL0NvcmVJUEMvd2luL0Nvbm5l
Y3Rpb25XaW4uY3BwCisrKyBiL1dlYktpdDIvUGxhdGZvcm0vQ29yZUlQQy93aW4vQ29ubmVjdGlv
bldpbi5jcHAKQEAgLTEwOCw5ICsxMDgsOSBAQCB2b2lkIENvbm5lY3Rpb246OnJlYWRFdmVudEhh
bmRsZXIoKQogICAgICAgICBzZW5kT3V0Z29pbmdNZXNzYWdlcygpOwogICAgIH0KIAotICAgIERX
T1JEIG51bWJlck9mQnl0ZXNSZWFkID0gMDsKLSAgICBpZiAod2FzQ29ubmVjdGVkKSB7CisgICAg
d2hpbGUgKHRydWUpIHsKICAgICAgICAgLy8gQ2hlY2sgaWYgd2UgZ290IHNvbWUgZGF0YS4KKyAg
ICAgICAgRFdPUkQgbnVtYmVyT2ZCeXRlc1JlYWQgPSAwOwogICAgICAgICBpZiAoITo6R2V0T3Zl
cmxhcHBlZFJlc3VsdChtX2Nvbm5lY3Rpb25QaXBlLCAmbV9yZWFkU3RhdGUsICZudW1iZXJPZkJ5
dGVzUmVhZCwgRkFMU0UpKSB7CiAgICAgICAgICAgICBEV09SRCBlcnJvciA9IDo6R2V0TGFzdEVy
cm9yKCk7CiAKQEAgLTExOCw2ICsxMTgsMzEgQEAgdm9pZCBDb25uZWN0aW9uOjpyZWFkRXZlbnRI
YW5kbGVyKCkKICAgICAgICAgICAgIGNhc2UgRVJST1JfQlJPS0VOX1BJUEU6CiAgICAgICAgICAg
ICAgICAgY29ubmVjdGlvbkRpZENsb3NlKCk7CiAgICAgICAgICAgICAgICAgcmV0dXJuOworICAg
ICAgICAgICAgY2FzZSBFUlJPUl9NT1JFX0RBVEE6CisgICAgICAgICAgICAgICAgeworICAgICAg
ICAgICAgICAgICAgICAvLyBSZWFkIHRoZSByZXN0IG9mIHRoZSBtZXNzYWdlIG91dCBvZiB0aGUg
cGlwZS4KKworICAgICAgICAgICAgICAgICAgICBEV09SRCBieXRlc1RvUmVhZCA9IDA7CisgICAg
ICAgICAgICAgICAgICAgIGlmICghOjpQZWVrTmFtZWRQaXBlKG1fY29ubmVjdGlvblBpcGUsIDAs
IDAsIDAsIDAsICZieXRlc1RvUmVhZCkpIHsKKyAgICAgICAgICAgICAgICAgICAgICAgIERXT1JE
IGVycm9yID0gOjpHZXRMYXN0RXJyb3IoKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIEFTU0VS
VF9OT1RfUkVBQ0hFRCgpOworICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuOworICAgICAg
ICAgICAgICAgICAgICB9CisKKyAgICAgICAgICAgICAgICAgICAgLy8gOjpHZXRPdmVybGFwcGVk
UmVzdWx0IHRvbGQgdXMgdGhlcmUncyBtb3JlIGRhdGEuIDo6UGVla05hbWVkUGlwZSBzaG91bGRu
J3QKKyAgICAgICAgICAgICAgICAgICAgLy8gY29udHJhZGljdCBpdCEKKyAgICAgICAgICAgICAg
ICAgICAgQVNTRVJUKGJ5dGVzVG9SZWFkKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKCFieXRl
c1RvUmVhZCkKKyAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOworCisgICAgICAgICAgICAg
ICAgICAgIG1fcmVhZEJ1ZmZlci5ncm93KG1fcmVhZEJ1ZmZlci5zaXplKCkgKyBieXRlc1RvUmVh
ZCk7CisgICAgICAgICAgICAgICAgICAgIGlmICghOjpSZWFkRmlsZShtX2Nvbm5lY3Rpb25QaXBl
LCBtX3JlYWRCdWZmZXIuZGF0YSgpICsgbnVtYmVyT2ZCeXRlc1JlYWQsIGJ5dGVzVG9SZWFkLCAw
LCAmbV9yZWFkU3RhdGUpKSB7CisgICAgICAgICAgICAgICAgICAgICAgICBEV09SRCBlcnJvciA9
IDo6R2V0TGFzdEVycm9yKCk7CisgICAgICAgICAgICAgICAgICAgICAgICBBU1NFUlRfTk9UX1JF
QUNIRUQoKTsKKyAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybjsKKyAgICAgICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgICAgICAgICBjb250aW51ZTsKKyAgICAgICAgICAgICAgICB9
CiAKICAgICAgICAgICAgIC8vIEZJWE1FOiBXZSBzaG91bGQgZmlndXJlIG91dCB3aHkgd2UncmUg
Z2V0dGluZyB0aGlzIGVycm9yLgogICAgICAgICAgICAgY2FzZSBFUlJPUl9JT19JTkNPTVBMRVRF
OgpAQCAtMTI2LDM5ICsxNTEsNjQgQEAgdm9pZCBDb25uZWN0aW9uOjpyZWFkRXZlbnRIYW5kbGVy
KCkKICAgICAgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICAgICAgICAgIH0K
ICAgICAgICAgfQotICAgIH0KIAotICAgIHdoaWxlICh0cnVlKSB7Ci0gICAgICAgIGlmIChudW1i
ZXJPZkJ5dGVzUmVhZCkgeworICAgICAgICBpZiAoIW1fcmVhZEJ1ZmZlci5pc0VtcHR5KCkpIHsK
ICAgICAgICAgICAgIC8vIFdlIGhhdmUgYSBtZXNzYWdlLCBsZXQncyBkaXNwYXRjaCBpdC4KIAog
ICAgICAgICAgICAgLy8gVGhlIG1lc3NhZ2VJRCBpcyBlbmNvZGVkIGF0IHRoZSBlbmQgb2YgdGhl
IGJ1ZmZlci4KLSAgICAgICAgICAgIHNpemVfdCByZWFsQnVmZmVyU2l6ZSA9IG51bWJlck9mQnl0
ZXNSZWFkIC0gc2l6ZW9mKE1lc3NhZ2VJRCk7CisgICAgICAgICAgICBzaXplX3QgcmVhbEJ1ZmZl
clNpemUgPSBtX3JlYWRCdWZmZXIuc2l6ZSgpIC0gc2l6ZW9mKE1lc3NhZ2VJRCk7CiAKICAgICAg
ICAgICAgIHVuc2lnbmVkIG1lc3NhZ2VJRCA9ICpyZWludGVycHJldF9jYXN0PHVuc2lnbmVkKj4o
bV9yZWFkQnVmZmVyLmRhdGEoKSArIHJlYWxCdWZmZXJTaXplKTsKIAogICAgICAgICAgICAgcHJv
Y2Vzc0luY29taW5nTWVzc2FnZShNZXNzYWdlSUQ6OmZyb21JbnQobWVzc2FnZUlEKSwgYWRvcHRQ
dHIobmV3IEFyZ3VtZW50RGVjb2RlcihtX3JlYWRCdWZmZXIuZGF0YSgpLCByZWFsQnVmZmVyU2l6
ZSkpKTsKICAgICAgICAgfQogCi0gICAgICAgIC8vIEZJWE1FOiBEbyB0aGlzIHNvbWV3aGVyZSBl
bHNlLgotICAgICAgICBtX3JlYWRCdWZmZXIucmVzaXplKGlubGluZU1lc3NhZ2VNYXhTaXplKTsK
KyAgICAgICAgLy8gRmluZCBvdXQgdGhlIHNpemUgb2YgdGhlIG5leHQgbWVzc2FnZSBpbiB0aGUg
cGlwZSAoaWYgdGhlcmUgaXMgb25lKSBzbyB0aGF0IHdlIGNhbiByZWFkCisgICAgICAgIC8vIGl0
IGFsbCBpbiBvbmUgb3BlcmF0aW9uLiAoVGhpcyBpcyBqdXN0IGFuIG9wdGltaXphdGlvbiB0byBh
dm9pZCBhbiBleHRyYSBwYXNzIHRocm91Z2ggdGhlCisgICAgICAgIC8vIGxvb3AgKGlmIHdlIGNo
b3NlIGEgYnVmZmVyIHNpemUgdGhhdCB3YXMgdG9vIHNtYWxsKSBvciBhbGxvY2F0aW5nIGV4dHJh
IG1lbW9yeSAoaWYgd2UKKyAgICAgICAgLy8gY2hvc2UgYSBidWZmZXIgc2l6ZSB0aGF0IHdhcyB0
b28gbGFyZ2UpLikKKyAgICAgICAgRFdPUkQgYnl0ZXNUb1JlYWQgPSAwOworICAgICAgICBpZiAo
ITo6UGVla05hbWVkUGlwZShtX2Nvbm5lY3Rpb25QaXBlLCAwLCAwLCAwLCAwLCAmYnl0ZXNUb1Jl
YWQpKSB7CisgICAgICAgICAgICBEV09SRCBlcnJvciA9IDo6R2V0TGFzdEVycm9yKCk7CisgICAg
ICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgfQorICAgICAgICBpZiAoIWJ5
dGVzVG9SZWFkKSB7CisgICAgICAgICAgICAvLyBUaGVyZSdzIG5vIG1lc3NhZ2Ugd2FpdGluZyBp
biB0aGUgcGlwZS4gU2NoZWR1bGUgYSByZWFkIG9mIHRoZSBmaXJzdCBieXRlIG9mIHRoZQorICAg
ICAgICAgICAgLy8gbmV4dCBtZXNzYWdlLiBXZSdsbCBmaW5kIG91dCB0aGUgbWVzc2FnZSdzIGFj
dHVhbCBzaXplIHdoZW4gaXQgYXJyaXZlcy4gKElmIHdlCisgICAgICAgICAgICAvLyBjaGFuZ2Ug
dGhpcyB0byByZWFkIG1vcmUgdGhhbiBhIHNpbmdsZSBieXRlIGZvciBwZXJmb3JtYW5jZSByZWFz
b25zLCB3ZSdsbCBoYXZlIHRvCisgICAgICAgICAgICAvLyBkZWFsIHdpdGggbV9yZWFkQnVmZmVy
IHBvdGVudGlhbGx5IGJlaW5nIGxhcmdlciB0aGFuIHRoZSBtZXNzYWdlIHdlIHJlYWQgYWZ0ZXIK
KyAgICAgICAgICAgIC8vIGNhbGxpbmcgOjpHZXRPdmVybGFwcGVkUmVzdWx0IGFib3ZlLikKKyAg
ICAgICAgICAgIGJ5dGVzVG9SZWFkID0gMTsKKyAgICAgICAgfQogCi0gICAgICAgIC8vIFJlYWQg
ZnJvbSB0aGUgcGlwZS4KLSAgICAgICAgQk9PTCByZXN1bHQgPSA6OlJlYWRGaWxlKG1fY29ubmVj
dGlvblBpcGUsIG1fcmVhZEJ1ZmZlci5kYXRhKCksIG1fcmVhZEJ1ZmZlci5zaXplKCksICZudW1i
ZXJPZkJ5dGVzUmVhZCwgJm1fcmVhZFN0YXRlKTsKKyAgICAgICAgbV9yZWFkQnVmZmVyLnJlc2l6
ZShieXRlc1RvUmVhZCk7CiAKLSAgICAgICAgaWYgKCFyZXN1bHQpIHsKLSAgICAgICAgICAgIERX
T1JEIGVycm9yID0gOjpHZXRMYXN0RXJyb3IoKTsKKyAgICAgICAgLy8gRWl0aGVyIHJlYWQgdGhl
IG5leHQgYXZhaWxhYmxlIG1lc3NhZ2UgKHdoaWNoIHNob3VsZCBvY2N1ciBzeW5jaHJvbm91c2x5
KSwgb3Igc3RhcnQgYW4KKyAgICAgICAgLy8gYXN5bmNocm9ub3VzIHJlYWQgb2YgdGhlIG5leHQg
bWVzc2FnZSB0aGF0IGJlY29tZXMgYXZhaWxhYmxlLgorICAgICAgICBCT09MIHJlc3VsdCA9IDo6
UmVhZEZpbGUobV9jb25uZWN0aW9uUGlwZSwgbV9yZWFkQnVmZmVyLmRhdGEoKSwgbV9yZWFkQnVm
ZmVyLnNpemUoKSwgMCwgJm1fcmVhZFN0YXRlKTsKKyAgICAgICAgaWYgKHJlc3VsdCkgeworICAg
ICAgICAgICAgLy8gVGhlcmUgd2FzIGFscmVhZHkgYSBtZXNzYWdlIHdhaXRpbmcgaW4gdGhlIHBp
cGUsIGFuZCB3ZSByZWFkIGl0IHN5bmNocm9ub3VzbHkuCisgICAgICAgICAgICAvLyBQcm9jZXNz
IGl0LgorICAgICAgICAgICAgY29udGludWU7CisgICAgICAgIH0KIAotICAgICAgICAgICAgaWYg
KGVycm9yID09IEVSUk9SX0lPX1BFTkRJTkcpIHsKLSAgICAgICAgICAgICAgICAvLyBUaGVyZSdz
IHBlbmRpbmcgZGF0YSAtIHJlYWRFdmVudEhhbmRsZXIgd2lsbCBiZSBjYWxsZWQgYWdhaW4gb25j
ZSB0aGUgcmVhZCBpcyBjb21wbGV0ZS4KLSAgICAgICAgICAgICAgICByZXR1cm47Ci0gICAgICAg
ICAgICB9CisgICAgICAgIERXT1JEIGVycm9yID0gOjpHZXRMYXN0RXJyb3IoKTsKIAotICAgICAg
ICAgICAgLy8gRklYTUU6IFdlIG5lZWQgdG8gaGFuZGxlIG90aGVyIGVycm9ycyBoZXJlLgotICAg
ICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgICAgIGlmIChlcnJvciA9PSBFUlJP
Ul9JT19QRU5ESU5HKSB7CisgICAgICAgICAgICAvLyBUaGVyZSBhcmUgbm8gbWVzc2FnZXMgaW4g
dGhlIHBpcGUgY3VycmVudGx5LiByZWFkRXZlbnRIYW5kbGVyIHdpbGwgYmUgY2FsbGVkIGFnYWlu
IG9uY2UgdGhlcmUgaXMgYSBtZXNzYWdlLgorICAgICAgICAgICAgcmV0dXJuOworICAgICAgICB9
CisKKyAgICAgICAgaWYgKGVycm9yID09IEVSUk9SX01PUkVfREFUQSkgeworICAgICAgICAgICAg
Ly8gRWl0aGVyIGEgbWVzc2FnZSBpcyBhdmFpbGFibGUgd2hlbiB3ZSBkaWRuJ3QgdGhpbmsgb25l
IHdhcywgb3IgdGhlIG1lc3NhZ2UgaXMgbGFyZ2VyCisgICAgICAgICAgICAvLyB0aGFuIDo6UGVl
a05hbWVkUGlwZSB0b2xkIHVzLiBUaGUgZm9ybWVyIHNlZW1zIGZhciBtb3JlIGxpa2VseS4gUHJv
YmFibHkgdGhlIG1lc3NhZ2UKKyAgICAgICAgICAgIC8vIGJlY2FtZSBhdmFpbGFibGUgYmV0d2Vl
biBvdXIgY2FsbHMgdG8gOjpQZWVrTmFtZWRQaXBlIGFuZCA6OlJlYWRGaWxlIGFib3ZlLiBHbyBi
YWNrCisgICAgICAgICAgICAvLyB0byB0aGUgdG9wIG9mIHRoZSBsb29wIHRvIHVzZSA6OkdldE92
ZXJsYXBwZWRSZXN1bHQgdG8gcmV0cmlldmUgdGhlIGF2YWlsYWJsZSBkYXRhLgorICAgICAgICAg
ICAgY29udGludWU7CiAgICAgICAgIH0KIAotICAgICAgICBBU1NFUlQobnVtYmVyT2ZCeXRlc1Jl
YWQpOworICAgICAgICAvLyBGSVhNRTogV2UgbmVlZCB0byBoYW5kbGUgb3RoZXIgZXJyb3JzIGhl
cmUuCisgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwogICAgIH0KIH0KIAo=
</data>
<flag name="review"
          id="50371"
          type_id="1"
          status="+"
          setter="andersca"
    />
          </attachment>
      

    </bug>

</bugzilla>