<?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>22673</bug_id>
          
          <creation_ts>2008-12-04 23:13:58 -0800</creation_ts>
          <short_desc>Added support for the assertion (?=) and inverted assertion (?!) atoms in WREC.</short_desc>
          <delta_ts>2008-12-05 08:49:57 -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>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</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="Geoffrey Garen">ggaren</reporter>
          <assigned_to name="Geoffrey Garen">ggaren</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>101442</commentid>
    <comment_count>0</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2008-12-04 23:13:58 -0800</bug_when>
    <thetext>Patch coming.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>101443</commentid>
    <comment_count>1</comment_count>
      <attachid>25763</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2008-12-04 23:14:20 -0800</bug_when>
    <thetext>Created attachment 25763
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>101477</commentid>
    <comment_count>2</comment_count>
      <attachid>25763</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2008-12-05 05:51:17 -0800</bug_when>
    <thetext>Comment on attachment 25763
patch

&gt; +    switch (type) {
&gt; +    case Generator::Assertion: {
&gt; +        m_generator.generateParenthesesAssertion(failures);
&gt; +        break;
&gt; +    }
&gt; +    case Generator::InvertedAssertion: {
&gt; +        m_generator.generateParenthesesInvertedAssertion(failures);
&gt; +        break;
&gt; +    }
&gt; +    default: {
&gt; +        m_error = UnsupportedParentheses;
&gt; +        return false;
&gt; +    }
&gt; +    }

We normally indent cases from the switch. We normally use braces for cases only when they are needed.

&gt; +    switch (q.type) {
&gt; +    case Quantifier::None: {
&gt; +        return true;
&gt; +    }
&gt; +    case Quantifier::Greedy: {
&gt; +        m_error = UnsupportedParentheses;
&gt; +        return false;
&gt; +    }
&gt; +    case Quantifier::NonGreedy: {
&gt; +        m_error = UnsupportedParentheses;
&gt; +        return false;
&gt; +    }
&gt; +    case Quantifier::Error: {
&gt; +        return false;
&gt; +    }
&gt; +    }

Ditto.

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>101494</commentid>
    <comment_count>3</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2008-12-05 08:49:57 -0800</bug_when>
    <thetext>Committed revision 39030.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>25763</attachid>
            <date>2008-12-04 23:14:20 -0800</date>
            <delta_ts>2008-12-05 05:51:17 -0800</delta_ts>
            <desc>patch</desc>
            <filename>patch-assertion-parens.txt</filename>
            <type>text/plain</type>
            <size>8821</size>
            <attacher name="Geoffrey Garen">ggaren</attacher>
            
              <data encoding="base64">SW5kZXg6IENoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBDaGFuZ2VMb2cJKHJldmlzaW9uIDM5MDIw
KQorKysgQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjggQEAKKzIwMDgtMTIt
MDQgIEdlb2ZmcmV5IEdhcmVuICA8Z2dhcmVuQGFwcGxlLmNvbT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKyAgICAgICAgCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yMjY3MworICAgICAgICAKKyAgICAgICAgQWRkZWQgc3Vw
cG9ydCBmb3IgdGhlIGFzc2VydGlvbiAoPz0pIGFuZCBpbnZlcnRlZCBhc3NlcnRpb24gKD8hKSBh
dG9tcworICAgICAgICBpbiBXUkVDLgorCisgICAgICAgICogd3JlYy9XUkVDR2VuZXJhdG9yLmNw
cDoKKyAgICAgICAgKEpTQzo6V1JFQzo6R2VuZXJhdG9yOjpnZW5lcmF0ZVBhcmVudGhlc2VzQXNz
ZXJ0aW9uKToKKyAgICAgICAgKEpTQzo6V1JFQzo6R2VuZXJhdG9yOjpnZW5lcmF0ZVBhcmVudGhl
c2VzSW52ZXJ0ZWRBc3NlcnRpb24pOiBTcGxpdCB0aGUKKyAgICAgICAgb2xkICh1bnVzZWQpIGdl
bmVyYXRlUGFyZW50aGVzZXMgaW50byB0aGVzZSB0d28gZnVuY3Rpb25zLCB3aXRoIG1vcmUKKyAg
ICAgICAgbGltaXRlZCBjYXBhYmlsaXRpZXMuCisgICAgICAgIAorICAgICAgICAqIHdyZWMvV1JF
Q0dlbmVyYXRvci5oOgorICAgICAgICAoSlNDOjpXUkVDOjpHZW5lcmF0b3I6Oik6IE1vdmVkIGFu
IGVudW0gdG8gdGhlIHRvcCBvZiB0aGUgY2xhc3MgZGVmaW5pdGlvbiwKKyAgICAgICAgdG8gbWF0
Y2ggdGhlIFdlYktpdCBzdHlsZSwgYW5kIHJlbW92ZWQgYSBkZWZ1bmN0IGNvbW1lbnQuCisKKyAg
ICAgICAgKiB3cmVjL1dSRUNQYXJzZXIuY3BwOgorICAgICAgICAoSlNDOjpXUkVDOjpQYXJzZXI6
OnBhcnNlUGFyZW50aGVzZXMpOgorICAgICAgICAoSlNDOjpXUkVDOjpQYXJzZXI6OmNvbnN1bWVQ
YXJlbnRoZXNlc1R5cGUpOgorICAgICAgICAqIHdyZWMvV1JFQ1BhcnNlci5oOgorICAgICAgICAo
SlNDOjpXUkVDOjpQYXJzZXI6Oik6IEFkZGVkIHN1cHBvcnQgZm9yIHBhcnNpbmcgKD89KSBhbmQg
KD8hKS4KKwogMjAwOC0xMi0wNCAgR2F2aW4gQmFycmFjbG91Z2ggIDxiYXJyYWNsb3VnaEBhcHBs
ZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgR2VvZmYgR2FyZW4uCkluZGV4OiB3cmVjL1dS
RUNHZW5lcmF0b3IuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIHdyZWMvV1JFQ0dlbmVyYXRvci5jcHAJKHJl
dmlzaW9uIDM5MDE5KQorKysgd3JlYy9XUkVDR2VuZXJhdG9yLmNwcAkod29ya2luZyBjb3B5KQpA
QCAtNDg2LDUwICs0ODYsMzYgQEAgdm9pZCBHZW5lcmF0b3I6OmdlbmVyYXRlQ2hhcmFjdGVyQ2xh
c3MoSgogICAgIGFkZDMyKEltbTMyKDEpLCBpbmRleCk7CiB9CiAKLUdlbmVyYXRvcjo6SnVtcCBH
ZW5lcmF0b3I6OmdlbmVyYXRlUGFyZW50aGVzZXMoUGFyZW50aGVzZXNUeXBlIHR5cGUpCit2b2lk
IEdlbmVyYXRvcjo6Z2VuZXJhdGVQYXJlbnRoZXNlc0Fzc2VydGlvbihKdW1wTGlzdCYgZmFpbHVy
ZXMpCiB7Ci0gICAgaWYgKHR5cGUgPT0gY2FwdHVyaW5nKQotICAgICAgICBtX3BhcnNlci5yZWNv
cmRTdWJwYXR0ZXJuKCk7CisgICAgSnVtcExpc3QgZGlzanVuY3Rpb25GYWlsZWQ7CiAKLSAgICB1
bnNpZ25lZCBzdWJwYXR0ZXJuSWQgPSBtX3BhcnNlci5udW1TdWJwYXR0ZXJucygpOwotCi0gICAg
Ly8gcHVzaCBwb3MsIGJvdGggdG8gcHJlc2VydmUgZm9yIGZhaWwgKyByZWxvYWRlZCBpbiBwYXJz
ZURpc2p1bmN0aW9uCiAgICAgcHVzaChpbmRleCk7CisgICAgbV9wYXJzZXIucGFyc2VEaXNqdW5j
dGlvbihkaXNqdW5jdGlvbkZhaWxlZCk7CisgICAgSnVtcCBzdWNjZXNzID0ganVtcCgpOwogCi0g
ICAgLy8gUGxhbnQgYSBkaXNqdW5jdGlvbiwgd3JhcHBlZCB0byBpbnZlcnQgYmVoYXZpb3VyIC0g
Ci0gICAgSnVtcExpc3QgbmV3RmFpbHVyZXM7Ci0gICAgbV9wYXJzZXIucGFyc2VEaXNqdW5jdGlv
bihuZXdGYWlsdXJlcyk7Ci0gICAgCi0gICAgaWYgKHR5cGUgPT0gY2FwdHVyaW5nKSB7Ci0gICAg
ICAgIHBvcChjaGFyYWN0ZXIpOwotICAgICAgICBzdG9yZTMyKGNoYXJhY3RlciwgQWRkcmVzcyhv
dXRwdXQsICgyICogc3VicGF0dGVybklkKSAqIHNpemVvZihpbnQpKSk7Ci0gICAgICAgIHN0b3Jl
MzIoaW5kZXgsIEFkZHJlc3Mob3V0cHV0LCAoMiAqIHN1YnBhdHRlcm5JZCArIDEpICogc2l6ZW9m
KGludCkpKTsKLSAgICB9IGVsc2UgaWYgKHR5cGUgPT0gbm9uX2NhcHR1cmluZykKLSAgICAgICAg
cG9wKCk7Ci0gICAgZWxzZQotICAgICAgICBwb3AoaW5kZXgpOwotCi0gICAgLy8gVGhpcyBpcyBh
IGxpdHRsZSBsYW1lIC0ganVtcCB0byBqdW1wIGlmIHRoZXJlIGlzIGEgbmVzdGVkIGRpc2p1bmN0
aW9uLgotICAgIC8vIChzdWdnZXN0aW9uIHRvIGZpeDogbWFrZSBwYXJzZURpc2p1bmN0aW9uIHBv
cHVsYXRlIGEgSnVtcExpc3Qgb2YKLSAgICAvLyBkaXNqdW5jdCBzdWNjZXNzZXMuLi4gdGhpcyBp
cyBwcm9iYWJseSBub3Qgd29ydGggdGhlIGNvbXBpbGUgY29zdCBpbgotICAgIC8vIHRoZSBjb21t
b24gY2FzZSB0byBmaXgpLgotICAgIEp1bXAgc3VjY2Vzc2Z1bE1hdGNoID0ganVtcCgpOworICAg
IGRpc2p1bmN0aW9uRmFpbGVkLmxpbmsoKTsKKyAgICBwb3AoaW5kZXgpOworICAgIGZhaWx1cmVz
LmFwcGVuZChqdW1wKCkpOwogCi0gICAgbmV3RmFpbHVyZXMubGluaygpOworICAgIHN1Y2Nlc3Mu
bGluaygpOwogICAgIHBvcChpbmRleCk7Cit9CiAKLSAgICBKdW1wIGp1bXBUb0ZhaWw7Ci0gICAg
Ly8gSWYgdGhpcyB3YXMgYW4gaW52ZXJ0ZWQgYXNzZXJ0LCBmYWlsID0gc3VjY2VzcyEgLSBqdXN0
IGxldCB0aGUgZmFpbHVyZSBjYXNlIGRyb3AgdGhyb3VnaCwKLSAgICAvLyBzdWNjZXNzIGNhc2Ug
Z29lcyB0byBmYWlsdXJlcy4gIEJvdGggcGF0aHMgcmVzdG9yZSBjdXJyIHBvcy4KLSAgICBpZiAo
dHlwZSA9PSBpbnZlcnRlZF9hc3NlcnRpb24pCi0gICAgICAgIGp1bXBUb0ZhaWwgPSBzdWNjZXNz
ZnVsTWF0Y2g7Ci0gICAgZWxzZSB7Ci0gICAgICAgIC8vIHBsYW50IGEganVtcCBzbyBhbnkgZmFp
bCB3aWxsIGxpbmsgb2ZmIHRvICdmYWlsdXJlcycsCi0gICAgICAgIGp1bXBUb0ZhaWwgPSBqdW1w
KCk7Ci0gICAgICAgIC8vIGxpbmsgc3VjY2Vzc2VzIHRvIGp1bXAgaGVyZQotICAgICAgICBzdWNj
ZXNzZnVsTWF0Y2gubGluaygpOwotICAgIH0KLSAgICByZXR1cm4ganVtcFRvRmFpbDsKK3ZvaWQg
R2VuZXJhdG9yOjpnZW5lcmF0ZVBhcmVudGhlc2VzSW52ZXJ0ZWRBc3NlcnRpb24oSnVtcExpc3Qm
IGZhaWx1cmVzKQoreworICAgIEp1bXBMaXN0IGRpc2p1bmN0aW9uRmFpbGVkOworCisgICAgcHVz
aChpbmRleCk7CisgICAgbV9wYXJzZXIucGFyc2VEaXNqdW5jdGlvbihkaXNqdW5jdGlvbkZhaWxl
ZCk7CisKKyAgICAvLyBJZiB0aGUgZGlzanVuY3Rpb24gc3VjY2VlZGVkLCB0aGUgaW52ZXJ0ZWQg
YXNzZXJ0aW9uIGZhaWxlZC4KKyAgICBwb3AoaW5kZXgpOworICAgIGZhaWx1cmVzLmFwcGVuZChq
dW1wKCkpOworCisgICAgLy8gSWYgdGhlIGRpc2p1bmN0aW9uIGZhaWxlZCwgdGhlIGludmVydGVk
IGFzc2VydGlvbiBzdWNjZWVkZWQuCisgICAgZGlzanVuY3Rpb25GYWlsZWQubGluaygpOworICAg
IHBvcChpbmRleCk7CiB9CiAKIHZvaWQgR2VuZXJhdG9yOjpnZW5lcmF0ZVBhcmVudGhlc2VzTm9u
R3JlZWR5KEp1bXBMaXN0JiBmYWlsdXJlcywgTGFiZWwgc3RhcnQsIEp1bXAgc3VjY2VzcywgSnVt
cCBmYWlsKQpJbmRleDogd3JlYy9XUkVDR2VuZXJhdG9yLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gd3JlYy9X
UkVDR2VuZXJhdG9yLmgJKHJldmlzaW9uIDM5MDE5KQorKysgd3JlYy9XUkVDR2VuZXJhdG9yLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTQ5LDYgKzQ5LDggQEAgbmFtZXNwYWNlIEpTQyB7IG5hbWVzcGFj
ZSBXUkVDIHsKICAgICAgICAgdXNpbmcgTWFjcm9Bc3NlbWJsZXI6Okp1bXBMaXN0OwogICAgICAg
ICB1c2luZyBNYWNyb0Fzc2VtYmxlcjo6TGFiZWw7CiAKKyAgICAgICAgZW51bSBQYXJlbnRoZXNl
c1R5cGUgeyBDYXB0dXJpbmcsIE5vbkNhcHR1cmluZywgQXNzZXJ0aW9uLCBJbnZlcnRlZEFzc2Vy
dGlvbiwgRXJyb3IgfTsKKwogICAgICAgICBzdGF0aWMgQ29tcGlsZWRSZWdFeHAgY29tcGlsZVJl
Z0V4cChjb25zdCBVU3RyaW5nJiBwYXR0ZXJuLCB1bnNpZ25lZCogbnVtU3VicGF0dGVybnNfcHRy
LCBjb25zdCBjaGFyKiogZXJyb3JfcHRyLCBib29sIGlnbm9yZUNhc2UgPSBmYWxzZSwgYm9vbCBt
dWx0aWxpbmUgPSBmYWxzZSk7CiAKICAgICAgICAgR2VuZXJhdG9yKFBhcnNlciYgcGFyc2VyKQpA
QCAtODUsOCArODcsOCBAQCBuYW1lc3BhY2UgSlNDIHsgbmFtZXNwYWNlIFdSRUMgewogICAgICAg
ICB2b2lkIGdlbmVyYXRlQXNzZXJ0aW9uRU9MKEp1bXBMaXN0JiBmYWlsdXJlcyk7CiAgICAgICAg
IHZvaWQgZ2VuZXJhdGVCYWNrcmVmZXJlbmNlKEp1bXBMaXN0JiBmYWlsdXJlcywgdW5zaWduZWQg
c3VicGF0dGVybklEKTsKICAgICAgICAgdm9pZCBnZW5lcmF0ZUJhY2tyZWZlcmVuY2VRdWFudGlm
aWVyKEp1bXBMaXN0JiBmYWlsdXJlcywgUXVhbnRpZmllcjo6VHlwZSBxdWFudGlmaWVyVHlwZSwg
dW5zaWduZWQgc3VicGF0dGVybklkLCB1bnNpZ25lZCBtaW4sIHVuc2lnbmVkIG1heCk7Ci0gICAg
ICAgIGVudW0gUGFyZW50aGVzZXNUeXBlIHsgY2FwdHVyaW5nLCBub25fY2FwdHVyaW5nLCBhc3Nl
cnRpb24sIGludmVydGVkX2Fzc2VydGlvbiB9OyAvLyBvcmRlciBpcyByZWxpZWQgb24gaW4gZ2Vu
ZXJhdGVQYXJlbnRoZXNlcygpCi0gICAgICAgIEp1bXAgZ2VuZXJhdGVQYXJlbnRoZXNlcyhQYXJl
bnRoZXNlc1R5cGUgdHlwZSk7CisgICAgICAgIHZvaWQgZ2VuZXJhdGVQYXJlbnRoZXNlc0Fzc2Vy
dGlvbihKdW1wTGlzdCYgZmFpbHVyZXMpOworICAgICAgICB2b2lkIGdlbmVyYXRlUGFyZW50aGVz
ZXNJbnZlcnRlZEFzc2VydGlvbihKdW1wTGlzdCYgZmFpbHVyZXMpOwogICAgICAgICBKdW1wIGdl
bmVyYXRlUGFyZW50aGVzZXNSZXNldFRyYW1wb2xpbmUoSnVtcExpc3QmIG5ld0ZhaWx1cmVzLCB1
bnNpZ25lZCBzdWJwYXR0ZXJuSWRCZWZvcmUsIHVuc2lnbmVkIHN1YnBhdHRlcm5JZEFmdGVyKTsK
ICAgICAgICAgdm9pZCBnZW5lcmF0ZVBhcmVudGhlc2VzTm9uR3JlZWR5KEp1bXBMaXN0JiBmYWls
dXJlcywgTGFiZWwgc3RhcnQsIEp1bXAgc3VjY2VzcywgSnVtcCBmYWlsKTsKIApJbmRleDogd3Jl
Yy9XUkVDUGFyc2VyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSB3cmVjL1dSRUNQYXJzZXIuY3BwCShyZXZp
c2lvbiAzOTAxOSkKKysrIHdyZWMvV1JFQ1BhcnNlci5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI1
NywxMiArMjU3LDU1IEBAIGJvb2wgUGFyc2VyOjpwYXJzZUJhY2tyZWZlcmVuY2VRdWFudGlmaWUK
ICAgICByZXR1cm4gdHJ1ZTsKIH0KIAotYm9vbCBQYXJzZXI6OnBhcnNlUGFyZW50aGVzZXMoSnVt
cExpc3QmKQorYm9vbCBQYXJzZXI6OnBhcnNlUGFyZW50aGVzZXMoSnVtcExpc3QmIGZhaWx1cmVz
KQogewotICAgIC8vIEZJWE1FOiBXZSBkb24ndCBjdXJyZW50bHkgYmFja3RyYWNrIGNvcnJlY3Rs
eSB3aXRoaW4gcGFyZW50aGVzZXMgaW4gY2FzZXMgc3VjaCBhcwotICAgIC8vICJjIi5tYXRjaCgv
KC4qKWMvKSBzbyB3ZSBmYWxsIGJhY2sgdG8gUENSRSBmb3IgYW55IHJlZ2V4cCBjb250YWluaW5n
IHBhcmVudGhlc2VzLgorICAgIFBhcmVudGhlc2VzVHlwZSB0eXBlID0gY29uc3VtZVBhcmVudGhl
c2VzVHlwZSgpOwogCi0gICAgbV9lcnJvciA9IFVuc3VwcG9ydGVkUGFyZW50aGVzZXM7CisgICAg
Ly8gRklYTUU6IFdSRUMgb3JpZ2luYWxseSBmYWlsZWQgdG8gYmFja3RyYWNrIGNvcnJlY3RseSBp
biBjYXNlcyBzdWNoIGFzCisgICAgLy8gImMiLm1hdGNoKC8oLiopYy8pLiBOb3csIG1vc3QgcGFy
ZW50aGVzZXMgaGFuZGxpbmcgaXMgZGlzYWJsZWQuIEZvcgorICAgIC8vIHVuc3VwcG9ydGVkIHBh
cmVudGhlc2VzLCB3ZSBmYWxsIGJhY2sgb24gUENSRS4KKworICAgIHN3aXRjaCAodHlwZSkgewor
ICAgIGNhc2UgR2VuZXJhdG9yOjpBc3NlcnRpb246IHsKKyAgICAgICAgbV9nZW5lcmF0b3IuZ2Vu
ZXJhdGVQYXJlbnRoZXNlc0Fzc2VydGlvbihmYWlsdXJlcyk7CisgICAgICAgIGJyZWFrOworICAg
IH0KKyAgICBjYXNlIEdlbmVyYXRvcjo6SW52ZXJ0ZWRBc3NlcnRpb246IHsKKyAgICAgICAgbV9n
ZW5lcmF0b3IuZ2VuZXJhdGVQYXJlbnRoZXNlc0ludmVydGVkQXNzZXJ0aW9uKGZhaWx1cmVzKTsK
KyAgICAgICAgYnJlYWs7CisgICAgfQorICAgIGRlZmF1bHQ6IHsKKyAgICAgICAgbV9lcnJvciA9
IFVuc3VwcG9ydGVkUGFyZW50aGVzZXM7CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB9Cisg
ICAgfQorCisgICAgLy8gTWlzc2luZyAnKScuCisgICAgaWYgKGNvbnN1bWUoKSAhPSAnKScpIHsK
KyAgICAgICAgbV9lcnJvciA9IE1hbGZvcm1lZFBhcmVudGhlc2VzOworICAgICAgICByZXR1cm4g
ZmFsc2U7CisgICAgfQorCisgICAgUXVhbnRpZmllciBxID0gY29uc3VtZVF1YW50aWZpZXIoKTsK
KworICAgIHN3aXRjaCAocS50eXBlKSB7CisgICAgY2FzZSBRdWFudGlmaWVyOjpOb25lOiB7Cisg
ICAgICAgIHJldHVybiB0cnVlOworICAgIH0KKyAgICBjYXNlIFF1YW50aWZpZXI6OkdyZWVkeTog
eworICAgICAgICBtX2Vycm9yID0gVW5zdXBwb3J0ZWRQYXJlbnRoZXNlczsKKyAgICAgICAgcmV0
dXJuIGZhbHNlOworICAgIH0KKyAgICBjYXNlIFF1YW50aWZpZXI6Ok5vbkdyZWVkeTogeworICAg
ICAgICBtX2Vycm9yID0gVW5zdXBwb3J0ZWRQYXJlbnRoZXNlczsKKyAgICAgICAgcmV0dXJuIGZh
bHNlOworICAgIH0KKyAgICBjYXNlIFF1YW50aWZpZXI6OkVycm9yOiB7CisgICAgICAgIHJldHVy
biBmYWxzZTsKKyAgICB9CisgICAgfQorICAgIAorICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwog
ICAgIHJldHVybiBmYWxzZTsKIH0KIApAQCAtNTU5LDYgKzYwMiwyOCBAQCB2b2lkIFBhcnNlcjo6
cGFyc2VEaXNqdW5jdGlvbihKdW1wTGlzdCYgCiAgICAgbV9nZW5lcmF0b3IudGVybWluYXRlRGlz
anVuY3Rpb24oc3VjY2Vzc2VzKTsKIH0KIAorR2VuZXJhdG9yOjpQYXJlbnRoZXNlc1R5cGUgUGFy
c2VyOjpjb25zdW1lUGFyZW50aGVzZXNUeXBlKCkKK3sKKyAgICBpZiAocGVlaygpICE9ICc/JykK
KyAgICAgICAgcmV0dXJuIEdlbmVyYXRvcjo6Q2FwdHVyaW5nOworICAgIGNvbnN1bWUoKTsKKwor
ICAgIHN3aXRjaCAoY29uc3VtZSgpKSB7CisgICAgY2FzZSAnOic6CisgICAgICAgIHJldHVybiBH
ZW5lcmF0b3I6Ok5vbkNhcHR1cmluZzsKKyAgICAKKyAgICBjYXNlICc9JzoKKyAgICAgICAgcmV0
dXJuIEdlbmVyYXRvcjo6QXNzZXJ0aW9uOworCisgICAgY2FzZSAnISc6CisgICAgICAgIHJldHVy
biBHZW5lcmF0b3I6OkludmVydGVkQXNzZXJ0aW9uOworCisgICAgZGVmYXVsdDoKKyAgICAgICAg
bV9lcnJvciA9IE1hbGZvcm1lZFBhcmVudGhlc2VzOworICAgICAgICByZXR1cm4gR2VuZXJhdG9y
OjpFcnJvcjsKKyAgICB9Cit9CisKIH0gfSAvLyBuYW1lc3BhY2UgSlNDOjpXUkVDCiAKICNlbmRp
ZiAvLyBFTkFCTEUoV1JFQykKSW5kZXg6IHdyZWMvV1JFQ1BhcnNlci5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IHdyZWMvV1JFQ1BhcnNlci5oCShyZXZpc2lvbiAzOTAxOSkKKysrIHdyZWMvV1JFQ1BhcnNlci5o
CSh3b3JraW5nIGNvcHkpCkBAIC00MCw5ICs0MCwxMCBAQCBuYW1lc3BhY2UgSlNDIHsgbmFtZXNw
YWNlIFdSRUMgewogCiAgICAgc3RydWN0IENoYXJhY3RlckNsYXNzOwogCisgICAgY2xhc3MgUGFy
c2VyIHsKICAgICB0eXBlZGVmIEdlbmVyYXRvcjo6SnVtcExpc3QgSnVtcExpc3Q7CisgICAgdHlw
ZWRlZiBHZW5lcmF0b3I6OlBhcmVudGhlc2VzVHlwZSBQYXJlbnRoZXNlc1R5cGU7CiAKLSAgICBj
bGFzcyBQYXJzZXIgewogICAgIHB1YmxpYzoKICAgICAgICAgZW51bSBFcnJvciB7CiAgICAgICAg
ICAgICBOb0Vycm9yLApAQCAtNTEsNyArNTIsNiBAQCBuYW1lc3BhY2UgSlNDIHsgbmFtZXNwYWNl
IFdSRUMgewogICAgICAgICAgICAgTWFsZm9ybWVkUGF0dGVybiwKICAgICAgICAgICAgIE1hbGZv
cm1lZFF1YW50aWZpZXIsCiAgICAgICAgICAgICBNYWxmb3JtZWRFc2NhcGUsCi0gICAgICAgICAg
ICBVbnN1cHBvcnRlZFF1YW50aWZpZXIsCiAgICAgICAgICAgICBVbnN1cHBvcnRlZFBhcmVudGhl
c2VzLAogICAgICAgICB9OwogCkBAIC0xNzcsNiArMTc3LDcgQEAgbmFtZXNwYWNlIEpTQyB7IG5h
bWVzcGFjZSBXUkVDIHsKICAgICAgICAgQUxXQVlTX0lOTElORSBRdWFudGlmaWVyIGNvbnN1bWVH
cmVlZHlRdWFudGlmaWVyKCk7CiAgICAgICAgIFF1YW50aWZpZXIgY29uc3VtZVF1YW50aWZpZXIo
KTsKICAgICAgICAgRXNjYXBlIGNvbnN1bWVFc2NhcGUoYm9vbCBpbkNoYXJhY3RlckNsYXNzKTsK
KyAgICAgICAgUGFyZW50aGVzZXNUeXBlIGNvbnN1bWVQYXJlbnRoZXNlc1R5cGUoKTsKIAogICAg
ICAgICBzdGF0aWMgY29uc3QgaW50IEVuZE9mUGF0dGVybiA9IC0xOwogCg==
</data>
<flag name="review"
          id="12055"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>