<?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>166668</bug_id>
          
          <creation_ts>2017-01-03 15:36:32 -0800</creation_ts>
          <short_desc>Re-implement ExceptionOr on top of WTF::Expected</short_desc>
          <delta_ts>2017-01-04 09:57:49 -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>New Bugs</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sam Weinig">sam</reporter>
          <assigned_to name="Sam Weinig">sam</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dbates</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>jfbastien</cc>
    
    <cc>kangil.han</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1263586</commentid>
    <comment_count>0</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2017-01-03 15:36:32 -0800</bug_when>
    <thetext>Re-implement ExceptionOr on top of WTF::Expected</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263587</commentid>
    <comment_count>1</comment_count>
      <attachid>297965</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2017-01-03 15:38:44 -0800</bug_when>
    <thetext>Created attachment 297965
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263604</commentid>
    <comment_count>2</comment_count>
      <attachid>297965</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-03 16:34:35 -0800</bug_when>
    <thetext>Comment on attachment 297965
Patch

Clearing flags on attachment: 297965

Committed r210257: &lt;http://trac.webkit.org/changeset/210257&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263605</commentid>
    <comment_count>3</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-01-03 16:34:41 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263707</commentid>
    <comment_count>4</comment_count>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2017-01-03 23:55:11 -0800</bug_when>
    <thetext>Great!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1263797</commentid>
    <comment_count>5</comment_count>
      <attachid>297965</attachid>
    <who name="JF Bastien">jfbastien</who>
    <bug_when>2017-01-04 09:57:49 -0800</bug_when>
    <thetext>Comment on attachment 297965
Patch

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

I only just saw this. I really like this incremental approach, and I&apos;m surprised it was so little code!

&gt; Source/WebCore/dom/ExceptionOr.h:76
&gt; +    : m_value(makeUnexpected(WTFMove(exception)))

I think this should be std::forward, since the function is just passing `exception` as-is from the parameter to `makeUnexpected`.

&gt; Source/WebCore/dom/ExceptionOr.h:131
&gt; +    : m_value(makeUnexpected(WTFMove(exception)))

Ditto.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>297965</attachid>
            <date>2017-01-03 15:38:44 -0800</date>
            <delta_ts>2017-01-03 16:34:35 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-166668-20170103153719.patch</filename>
            <type>text/plain</type>
            <size>6279</size>
            <attacher name="Sam Weinig">sam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDIxMDI1MykKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDMwIEBACisyMDE3LTAxLTAzICBTYW0gV2Vp
bmlnICA8c2FtQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmUtaW1wbGVtZW50IEV4Y2VwdGlvbk9y
IG9uIHRvcCBvZiBXVEY6OkV4cGVjdGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0xNjY2NjgKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBBcyBhIGZpcnN0IHN0ZXAgdG93YXJkcyB1c2luZyBXVEY6OkV4cGVj
dGVkIGluc3RlYWQgb2YgRXhjZXB0aW9uT3IsCisgICAgICAgIHVzZSBFeHBlY3RlZCBhcyBhbiBp
bXBsZW1lbnRhdGlvbiBkZXRhaWwsIHJhdGhlciB0aGFuIFZhcmlhbnQvc3RkOjpvcHRpb25hbC4g
CisKKyAgICAgICAgKiBjcnlwdG8vYWxnb3JpdGhtcy9DcnlwdG9BbGdvcml0aG1BRVNfS1cuY3Bw
OgorICAgICAgICAqIGNyeXB0by9hbGdvcml0aG1zL0NyeXB0b0FsZ29yaXRobUhNQUMuY3BwOgor
ICAgICAgICAqIGNyeXB0by9hbGdvcml0aG1zL0NyeXB0b0FsZ29yaXRobVJTQUVTX1BLQ1MxX3Yx
XzUuY3BwOgorICAgICAgICAqIGNyeXB0by9hbGdvcml0aG1zL0NyeXB0b0FsZ29yaXRobVJTQVNT
QV9QS0NTMV92MV81LmNwcDoKKyAgICAgICAgKiBjcnlwdG8vYWxnb3JpdGhtcy9DcnlwdG9BbGdv
cml0aG1SU0FfT0FFUC5jcHA6CisgICAgICAgIEFkZCBtaXNzaW5nICNpbmNsdWRlIG9mIFZhcmlh
bnQuaAorCisgICAgICAgICogZG9tL0V4Y2VwdGlvbk9yLmg6CisgICAgICAgIChXZWJDb3JlOjpF
eGNlcHRpb25PcjxSZXR1cm5UeXBlPjo6RXhjZXB0aW9uT3IpOgorICAgICAgICAoV2ViQ29yZTo6
RXhjZXB0aW9uT3I8UmV0dXJuVHlwZT46Omhhc0V4Y2VwdGlvbik6CisgICAgICAgIChXZWJDb3Jl
OjpFeGNlcHRpb25PcjxSZXR1cm5UeXBlPjo6cmVsZWFzZUV4Y2VwdGlvbik6CisgICAgICAgIChX
ZWJDb3JlOjpFeGNlcHRpb25PcjxSZXR1cm5UeXBlPjo6cmVsZWFzZVJldHVyblZhbHVlKToKKyAg
ICAgICAgKFdlYkNvcmU6OkV4Y2VwdGlvbk9yPHZvaWQ+OjpFeGNlcHRpb25Pcik6CisgICAgICAg
IChXZWJDb3JlOjpFeGNlcHRpb25Pcjx2b2lkPjo6aGFzRXhjZXB0aW9uKToKKyAgICAgICAgKFdl
YkNvcmU6OkV4Y2VwdGlvbk9yPHZvaWQ+OjpyZWxlYXNlRXhjZXB0aW9uKToKKyAgICAgICAgUmUt
aW1wbGVtZW50IG9uIHRvcCBvZiBFeHBlY3RlZC4KKwogMjAxNy0wMS0wMyAgSmVyIE5vYmxlICA8
amVyLm5vYmxlQGFwcGxlLmNvbT4KIAogICAgICAgICBDaGVjayBmb3IgdGhlIGV4aXN0ZW5jZSBv
ZiBBVlNhbXBsZUJ1ZmZlckF1ZGlvUmVuZGVyZXIuaCBiZWZvcmUgcmVkZWNsYXJpbmcgQVZTYW1w
bGVCdWZmZXJBdWRpb1JlbmRlcmVyCkluZGV4OiBTb3VyY2UvV2ViQ29yZS9jcnlwdG8vYWxnb3Jp
dGhtcy9DcnlwdG9BbGdvcml0aG1BRVNfS1cuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL2NyeXB0by9hbGdvcml0aG1zL0NyeXB0b0FsZ29yaXRobUFFU19LVy5jcHAJKHJldmlzaW9u
IDIxMDI1MikKKysrIFNvdXJjZS9XZWJDb3JlL2NyeXB0by9hbGdvcml0aG1zL0NyeXB0b0FsZ29y
aXRobUFFU19LVy5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRl
ICJDcnlwdG9LZXlBRVMuaCIKICNpbmNsdWRlICJDcnlwdG9LZXlEYXRhT2N0ZXRTZXF1ZW5jZS5o
IgogI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKKyNpbmNsdWRlIDx3dGYvVmFyaWFudC5oPgog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2NyeXB0by9hbGdv
cml0aG1zL0NyeXB0b0FsZ29yaXRobUhNQUMuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJD
b3JlL2NyeXB0by9hbGdvcml0aG1zL0NyeXB0b0FsZ29yaXRobUhNQUMuY3BwCShyZXZpc2lvbiAy
MTAyNTIpCisrKyBTb3VyY2UvV2ViQ29yZS9jcnlwdG8vYWxnb3JpdGhtcy9DcnlwdG9BbGdvcml0
aG1ITUFDLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzQsNiArMzQsNyBAQAogI2luY2x1ZGUgIkNy
eXB0b0tleURhdGFPY3RldFNlcXVlbmNlLmgiCiAjaW5jbHVkZSAiQ3J5cHRvS2V5SE1BQy5oIgog
I2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKKyNpbmNsdWRlIDx3dGYvVmFyaWFudC5oPgogCiBu
YW1lc3BhY2UgV2ViQ29yZSB7CiAKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL2NyeXB0by9hbGdvcml0
aG1zL0NyeXB0b0FsZ29yaXRobVJTQUVTX1BLQ1MxX3YxXzUuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2NyeXB0by9hbGdvcml0aG1zL0NyeXB0b0FsZ29yaXRobVJTQUVTX1BLQ1Mx
X3YxXzUuY3BwCShyZXZpc2lvbiAyMTAyNTIpCisrKyBTb3VyY2UvV2ViQ29yZS9jcnlwdG8vYWxn
b3JpdGhtcy9DcnlwdG9BbGdvcml0aG1SU0FFU19QS0NTMV92MV81LmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMzUsNiArMzUsNyBAQAogI2luY2x1ZGUgIkNyeXB0b0tleVBhaXIuaCIKICNpbmNsdWRl
ICJDcnlwdG9LZXlSU0EuaCIKICNpbmNsdWRlICJFeGNlcHRpb25Db2RlLmgiCisjaW5jbHVkZSA8
d3RmL1ZhcmlhbnQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkluZGV4OiBTb3VyY2UvV2Vi
Q29yZS9jcnlwdG8vYWxnb3JpdGhtcy9DcnlwdG9BbGdvcml0aG1SU0FTU0FfUEtDUzFfdjFfNS5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvY3J5cHRvL2FsZ29yaXRobXMvQ3J5cHRv
QWxnb3JpdGhtUlNBU1NBX1BLQ1MxX3YxXzUuY3BwCShyZXZpc2lvbiAyMTAyNTIpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9jcnlwdG8vYWxnb3JpdGhtcy9DcnlwdG9BbGdvcml0aG1SU0FTU0FfUEtDUzFf
djFfNS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM3LDYgKzM3LDcgQEAKICNpbmNsdWRlICJDcnlw
dG9LZXlQYWlyLmgiCiAjaW5jbHVkZSAiQ3J5cHRvS2V5UlNBLmgiCiAjaW5jbHVkZSAiRXhjZXB0
aW9uQ29kZS5oIgorI2luY2x1ZGUgPHd0Zi9WYXJpYW50Lmg+CiAKIG5hbWVzcGFjZSBXZWJDb3Jl
IHsKIApJbmRleDogU291cmNlL1dlYkNvcmUvY3J5cHRvL2FsZ29yaXRobXMvQ3J5cHRvQWxnb3Jp
dGhtUlNBX09BRVAuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL2NyeXB0by9hbGdv
cml0aG1zL0NyeXB0b0FsZ29yaXRobVJTQV9PQUVQLmNwcAkocmV2aXNpb24gMjEwMjUyKQorKysg
U291cmNlL1dlYkNvcmUvY3J5cHRvL2FsZ29yaXRobXMvQ3J5cHRvQWxnb3JpdGhtUlNBX09BRVAu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNyw2ICszNyw3IEBACiAjaW5jbHVkZSAiQ3J5cHRvS2V5
UGFpci5oIgogI2luY2x1ZGUgIkNyeXB0b0tleVJTQS5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbkNv
ZGUuaCIKKyNpbmNsdWRlIDx3dGYvVmFyaWFudC5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAK
SW5kZXg6IFNvdXJjZS9XZWJDb3JlL2RvbS9FeGNlcHRpb25Pci5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL2RvbS9FeGNlcHRpb25Pci5oCShyZXZpc2lvbiAyMTAyNTIpCisrKyBTb3Vy
Y2UvV2ViQ29yZS9kb20vRXhjZXB0aW9uT3IuaAkod29ya2luZyBjb3B5KQpAQCAtMjcsOCArMjcs
NyBAQCBTT0ZUV0FSRSwgRVZFTiBJRiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJCiAjcHJhZ21hIG9u
Y2UKIAogI2luY2x1ZGUgIkV4Y2VwdGlvbi5oIgotI2luY2x1ZGUgPHd0Zi9PcHRpb25hbC5oPgot
I2luY2x1ZGUgPHd0Zi9WYXJpYW50Lmg+CisjaW5jbHVkZSA8d3RmL0V4cGVjdGVkLmg+CiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNDMsNyArNDIsNyBAQCBwdWJsaWM6CiAgICAgUmV0dXJu
VHlwZSYmIHJlbGVhc2VSZXR1cm5WYWx1ZSgpOwogCiBwcml2YXRlOgotICAgIFZhcmlhbnQ8RXhj
ZXB0aW9uLCBSZXR1cm5UeXBlPiBtX3ZhbHVlOworICAgIEV4cGVjdGVkPFJldHVyblR5cGUsIEV4
Y2VwdGlvbj4gbV92YWx1ZTsKIH07CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFJldHVyblJlZmVyZW5j
ZVR5cGU+IGNsYXNzIEV4Y2VwdGlvbk9yPFJldHVyblJlZmVyZW5jZVR5cGUmPiB7CkBAIC02OCwx
MyArNjcsMTMgQEAgcHVibGljOgogICAgIEV4Y2VwdGlvbiYmIHJlbGVhc2VFeGNlcHRpb24oKTsK
IAogcHJpdmF0ZToKLSAgICBzdGQ6Om9wdGlvbmFsPEV4Y2VwdGlvbj4gbV9leGNlcHRpb247Cisg
ICAgRXhwZWN0ZWQ8dm9pZCwgRXhjZXB0aW9uPiBtX3ZhbHVlOwogfTsKIAogRXhjZXB0aW9uT3I8
dm9pZD4gaXNvbGF0ZWRDb3B5KEV4Y2VwdGlvbk9yPHZvaWQ+JiYpOwogCiB0ZW1wbGF0ZTx0eXBl
bmFtZSBSZXR1cm5UeXBlPiBpbmxpbmUgRXhjZXB0aW9uT3I8UmV0dXJuVHlwZT46OkV4Y2VwdGlv
bk9yKEV4Y2VwdGlvbiYmIGV4Y2VwdGlvbikKLSAgICA6IG1fdmFsdWUoV1RGTW92ZShleGNlcHRp
b24pKQorICAgIDogbV92YWx1ZShtYWtlVW5leHBlY3RlZChXVEZNb3ZlKGV4Y2VwdGlvbikpKQog
ewogfQogCkBAIC05MCwxNyArODksMTcgQEAgdGVtcGxhdGU8dHlwZW5hbWUgUmV0dXJuVHlwZT4g
dGVtcGxhdGU8dAogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBSZXR1cm5UeXBlPiBpbmxpbmUgYm9vbCBF
eGNlcHRpb25PcjxSZXR1cm5UeXBlPjo6aGFzRXhjZXB0aW9uKCkgY29uc3QKIHsKLSAgICByZXR1
cm4gV1RGOjpob2xkc19hbHRlcm5hdGl2ZTxFeGNlcHRpb24+KG1fdmFsdWUpOworICAgIHJldHVy
biAhbV92YWx1ZS5oYXNWYWx1ZSgpOwogfQogCiB0ZW1wbGF0ZTx0eXBlbmFtZSBSZXR1cm5UeXBl
PiBpbmxpbmUgRXhjZXB0aW9uJiYgRXhjZXB0aW9uT3I8UmV0dXJuVHlwZT46OnJlbGVhc2VFeGNl
cHRpb24oKQogewotICAgIHJldHVybiBXVEY6OmdldDxFeGNlcHRpb24+KFdURk1vdmUobV92YWx1
ZSkpOworICAgIHJldHVybiBXVEZNb3ZlKG1fdmFsdWUuZXJyb3IoKSk7CiB9CiAKIHRlbXBsYXRl
PHR5cGVuYW1lIFJldHVyblR5cGU+IGlubGluZSBSZXR1cm5UeXBlJiYgRXhjZXB0aW9uT3I8UmV0
dXJuVHlwZT46OnJlbGVhc2VSZXR1cm5WYWx1ZSgpCiB7Ci0gICAgcmV0dXJuIFdURjo6Z2V0PFJl
dHVyblR5cGU+KFdURk1vdmUobV92YWx1ZSkpOworICAgIHJldHVybiBXVEZNb3ZlKG1fdmFsdWUu
dmFsdWUoKSk7CiB9CiAKIHRlbXBsYXRlPHR5cGVuYW1lIFJldHVyblJlZmVyZW5jZVR5cGU+IGlu
bGluZSBFeGNlcHRpb25PcjxSZXR1cm5SZWZlcmVuY2VUeXBlJj46OkV4Y2VwdGlvbk9yKEV4Y2Vw
dGlvbiYmIGV4Y2VwdGlvbikKQEAgLTEyOSwxOCArMTI4LDE4IEBAIHRlbXBsYXRlPHR5cGVuYW1l
IFJldHVyblJlZmVyZW5jZVR5cGU+IGkKIH0KIAogaW5saW5lIEV4Y2VwdGlvbk9yPHZvaWQ+OjpF
eGNlcHRpb25PcihFeGNlcHRpb24mJiBleGNlcHRpb24pCi0gICAgOiBtX2V4Y2VwdGlvbihXVEZN
b3ZlKGV4Y2VwdGlvbikpCisgICAgOiBtX3ZhbHVlKG1ha2VVbmV4cGVjdGVkKFdURk1vdmUoZXhj
ZXB0aW9uKSkpCiB7CiB9CiAKIGlubGluZSBib29sIEV4Y2VwdGlvbk9yPHZvaWQ+OjpoYXNFeGNl
cHRpb24oKSBjb25zdAogewotICAgIHJldHVybiAhIW1fZXhjZXB0aW9uOworICAgIHJldHVybiAh
bV92YWx1ZS5oYXNWYWx1ZSgpOwogfQogCiBpbmxpbmUgRXhjZXB0aW9uJiYgRXhjZXB0aW9uT3I8
dm9pZD46OnJlbGVhc2VFeGNlcHRpb24oKQogewotICAgIHJldHVybiBXVEZNb3ZlKG1fZXhjZXB0
aW9uLnZhbHVlKCkpOworICAgIHJldHVybiBXVEZNb3ZlKG1fdmFsdWUuZXJyb3IoKSk7CiB9CiAK
IGlubGluZSBFeGNlcHRpb25Pcjx2b2lkPiBpc29sYXRlZENvcHkoRXhjZXB0aW9uT3I8dm9pZD4m
JiB2YWx1ZSkK
</data>

          </attachment>
      

    </bug>

</bugzilla>