<?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>55732</bug_id>
          
          <creation_ts>2011-03-03 17:20:21 -0800</creation_ts>
          <short_desc>WebKit2: Refactor classes in GenericCallback.h</short_desc>
          <delta_ts>2011-03-03 23:07:20 -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>WebKit2</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Jeff Miller">jeffm</reporter>
          <assigned_to name="Jeff Miller">jeffm</assigned_to>
          <cc>abarth</cc>
    
    <cc>eric</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>362111</commentid>
    <comment_count>0</comment_count>
    <who name="Jeff Miller">jeffm</who>
    <bug_when>2011-03-03 17:20:21 -0800</bug_when>
    <thetext>Refactor classes in GenericCallback.h</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362121</commentid>
    <comment_count>1</comment_count>
      <attachid>84663</attachid>
    <who name="Jeff Miller">jeffm</who>
    <bug_when>2011-03-03 17:30:50 -0800</bug_when>
    <thetext>Created attachment 84663
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362169</commentid>
    <comment_count>2</comment_count>
      <attachid>84663</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2011-03-03 18:13:46 -0800</bug_when>
    <thetext>Comment on attachment 84663
Patch

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

Change looks good. Perhaps we should put RefCounted in CallbackBase too?

&gt; Source/WebKit2/ChangeLog:17
&gt; +        Remove FIXME comment about making a version of GenericCallback with two arguments, and defining
&gt; +        ComputedPagesCallback.  This isn&apos;t really feasible.  Also, the parameters are a const Vector&lt;WebCore::IntRect&gt;&amp;
&gt; +        and a double, and I don&apos;t think a callback with a class and POD parameter types is really worth a generic class.

I don’t understand why it isn’t feasible. I think we can make a template the works with both class and POD types.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362259</commentid>
    <comment_count>3</comment_count>
    <who name="Jeff Miller">jeffm</who>
    <bug_when>2011-03-03 21:32:17 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 84663 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=84663&amp;action=review
&gt; 
&gt; Change looks good. Perhaps we should put RefCounted in CallbackBase too?

Good idea, I&apos;ll make this change before landing the patch.

&gt; 
&gt; &gt; Source/WebKit2/ChangeLog:17
&gt; &gt; +        Remove FIXME comment about making a version of GenericCallback with two arguments, and defining
&gt; &gt; +        ComputedPagesCallback.  This isn&apos;t really feasible.  Also, the parameters are a const Vector&lt;WebCore::IntRect&gt;&amp;
&gt; &gt; +        and a double, and I don&apos;t think a callback with a class and POD parameter types is really worth a generic class.
&gt; 
&gt; I don’t understand why it isn’t feasible. I think we can make a template the works with both class and POD types.

We certainly could, but it seems somewhat unlikely that it would be used more than once.  In any case, I&apos;ll restore the FIXME comment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362263</commentid>
    <comment_count>4</comment_count>
    <who name="Jeff Miller">jeffm</who>
    <bug_when>2011-03-03 21:36:49 -0800</bug_when>
    <thetext>Committed r80322: &lt;http://trac.webkit.org/changeset/80322&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>362301</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-03-03 23:07:20 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/80322 might have broken Windows 7 Release (Tests)
The following tests are not passing:
http/tests/cookies/double-quoted-value-with-semi-colon.html
http/tests/cookies/simple-cookies-expired.html
http/tests/cookies/simple-cookies-max-age.html
http/tests/incremental/split-hex-entities.pl</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>84663</attachid>
            <date>2011-03-03 17:30:50 -0800</date>
            <delta_ts>2011-03-03 18:13:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-55732-20110303173048.patch</filename>
            <type>text/plain</type>
            <size>9104</size>
            <attacher name="Jeff Miller">jeffm</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9DaGFuZ2VMb2cJKHJldmlzaW9uIDgwMzAyKQorKysgU291cmNlL1dlYktpdDIvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsNDIgQEAKKzIwMTEtMDMtMDMgIEplZmYgTWls
bGVyICA8amVmZm1AYXBwbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFJlZmFjdG9yIGNsYXNzZXMgaW4gR2VuZXJpY0NhbGxiYWNrLmgKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTU1NzMyCisgICAg
ICAgIAorICAgICAgICBTaW5jZSB3ZSdyZSBnb2luZyB0byBuZWVkIHRvIGFkZCBhZGRpdGlvbmFs
IGNhbGxiYWNrIGNsYXNzZXMsIG1ha2UgYSBDYWxsYmFja0Jhc2UgY2xhc3MgdGhhdCBtYW5hZ2Vz
CisgICAgICAgIHRoZSBjb250ZXh0IGFuZCB0aGUgY2FsbGJhY2sgSUQuICBUaGUgZXhpc3Rpbmcg
Y2FsbGJhY2sgY2xhc3NlcyAoVm9pZENhbGxiYWNrLCBHZW5lcmljQ2FsbGJhY2ssIGFuZAorICAg
ICAgICBDb21wdXRlZFBhZ2VzQ2FsbGJhY2spIG5vdyBhbGwgZGVyaXZlIGZyb20gQ2FsbGJhY2tC
YXNlLgorICAgICAgICAKKyAgICAgICAgRml4IGJ1ZyBpbiBWb2lkQ2FsbGJhY2sgd2hlcmUgd2Ug
bWVhbnQgdG8gaW1wbGVtZW50IHRoZSBkZXN0cnVjdG9yLCBidXQgd2Ugd2VyZSBpbXBsZW1lbnRp
bmcgdGhlIGRlZmF1bHQKKyAgICAgICAgY29uc3RydWN0b3IgaW5zdGVhZCAod2UgZm9yZ290IHRo
ZSBsZWFkaW5nIH4pLgorICAgICAgICAKKyAgICAgICAgUmVtb3ZlIEZJWE1FIGNvbW1lbnQgYWJv
dXQgbWFraW5nIGEgdmVyc2lvbiBvZiBHZW5lcmljQ2FsbGJhY2sgd2l0aCB0d28gYXJndW1lbnRz
LCBhbmQgZGVmaW5pbmcKKyAgICAgICAgQ29tcHV0ZWRQYWdlc0NhbGxiYWNrLiAgVGhpcyBpc24n
dCByZWFsbHkgZmVhc2libGUuICBBbHNvLCB0aGUgcGFyYW1ldGVycyBhcmUgYSBjb25zdCBWZWN0
b3I8V2ViQ29yZTo6SW50UmVjdD4mCisgICAgICAgIGFuZCBhIGRvdWJsZSwgYW5kIEkgZG9uJ3Qg
dGhpbmsgYSBjYWxsYmFjayB3aXRoIGEgY2xhc3MgYW5kIFBPRCBwYXJhbWV0ZXIgdHlwZXMgaXMg
cmVhbGx5IHdvcnRoIGEgZ2VuZXJpYyBjbGFzcy4KKyAKKyAgICAgICAgKiBVSVByb2Nlc3MvR2Vu
ZXJpY0NhbGxiYWNrLmg6CisgICAgICAgIChXZWJLaXQ6OkNhbGxiYWNrQmFzZTo6fkNhbGxiYWNr
QmFzZSk6CisgICAgICAgIChXZWJLaXQ6OkNhbGxiYWNrQmFzZTo6Y2FsbGJhY2tJRCk6CisgICAg
ICAgIChXZWJLaXQ6OkNhbGxiYWNrQmFzZTo6Q2FsbGJhY2tCYXNlKToKKyAgICAgICAgKFdlYktp
dDo6Q2FsbGJhY2tCYXNlOjpjb250ZXh0KToKKyAgICAgICAgKFdlYktpdDo6Q2FsbGJhY2tCYXNl
OjpnZW5lcmF0ZUNhbGxiYWNrSUQpOgorICAgICAgICAoV2ViS2l0OjpWb2lkQ2FsbGJhY2s6On5W
b2lkQ2FsbGJhY2spOgorICAgICAgICAoV2ViS2l0OjpWb2lkQ2FsbGJhY2s6OnBlcmZvcm1DYWxs
YmFjayk6CisgICAgICAgIChXZWJLaXQ6OlZvaWRDYWxsYmFjazo6aW52YWxpZGF0ZSk6CisgICAg
ICAgIChXZWJLaXQ6OlZvaWRDYWxsYmFjazo6Vm9pZENhbGxiYWNrKToKKyAgICAgICAgKFdlYktp
dDo6R2VuZXJpY0NhbGxiYWNrOjpjcmVhdGUpOgorICAgICAgICAoV2ViS2l0OjpHZW5lcmljQ2Fs
bGJhY2s6On5HZW5lcmljQ2FsbGJhY2spOgorICAgICAgICAoV2ViS2l0OjpHZW5lcmljQ2FsbGJh
Y2s6OnBlcmZvcm1DYWxsYmFja1dpdGhSZXR1cm5WYWx1ZSk6CisgICAgICAgIChXZWJLaXQ6Okdl
bmVyaWNDYWxsYmFjazo6aW52YWxpZGF0ZSk6CisgICAgICAgIChXZWJLaXQ6OkdlbmVyaWNDYWxs
YmFjazo6R2VuZXJpY0NhbGxiYWNrKToKKyAgICAgICAgKFdlYktpdDo6Q29tcHV0ZWRQYWdlc0Nh
bGxiYWNrOjpjcmVhdGUpOgorICAgICAgICAoV2ViS2l0OjpDb21wdXRlZFBhZ2VzQ2FsbGJhY2s6
On5Db21wdXRlZFBhZ2VzQ2FsbGJhY2spOgorICAgICAgICAoV2ViS2l0OjpDb21wdXRlZFBhZ2Vz
Q2FsbGJhY2s6OnBlcmZvcm1DYWxsYmFja1dpdGhSZXR1cm5WYWx1ZSk6CisgICAgICAgIChXZWJL
aXQ6OkNvbXB1dGVkUGFnZXNDYWxsYmFjazo6aW52YWxpZGF0ZSk6CisgICAgICAgIChXZWJLaXQ6
OkNvbXB1dGVkUGFnZXNDYWxsYmFjazo6Q29tcHV0ZWRQYWdlc0NhbGxiYWNrKToKKwogMjAxMS0w
My0wMyAgQW5keSBFc3RlcyAgPGFlc3Rlc0BhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQg
YnkgRGFyaW4gQWRsZXIuCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvR2VuZXJpY0Nh
bGxiYWNrLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0dlbmVyaWND
YWxsYmFjay5oCShyZXZpc2lvbiA4MDIzOCkKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9H
ZW5lcmljQ2FsbGJhY2suaAkod29ya2luZyBjb3B5KQpAQCAtMzUsNyArMzUsMzUgQEAKIAogbmFt
ZXNwYWNlIFdlYktpdCB7CiAKLWNsYXNzIFZvaWRDYWxsYmFjayA6IHB1YmxpYyBSZWZDb3VudGVk
PFZvaWRDYWxsYmFjaz4geworY2xhc3MgQ2FsbGJhY2tCYXNlIHsKK3B1YmxpYzoKKyAgICB2aXJ0
dWFsIH5DYWxsYmFja0Jhc2UoKQorICAgIHsKKyAgICB9CisKKyAgICB1aW50NjRfdCBjYWxsYmFj
a0lEKCkgY29uc3QgeyByZXR1cm4gbV9jYWxsYmFja0lEOyB9CisKK3Byb3RlY3RlZDoKKyAgICBD
YWxsYmFja0Jhc2Uodm9pZCogY29udGV4dCkKKyAgICAgICAgOiBtX2NvbnRleHQoY29udGV4dCkK
KyAgICAgICAgLCBtX2NhbGxiYWNrSUQoZ2VuZXJhdGVDYWxsYmFja0lEKCkpCisgICAgeworICAg
IH0KKworICAgIHZvaWQqIGNvbnRleHQoKSBjb25zdCB7IHJldHVybiBtX2NvbnRleHQ7IH0KKwor
cHJpdmF0ZToKKyAgICBzdGF0aWMgdWludDY0X3QgZ2VuZXJhdGVDYWxsYmFja0lEKCkKKyAgICB7
CisgICAgICAgIHN0YXRpYyB1aW50NjRfdCB1bmlxdWVDYWxsYmFja0lEID0gMTsKKyAgICAgICAg
cmV0dXJuIHVuaXF1ZUNhbGxiYWNrSUQrKzsKKyAgICB9CisKKyAgICB2b2lkKiBtX2NvbnRleHQ7
CisgICAgdWludDY0X3QgbV9jYWxsYmFja0lEOworfTsKKworY2xhc3MgVm9pZENhbGxiYWNrIDog
cHVibGljIENhbGxiYWNrQmFzZSwgcHVibGljIFJlZkNvdW50ZWQ8Vm9pZENhbGxiYWNrPiB7CiBw
dWJsaWM6CiAgICAgdHlwZWRlZiB2b2lkICgqQ2FsbGJhY2tGdW5jdGlvbikoV0tFcnJvclJlZiwg
dm9pZCopOwogCkBAIC00NCw3ICs3Miw3IEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIGFkb3B0
UmVmKG5ldyBWb2lkQ2FsbGJhY2soY29udGV4dCwgY2FsbGJhY2spKTsKICAgICB9CiAKLSAgICBW
b2lkQ2FsbGJhY2soKQorICAgIHZpcnR1YWwgflZvaWRDYWxsYmFjaygpCiAgICAgewogICAgICAg
ICBBU1NFUlQoIW1fY2FsbGJhY2spOwogICAgIH0KQEAgLTUzLDcgKzgxLDcgQEAgcHVibGljOgog
ICAgIHsKICAgICAgICAgQVNTRVJUKG1fY2FsbGJhY2spOwogCi0gICAgICAgIG1fY2FsbGJhY2so
MCwgbV9jb250ZXh0KTsKKyAgICAgICAgbV9jYWxsYmFjaygwLCBjb250ZXh0KCkpOwogCiAgICAg
ICAgIG1fY2FsbGJhY2sgPSAwOwogICAgIH0KQEAgLTYzLDUyICs5MSw0MSBAQCBwdWJsaWM6CiAg
ICAgICAgIEFTU0VSVChtX2NhbGxiYWNrKTsKIAogICAgICAgICBSZWZQdHI8V2ViRXJyb3I+IGVy
cm9yID0gV2ViRXJyb3I6OmNyZWF0ZSgpOwotICAgICAgICBtX2NhbGxiYWNrKHRvQVBJKGVycm9y
LmdldCgpKSwgbV9jb250ZXh0KTsKKyAgICAgICAgbV9jYWxsYmFjayh0b0FQSShlcnJvci5nZXQo
KSksIGNvbnRleHQoKSk7CiAgICAgICAgIAogICAgICAgICBtX2NhbGxiYWNrID0gMDsKICAgICB9
CiAKLSAgICB1aW50NjRfdCBjYWxsYmFja0lEKCkgY29uc3QgeyByZXR1cm4gbV9jYWxsYmFja0lE
OyB9Ci0KIHByaXZhdGU6Ci0gICAgc3RhdGljIHVpbnQ2NF90IGdlbmVyYXRlQ2FsbGJhY2tJRCgp
Ci0gICAgewotICAgICAgICBzdGF0aWMgdWludDY0X3QgdW5pcXVlQ2FsbGJhY2tJRCA9IDE7Ci0g
ICAgICAgIHJldHVybiB1bmlxdWVDYWxsYmFja0lEKys7Ci0gICAgfQotCiAgICAgVm9pZENhbGxi
YWNrKHZvaWQqIGNvbnRleHQsIENhbGxiYWNrRnVuY3Rpb24gY2FsbGJhY2spCi0gICAgICAgIDog
bV9jb250ZXh0KGNvbnRleHQpCisgICAgICAgIDogQ2FsbGJhY2tCYXNlKGNvbnRleHQpCiAgICAg
ICAgICwgbV9jYWxsYmFjayhjYWxsYmFjaykKLSAgICAgICAgLCBtX2NhbGxiYWNrSUQoZ2VuZXJh
dGVDYWxsYmFja0lEKCkpCiAgICAgewogICAgIH0KIAotICAgIHZvaWQqIG1fY29udGV4dDsKICAg
ICBDYWxsYmFja0Z1bmN0aW9uIG1fY2FsbGJhY2s7Ci0gICAgdWludDY0X3QgbV9jYWxsYmFja0lE
OwogfTsKIAotLy8gRklYTUU6IE1ha2UgYSB2ZXJzaW9uIG9mIEdlbmVyaWNDYWxsYmFjayB3aXRo
IHR3byBhcmd1bWVudHMsIGFuZCBkZWZpbmUgQ29tcHV0ZWRQYWdlc0NhbGxiYWNrIGFzIGEgc3Bl
Y2lhbGl6YXRpb24uCi1jbGFzcyBDb21wdXRlZFBhZ2VzQ2FsbGJhY2sgOiBwdWJsaWMgUmVmQ291
bnRlZDxDb21wdXRlZFBhZ2VzQ2FsbGJhY2s+IHsKK3RlbXBsYXRlPHR5cGVuYW1lIEFQSVJldHVy
blZhbHVlVHlwZSwgdHlwZW5hbWUgSW50ZXJuYWxSZXR1cm5WYWx1ZVR5cGUgPSB0eXBlbmFtZSBB
UElUeXBlSW5mbzxBUElSZXR1cm5WYWx1ZVR5cGU+OjpJbXBsVHlwZT4KK2NsYXNzIEdlbmVyaWND
YWxsYmFjayA6IHB1YmxpYyBDYWxsYmFja0Jhc2UsIHB1YmxpYyBSZWZDb3VudGVkPEdlbmVyaWND
YWxsYmFjazxBUElSZXR1cm5WYWx1ZVR5cGUsIEludGVybmFsUmV0dXJuVmFsdWVUeXBlPiA+IHsK
IHB1YmxpYzoKLSAgICB0eXBlZGVmIHZvaWQgKCpDYWxsYmFja0Z1bmN0aW9uKShjb25zdCBWZWN0
b3I8V2ViQ29yZTo6SW50UmVjdD4mLCBkb3VibGUsIFdLRXJyb3JSZWYsIHZvaWQqKTsKKyAgICB0
eXBlZGVmIHZvaWQgKCpDYWxsYmFja0Z1bmN0aW9uKShBUElSZXR1cm5WYWx1ZVR5cGUsIFdLRXJy
b3JSZWYsIHZvaWQqKTsKIAotICAgIHN0YXRpYyBQYXNzUmVmUHRyPENvbXB1dGVkUGFnZXNDYWxs
YmFjaz4gY3JlYXRlKHZvaWQqIGNvbnRleHQsIENhbGxiYWNrRnVuY3Rpb24gY2FsbGJhY2spCisg
ICAgc3RhdGljIFBhc3NSZWZQdHI8R2VuZXJpY0NhbGxiYWNrPiBjcmVhdGUodm9pZCogY29udGV4
dCwgQ2FsbGJhY2tGdW5jdGlvbiBjYWxsYmFjaykKICAgICB7Ci0gICAgICAgIHJldHVybiBhZG9w
dFJlZihuZXcgQ29tcHV0ZWRQYWdlc0NhbGxiYWNrKGNvbnRleHQsIGNhbGxiYWNrKSk7CisgICAg
ICAgIHJldHVybiBhZG9wdFJlZihuZXcgR2VuZXJpY0NhbGxiYWNrKGNvbnRleHQsIGNhbGxiYWNr
KSk7CiAgICAgfQogCi0gICAgfkNvbXB1dGVkUGFnZXNDYWxsYmFjaygpCisgICAgdmlydHVhbCB+
R2VuZXJpY0NhbGxiYWNrKCkKICAgICB7CiAgICAgICAgIEFTU0VSVCghbV9jYWxsYmFjayk7CiAg
ICAgfQogCi0gICAgdm9pZCBwZXJmb3JtQ2FsbGJhY2tXaXRoUmV0dXJuVmFsdWUoY29uc3QgVmVj
dG9yPFdlYkNvcmU6OkludFJlY3Q+JiByZXR1cm5WYWx1ZTEsIGRvdWJsZSByZXR1cm5WYWx1ZTIp
CisgICAgdm9pZCBwZXJmb3JtQ2FsbGJhY2tXaXRoUmV0dXJuVmFsdWUoSW50ZXJuYWxSZXR1cm5W
YWx1ZVR5cGUgcmV0dXJuVmFsdWUpCiAgICAgewogICAgICAgICBBU1NFUlQobV9jYWxsYmFjayk7
CiAKLSAgICAgICAgbV9jYWxsYmFjayhyZXR1cm5WYWx1ZTEsIHJldHVyblZhbHVlMiwgMCwgbV9j
b250ZXh0KTsKKyAgICAgICAgbV9jYWxsYmFjayh0b0FQSShyZXR1cm5WYWx1ZSksIDAsIGNvbnRl
eHQoKSk7CiAKICAgICAgICAgbV9jYWxsYmFjayA9IDA7CiAgICAgfQpAQCAtMTE4LDUyICsxMzUs
NDAgQEAgcHVibGljOgogICAgICAgICBBU1NFUlQobV9jYWxsYmFjayk7CiAKICAgICAgICAgUmVm
UHRyPFdlYkVycm9yPiBlcnJvciA9IFdlYkVycm9yOjpjcmVhdGUoKTsKLSAgICAgICAgbV9jYWxs
YmFjayhWZWN0b3I8V2ViQ29yZTo6SW50UmVjdD4oKSwgMCwgdG9BUEkoZXJyb3IuZ2V0KCkpLCBt
X2NvbnRleHQpOworICAgICAgICBtX2NhbGxiYWNrKDAsIHRvQVBJKGVycm9yLmdldCgpKSwgY29u
dGV4dCgpKTsKICAgICAgICAgCiAgICAgICAgIG1fY2FsbGJhY2sgPSAwOwogICAgIH0KIAotICAg
IHVpbnQ2NF90IGNhbGxiYWNrSUQoKSBjb25zdCB7IHJldHVybiBtX2NhbGxiYWNrSUQ7IH0KLQog
cHJpdmF0ZToKLSAgICBzdGF0aWMgdWludDY0X3QgZ2VuZXJhdGVDYWxsYmFja0lEKCkKLSAgICB7
Ci0gICAgICAgIHN0YXRpYyB1aW50NjRfdCB1bmlxdWVDYWxsYmFja0lEID0gMTsKLSAgICAgICAg
cmV0dXJuIHVuaXF1ZUNhbGxiYWNrSUQrKzsKLSAgICB9Ci0KLSAgICBDb21wdXRlZFBhZ2VzQ2Fs
bGJhY2sodm9pZCogY29udGV4dCwgQ2FsbGJhY2tGdW5jdGlvbiBjYWxsYmFjaykKLSAgICAgICAg
OiBtX2NvbnRleHQoY29udGV4dCkKKyAgICBHZW5lcmljQ2FsbGJhY2sodm9pZCogY29udGV4dCwg
Q2FsbGJhY2tGdW5jdGlvbiBjYWxsYmFjaykKKyAgICAgICAgOiBDYWxsYmFja0Jhc2UoY29udGV4
dCkKICAgICAgICAgLCBtX2NhbGxiYWNrKGNhbGxiYWNrKQotICAgICAgICAsIG1fY2FsbGJhY2tJ
RChnZW5lcmF0ZUNhbGxiYWNrSUQoKSkKICAgICB7CiAgICAgfQogCi0gICAgdm9pZCogbV9jb250
ZXh0OwogICAgIENhbGxiYWNrRnVuY3Rpb24gbV9jYWxsYmFjazsKLSAgICB1aW50NjRfdCBtX2Nh
bGxiYWNrSUQ7CiB9OwogCi10ZW1wbGF0ZTx0eXBlbmFtZSBBUElSZXR1cm5WYWx1ZVR5cGUsIHR5
cGVuYW1lIEludGVybmFsUmV0dXJuVmFsdWVUeXBlID0gdHlwZW5hbWUgQVBJVHlwZUluZm88QVBJ
UmV0dXJuVmFsdWVUeXBlPjo6SW1wbFR5cGU+Ci1jbGFzcyBHZW5lcmljQ2FsbGJhY2sgOiBwdWJs
aWMgUmVmQ291bnRlZDxHZW5lcmljQ2FsbGJhY2s8QVBJUmV0dXJuVmFsdWVUeXBlLCBJbnRlcm5h
bFJldHVyblZhbHVlVHlwZT4gPiB7CitjbGFzcyBDb21wdXRlZFBhZ2VzQ2FsbGJhY2sgOiBwdWJs
aWMgQ2FsbGJhY2tCYXNlLCBwdWJsaWMgUmVmQ291bnRlZDxDb21wdXRlZFBhZ2VzQ2FsbGJhY2s+
IHsKIHB1YmxpYzoKLSAgICB0eXBlZGVmIHZvaWQgKCpDYWxsYmFja0Z1bmN0aW9uKShBUElSZXR1
cm5WYWx1ZVR5cGUsIFdLRXJyb3JSZWYsIHZvaWQqKTsKKyAgICB0eXBlZGVmIHZvaWQgKCpDYWxs
YmFja0Z1bmN0aW9uKShjb25zdCBWZWN0b3I8V2ViQ29yZTo6SW50UmVjdD4mLCBkb3VibGUsIFdL
RXJyb3JSZWYsIHZvaWQqKTsKIAotICAgIHN0YXRpYyBQYXNzUmVmUHRyPEdlbmVyaWNDYWxsYmFj
az4gY3JlYXRlKHZvaWQqIGNvbnRleHQsIENhbGxiYWNrRnVuY3Rpb24gY2FsbGJhY2spCisgICAg
c3RhdGljIFBhc3NSZWZQdHI8Q29tcHV0ZWRQYWdlc0NhbGxiYWNrPiBjcmVhdGUodm9pZCogY29u
dGV4dCwgQ2FsbGJhY2tGdW5jdGlvbiBjYWxsYmFjaykKICAgICB7Ci0gICAgICAgIHJldHVybiBh
ZG9wdFJlZihuZXcgR2VuZXJpY0NhbGxiYWNrKGNvbnRleHQsIGNhbGxiYWNrKSk7CisgICAgICAg
IHJldHVybiBhZG9wdFJlZihuZXcgQ29tcHV0ZWRQYWdlc0NhbGxiYWNrKGNvbnRleHQsIGNhbGxi
YWNrKSk7CiAgICAgfQogCi0gICAgfkdlbmVyaWNDYWxsYmFjaygpCisgICAgdmlydHVhbCB+Q29t
cHV0ZWRQYWdlc0NhbGxiYWNrKCkKICAgICB7CiAgICAgICAgIEFTU0VSVCghbV9jYWxsYmFjayk7
CiAgICAgfQogCi0gICAgdm9pZCBwZXJmb3JtQ2FsbGJhY2tXaXRoUmV0dXJuVmFsdWUoSW50ZXJu
YWxSZXR1cm5WYWx1ZVR5cGUgcmV0dXJuVmFsdWUpCisgICAgdm9pZCBwZXJmb3JtQ2FsbGJhY2tX
aXRoUmV0dXJuVmFsdWUoY29uc3QgVmVjdG9yPFdlYkNvcmU6OkludFJlY3Q+JiByZXR1cm5WYWx1
ZTEsIGRvdWJsZSByZXR1cm5WYWx1ZTIpCiAgICAgewogICAgICAgICBBU1NFUlQobV9jYWxsYmFj
ayk7CiAKLSAgICAgICAgbV9jYWxsYmFjayh0b0FQSShyZXR1cm5WYWx1ZSksIDAsIG1fY29udGV4
dCk7CisgICAgICAgIG1fY2FsbGJhY2socmV0dXJuVmFsdWUxLCByZXR1cm5WYWx1ZTIsIDAsIGNv
bnRleHQoKSk7CiAKICAgICAgICAgbV9jYWxsYmFjayA9IDA7CiAgICAgfQpAQCAtMTczLDMwICsx
NzgsMjAgQEAgcHVibGljOgogICAgICAgICBBU1NFUlQobV9jYWxsYmFjayk7CiAKICAgICAgICAg
UmVmUHRyPFdlYkVycm9yPiBlcnJvciA9IFdlYkVycm9yOjpjcmVhdGUoKTsKLSAgICAgICAgbV9j
YWxsYmFjaygwLCB0b0FQSShlcnJvci5nZXQoKSksIG1fY29udGV4dCk7CisgICAgICAgIG1fY2Fs
bGJhY2soVmVjdG9yPFdlYkNvcmU6OkludFJlY3Q+KCksIDAsIHRvQVBJKGVycm9yLmdldCgpKSwg
Y29udGV4dCgpKTsKICAgICAgICAgCiAgICAgICAgIG1fY2FsbGJhY2sgPSAwOwogICAgIH0KIAot
ICAgIHVpbnQ2NF90IGNhbGxiYWNrSUQoKSBjb25zdCB7IHJldHVybiBtX2NhbGxiYWNrSUQ7IH0K
LQogcHJpdmF0ZToKLSAgICBzdGF0aWMgdWludDY0X3QgZ2VuZXJhdGVDYWxsYmFja0lEKCkKLSAg
ICB7Ci0gICAgICAgIHN0YXRpYyB1aW50NjRfdCB1bmlxdWVDYWxsYmFja0lEID0gMTsKLSAgICAg
ICAgcmV0dXJuIHVuaXF1ZUNhbGxiYWNrSUQrKzsKLSAgICB9CiAKLSAgICBHZW5lcmljQ2FsbGJh
Y2sodm9pZCogY29udGV4dCwgQ2FsbGJhY2tGdW5jdGlvbiBjYWxsYmFjaykKLSAgICAgICAgOiBt
X2NvbnRleHQoY29udGV4dCkKKyAgICBDb21wdXRlZFBhZ2VzQ2FsbGJhY2sodm9pZCogY29udGV4
dCwgQ2FsbGJhY2tGdW5jdGlvbiBjYWxsYmFjaykKKyAgICAgICAgOiBDYWxsYmFja0Jhc2UoY29u
dGV4dCkKICAgICAgICAgLCBtX2NhbGxiYWNrKGNhbGxiYWNrKQotICAgICAgICAsIG1fY2FsbGJh
Y2tJRChnZW5lcmF0ZUNhbGxiYWNrSUQoKSkKICAgICB7CiAgICAgfQogCi0gICAgdm9pZCogbV9j
b250ZXh0OwogICAgIENhbGxiYWNrRnVuY3Rpb24gbV9jYWxsYmFjazsKLSAgICB1aW50NjRfdCBt
X2NhbGxiYWNrSUQ7CiB9OwogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBUPgo=
</data>
<flag name="review"
          id="76696"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>