<?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>29974</bug_id>
          
          <creation_ts>2009-10-01 11:07:17 -0700</creation_ts>
          <short_desc>[V8] Recursion guard for V8Proxy::callFunction.</short_desc>
          <delta_ts>2009-10-02 15:15:50 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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="Vitaly Repeshko">vitalyr</reporter>
          <assigned_to name="Vitaly Repeshko">vitalyr</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>dglazkov</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>151621</commentid>
    <comment_count>0</comment_count>
    <who name="Vitaly Repeshko">vitalyr</who>
    <bug_when>2009-10-01 11:07:17 -0700</bug_when>
    <thetext>[V8] Recursion guard for V8Proxy::callFunction.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151625</commentid>
    <comment_count>1</comment_count>
      <attachid>40462</attachid>
    <who name="Vitaly Repeshko">vitalyr</who>
    <bug_when>2009-10-01 11:11:35 -0700</bug_when>
    <thetext>Created attachment 40462
patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151626</commentid>
    <comment_count>2</comment_count>
      <attachid>40463</attachid>
    <who name="Vitaly Repeshko">vitalyr</who>
    <bug_when>2009-10-01 11:13:07 -0700</bug_when>
    <thetext>Created attachment 40463
patch: fixed ChangedLog formatting</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151630</commentid>
    <comment_count>3</comment_count>
      <attachid>40463</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-10-01 11:24:47 -0700</bug_when>
    <thetext>Comment on attachment 40463
patch: fixed ChangedLog formatting

r=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151631</commentid>
    <comment_count>4</comment_count>
      <attachid>40463</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-10-01 11:25:19 -0700</bug_when>
    <thetext>Comment on attachment 40463
patch: fixed ChangedLog formatting

need LayoutTests/ChangeLog.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151635</commentid>
    <comment_count>5</comment_count>
      <attachid>40464</attachid>
    <who name="Vitaly Repeshko">vitalyr</who>
    <bug_when>2009-10-01 11:32:14 -0700</bug_when>
    <thetext>Created attachment 40464
patch: updated LayoutTest/ChangeLog</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151637</commentid>
    <comment_count>6</comment_count>
      <attachid>40464</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-10-01 11:34:24 -0700</bug_when>
    <thetext>Comment on attachment 40464
patch: updated LayoutTest/ChangeLog

JS must be in WebKit style, too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151638</commentid>
    <comment_count>7</comment_count>
      <attachid>40465</attachid>
    <who name="Vitaly Repeshko">vitalyr</who>
    <bug_when>2009-10-01 11:36:57 -0700</bug_when>
    <thetext>Created attachment 40465
patch: WebKit style in JS</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151639</commentid>
    <comment_count>8</comment_count>
      <attachid>40465</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-10-01 11:39:23 -0700</bug_when>
    <thetext>Comment on attachment 40465
patch: WebKit style in JS

it&apos;s beautiful. r=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151641</commentid>
    <comment_count>9</comment_count>
      <attachid>40465</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-10-01 11:48:09 -0700</bug_when>
    <thetext>Comment on attachment 40465
patch: WebKit style in JS

Rejecting patch 40465 from commit-queue.

Failed to run &quot;[&apos;WebKitTools/Scripts/run-webkit-tests&apos;, &apos;--no-launch-safari&apos;, &apos;--quiet&apos;, &apos;--exit-after-n-failures=1&apos;]&quot; exit_code: 1
Running build-dumprendertree
Running tests from /Users/eseidel/Projects/CommitQueue/LayoutTests
Testing 11365 test cases.
fast/xmlhttprequest/xmlhttprequest-recursive-sync-event.html -&gt; failed

Exiting early after 1 failures. 8281 tests run.
159.61s total testing time

8280 test cases (99%) succeeded
1 test case (&lt;1%) had incorrect layout
3 test cases (&lt;1%) had stderr output</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151667</commentid>
    <comment_count>10</comment_count>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-10-01 12:41:42 -0700</bug_when>
    <thetext>Well, it looks like vitalyr still has some work to do :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151974</commentid>
    <comment_count>11</comment_count>
      <attachid>40547</attachid>
    <who name="Vitaly Repeshko">vitalyr</who>
    <bug_when>2009-10-02 14:37:52 -0700</bug_when>
    <thetext>Created attachment 40547
updated patch v3

Unfortunately V8 and JSC have to have slightly different expectations here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151980</commentid>
    <comment_count>12</comment_count>
      <attachid>40547</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2009-10-02 15:05:48 -0700</bug_when>
    <thetext>Comment on attachment 40547
updated patch v3

ok.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151988</commentid>
    <comment_count>13</comment_count>
      <attachid>40547</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-10-02 15:15:41 -0700</bug_when>
    <thetext>Comment on attachment 40547
updated patch v3

Clearing flags on attachment: 40547

Committed r49047: &lt;http://trac.webkit.org/changeset/49047&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>151989</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-10-02 15:15:50 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40462</attachid>
            <date>2009-10-01 11:11:35 -0700</date>
            <delta_ts>2009-10-01 11:13:07 -0700</delta_ts>
            <desc>patch</desc>
            <filename>recursion_guard.patch</filename>
            <type>text/plain</type>
            <size>3345</size>
            <attacher name="Vitaly Repeshko">vitalyr</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QveG1saHR0cHJlcXVlc3QveG1saHR0cHJlcXVl
c3QtcmVjdXJzaXZlLXN5bmMtZXZlbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC94
bWxodHRwcmVxdWVzdC94bWxodHRwcmVxdWVzdC1yZWN1cnNpdmUtc3luYy1ldmVudC1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjhhNTY0NgotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QveG1saHR0cHJlcXVlc3QveG1saHR0cHJlcXVl
c3QtcmVjdXJzaXZlLXN5bmMtZXZlbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorQ09O
U09MRSBNRVNTQUdFOiBsaW5lIDE6IFVuY2F1Z2h0IFJhbmdlRXJyb3I6IE1heGltdW0gY2FsbCBz
dGFjayBzaXplIGV4Y2VlZGVkLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFVuY2F1Z2h0IFJh
bmdlRXJyb3I6IE1heGltdW0gY2FsbCBzdGFjayBzaXplIGV4Y2VlZGVkLgorQ09OU09MRSBNRVNT
QUdFOiBsaW5lIDE6IFVuY2F1Z2h0IFJhbmdlRXJyb3I6IE1heGltdW0gY2FsbCBzdGFjayBzaXpl
IGV4Y2VlZGVkLgorVGhpcyB0ZXN0cyB0aGF0IGhhdmluZyBpbmZpbml0ZSByZWN1cnNpb24gaW4g
WE1MSHR0cFJlcXVlc3QgZXZlbnQgaGFuZGxlciBkb2VzIG5vdCBjcmFzaC4gCitQQVNTCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0dHByZXF1ZXN0LXJl
Y3Vyc2l2ZS1zeW5jLWV2ZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3htbGh0dHByZXF1ZXN0
L3htbGh0dHByZXF1ZXN0LXJlY3Vyc2l2ZS1zeW5jLWV2ZW50Lmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uODQ3MjM3NwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3QveG1saHR0cHJlcXVlc3QveG1saHR0cHJlcXVlc3QtcmVjdXJzaXZlLXN5bmMtZXZl
bnQuaHRtbApAQCAtMCwwICsxLDI5IEBACis8aHRtbD4KKzxzY3JpcHQ+CitmdW5jdGlvbiBsb2co
cykgeworICB2YXIgbG9nRGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZyIpOworICBs
b2dEaXYuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUocykpOworICBsb2dEaXYu
YXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnIiKSk7Cit9CitmdW5jdGlvbiB0
ZXN0KCkgeworICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgbGF5b3V0
VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworICB9CisgIHZhciB4aHIgPSBuZXcgWE1MSHR0
cFJlcXVlc3QoKTsKKyAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9uKCkgeworICAg
IGlmICh4aHIucmVhZHlTdGF0ZSA9PSA0KSB7CisgICAgICB4aHIub3BlbigiR0VUIiwgInJlY3Vy
c2UuaHRtbCIsIGZhbHNlKTsKKyAgICAgIHhoci5zZW5kKG51bGwpOworICAgIH0KKyAgfTsKKyAg
eGhyLm9wZW4oIkdFVCIsICJyZWN1cnNlLmh0bWwiLCBmYWxzZSk7CisgIHhoci5zZW5kKG51bGwp
OworICBsb2coIlBBU1MiKTsKK30KKzwvc2NyaXB0PgorPGJvZHkgb25sb2FkPSJ0ZXN0KCkiPgor
VGhpcyB0ZXN0cyB0aGF0IGhhdmluZyBpbmZpbml0ZSByZWN1cnNpb24gaW4gWE1MSHR0cFJlcXVl
c3QgZXZlbnQgaGFuZGxlciBkb2VzIG5vdCBjcmFzaC4KKzxicj4KKzxkaXYgaWQ9ImxvZyI+PC9k
aXY+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dl
YkNvcmUvQ2hhbmdlTG9nCmluZGV4IGFhY2MzZGMuLjg4MWUxNTIgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIw
MDktMTAtMDEgIFZpdGFseSBSZXBlc2hrbyAgPHZpdGFseXJAY2hyb21pdW0ub3JnPgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtWOF0gUmVjdXJzaW9u
IGd1YXJkIGZvciBWOFByb3h5OjpjYWxsRnVuY3Rpb24uCisJRml4ZXMgaHR0cDovL2NyYnVnLmNv
bS8yMzI3OC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTI5OTc0CisKKyAgICAgICAgVGVzdDogZmFzdC94bWxodHRwcmVxdWVzdC94bWxodHRwcmVxdWVz
dC1yZWN1cnNpdmUtc3luYy1ldmVudC5odG1sCisKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOFBy
b3h5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlY4UHJveHk6OmNhbGxGdW5jdGlvbik6CisKIDIw
MDktMDktMjkgIERhdmUgSHlhdHQgIDxoeWF0dEBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3
ZWQgYnkgSm9uIEhvbmV5Y3V0dC4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQ
cm94eS5jcHAgYi9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4UHJveHkuY3BwCmluZGV4IDRmYjBmNjgu
LmE1N2MwNTcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAKKysr
IGIvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFByb3h5LmNwcApAQCAtNDMzLDYgKzQzMywxNyBAQCB2
ODo6TG9jYWw8djg6OlZhbHVlPiBWOFByb3h5OjpjYWxsRnVuY3Rpb24odjg6OkhhbmRsZTx2ODo6
RnVuY3Rpb24+IGZ1bmN0aW9uLCB2OAogICAgIHsKICAgICAgICAgVjhDb25zb2xlTWVzc2FnZTo6
U2NvcGUgc2NvcGU7CiAKKyAgICAgICAgaWYgKG1fcmVjdXJzaW9uID49IGtNYXhSZWN1cnNpb25E
ZXB0aCkgeworICAgICAgICAgICAgdjg6OkxvY2FsPHY4OjpTdHJpbmc+IGNvZGUgPSB2ODo6U3Ry
aW5nOjpOZXcoInRocm93IG5ldyBSYW5nZUVycm9yKCdNYXhpbXVtIGNhbGwgc3RhY2sgc2l6ZSBl
eGNlZWRlZC4nKSIpOworICAgICAgICAgICAgaWYgKGNvZGUuSXNFbXB0eSgpKQorICAgICAgICAg
ICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgICAgICAgICB2ODo6TG9jYWw8djg6OlNjcmlwdD4g
c2NyaXB0ID0gdjg6OlNjcmlwdDo6Q29tcGlsZShjb2RlKTsKKyAgICAgICAgICAgIGlmIChzY3Jp
cHQuSXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgICAgICAg
ICBzY3JpcHQtPlJ1bigpOworICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICAgICAgfQor
CiAgICAgICAgIC8vIEV2YWx1YXRpbmcgdGhlIEphdmFTY3JpcHQgY291bGQgY2F1c2UgdGhlIGZy
YW1lIHRvIGJlIGRlYWxsb2NhdGVkLAogICAgICAgICAvLyBzbyB3ZSBzdGFydCB0aGUga2VlcCBh
bGl2ZSB0aW1lciBoZXJlLgogICAgICAgICAvLyBGcmFtZTo6a2VlcEFsaXZlIG1ldGhvZCBhZGRz
IHRoZSByZWYgY291bnQgb2YgdGhlIGZyYW1lIGFuZCBzZXRzIGEK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40463</attachid>
            <date>2009-10-01 11:13:07 -0700</date>
            <delta_ts>2009-10-01 11:32:14 -0700</delta_ts>
            <desc>patch: fixed ChangedLog formatting</desc>
            <filename>recursion_guard.patch</filename>
            <type>text/plain</type>
            <size>3352</size>
            <attacher name="Vitaly Repeshko">vitalyr</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2Zhc3QveG1saHR0cHJlcXVlc3QveG1saHR0cHJlcXVl
c3QtcmVjdXJzaXZlLXN5bmMtZXZlbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC94
bWxodHRwcmVxdWVzdC94bWxodHRwcmVxdWVzdC1yZWN1cnNpdmUtc3luYy1ldmVudC1leHBlY3Rl
ZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjhhNTY0NgotLS0gL2Rl
di9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QveG1saHR0cHJlcXVlc3QveG1saHR0cHJlcXVl
c3QtcmVjdXJzaXZlLXN5bmMtZXZlbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorQ09O
U09MRSBNRVNTQUdFOiBsaW5lIDE6IFVuY2F1Z2h0IFJhbmdlRXJyb3I6IE1heGltdW0gY2FsbCBz
dGFjayBzaXplIGV4Y2VlZGVkLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFVuY2F1Z2h0IFJh
bmdlRXJyb3I6IE1heGltdW0gY2FsbCBzdGFjayBzaXplIGV4Y2VlZGVkLgorQ09OU09MRSBNRVNT
QUdFOiBsaW5lIDE6IFVuY2F1Z2h0IFJhbmdlRXJyb3I6IE1heGltdW0gY2FsbCBzdGFjayBzaXpl
IGV4Y2VlZGVkLgorVGhpcyB0ZXN0cyB0aGF0IGhhdmluZyBpbmZpbml0ZSByZWN1cnNpb24gaW4g
WE1MSHR0cFJlcXVlc3QgZXZlbnQgaGFuZGxlciBkb2VzIG5vdCBjcmFzaC4gCitQQVNTCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0dHByZXF1ZXN0LXJl
Y3Vyc2l2ZS1zeW5jLWV2ZW50Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3htbGh0dHByZXF1ZXN0
L3htbGh0dHByZXF1ZXN0LXJlY3Vyc2l2ZS1zeW5jLWV2ZW50Lmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMC4uODQ3MjM3NwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRl
c3RzL2Zhc3QveG1saHR0cHJlcXVlc3QveG1saHR0cHJlcXVlc3QtcmVjdXJzaXZlLXN5bmMtZXZl
bnQuaHRtbApAQCAtMCwwICsxLDI5IEBACis8aHRtbD4KKzxzY3JpcHQ+CitmdW5jdGlvbiBsb2co
cykgeworICB2YXIgbG9nRGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZyIpOworICBs
b2dEaXYuYXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUocykpOworICBsb2dEaXYu
YXBwZW5kQ2hpbGQoZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiYnIiKSk7Cit9CitmdW5jdGlvbiB0
ZXN0KCkgeworICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgbGF5b3V0
VGVzdENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworICB9CisgIHZhciB4aHIgPSBuZXcgWE1MSHR0
cFJlcXVlc3QoKTsKKyAgeGhyLm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9uKCkgeworICAg
IGlmICh4aHIucmVhZHlTdGF0ZSA9PSA0KSB7CisgICAgICB4aHIub3BlbigiR0VUIiwgInJlY3Vy
c2UuaHRtbCIsIGZhbHNlKTsKKyAgICAgIHhoci5zZW5kKG51bGwpOworICAgIH0KKyAgfTsKKyAg
eGhyLm9wZW4oIkdFVCIsICJyZWN1cnNlLmh0bWwiLCBmYWxzZSk7CisgIHhoci5zZW5kKG51bGwp
OworICBsb2coIlBBU1MiKTsKK30KKzwvc2NyaXB0PgorPGJvZHkgb25sb2FkPSJ0ZXN0KCkiPgor
VGhpcyB0ZXN0cyB0aGF0IGhhdmluZyBpbmZpbml0ZSByZWN1cnNpb24gaW4gWE1MSHR0cFJlcXVl
c3QgZXZlbnQgaGFuZGxlciBkb2VzIG5vdCBjcmFzaC4KKzxicj4KKzxkaXYgaWQ9ImxvZyI+PC9k
aXY+Cis8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dl
YkNvcmUvQ2hhbmdlTG9nCmluZGV4IGFhY2MzZGMuLmQ1N2RlMDcgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIw
MDktMTAtMDEgIFZpdGFseSBSZXBlc2hrbyAgPHZpdGFseXJAY2hyb21pdW0ub3JnPgorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFtWOF0gUmVjdXJzaW9u
IGd1YXJkIGZvciBWOFByb3h5OjpjYWxsRnVuY3Rpb24uCisgICAgICAgIEZpeGVzIGh0dHA6Ly9j
cmJ1Zy5jb20vMjMyNzguCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD0yOTk3NAorCisgICAgICAgIFRlc3Q6IGZhc3QveG1saHR0cHJlcXVlc3QveG1saHR0
cHJlcXVlc3QtcmVjdXJzaXZlLXN5bmMtZXZlbnQuaHRtbAorCisgICAgICAgICogYmluZGluZ3Mv
djgvVjhQcm94eS5jcHA6CisgICAgICAgIChXZWJDb3JlOjpWOFByb3h5OjpjYWxsRnVuY3Rpb24p
OgorCiAyMDA5LTA5LTI5ICBEYXZlIEh5YXR0ICA8aHlhdHRAYXBwbGUuY29tPgogCiAgICAgICAg
IFJldmlld2VkIGJ5IEpvbiBIb25leWN1dHQuCmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdz
L3Y4L1Y4UHJveHkuY3BwIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFByb3h5LmNwcAppbmRleCA0
ZmIwZjY4Li5hNTdjMDU3IDEwMDY0NAotLS0gYS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4UHJveHku
Y3BwCisrKyBiL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAKQEAgLTQzMyw2ICs0MzMs
MTcgQEAgdjg6OkxvY2FsPHY4OjpWYWx1ZT4gVjhQcm94eTo6Y2FsbEZ1bmN0aW9uKHY4OjpIYW5k
bGU8djg6OkZ1bmN0aW9uPiBmdW5jdGlvbiwgdjgKICAgICB7CiAgICAgICAgIFY4Q29uc29sZU1l
c3NhZ2U6OlNjb3BlIHNjb3BlOwogCisgICAgICAgIGlmIChtX3JlY3Vyc2lvbiA+PSBrTWF4UmVj
dXJzaW9uRGVwdGgpIHsKKyAgICAgICAgICAgIHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBjb2RlID0g
djg6OlN0cmluZzo6TmV3KCJ0aHJvdyBuZXcgUmFuZ2VFcnJvcignTWF4aW11bSBjYWxsIHN0YWNr
IHNpemUgZXhjZWVkZWQuJykiKTsKKyAgICAgICAgICAgIGlmIChjb2RlLklzRW1wdHkoKSkKKyAg
ICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0OworICAgICAgICAgICAgdjg6OkxvY2FsPHY4OjpT
Y3JpcHQ+IHNjcmlwdCA9IHY4OjpTY3JpcHQ6OkNvbXBpbGUoY29kZSk7CisgICAgICAgICAgICBp
ZiAoc2NyaXB0LklzRW1wdHkoKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0OworICAg
ICAgICAgICAgc2NyaXB0LT5SdW4oKTsKKyAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAg
ICAgIH0KKwogICAgICAgICAvLyBFdmFsdWF0aW5nIHRoZSBKYXZhU2NyaXB0IGNvdWxkIGNhdXNl
IHRoZSBmcmFtZSB0byBiZSBkZWFsbG9jYXRlZCwKICAgICAgICAgLy8gc28gd2Ugc3RhcnQgdGhl
IGtlZXAgYWxpdmUgdGltZXIgaGVyZS4KICAgICAgICAgLy8gRnJhbWU6OmtlZXBBbGl2ZSBtZXRo
b2QgYWRkcyB0aGUgcmVmIGNvdW50IG9mIHRoZSBmcmFtZSBhbmQgc2V0cyBhCg==
</data>
<flag name="review"
          id="21685"
          type_id="1"
          status="-"
          setter="dglazkov"
    />
    <flag name="commit-queue"
          id="21686"
          type_id="3"
          status="-"
          setter="dglazkov"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40464</attachid>
            <date>2009-10-01 11:32:14 -0700</date>
            <delta_ts>2009-10-01 11:36:57 -0700</delta_ts>
            <desc>patch: updated LayoutTest/ChangeLog</desc>
            <filename>recursion_guard.patch</filename>
            <type>text/plain</type>
            <size>4018</size>
            <attacher name="Vitaly Repeshko">vitalyr</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhNWFhMzczLi5iZjk5YjQ0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMDktMTAt
MDEgIFZpdGFseSBSZXBlc2hrbyAgPHZpdGFseXJAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3QgdGhhdCBoYXZpbmcgaW5m
aW5pdGUgcmVjdXJzaW9uIGluIFhNTEh0dHBSZXF1ZXN0IGV2ZW50IGhhbmRsZXIgZG9lcyBub3Qg
Y3Jhc2guCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
OTk3NAorCisgICAgICAgICogZmFzdC94bWxodHRwcmVxdWVzdC94bWxodHRwcmVxdWVzdC1yZWN1
cnNpdmUtc3luYy1ldmVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QveG1s
aHR0cHJlcXVlc3QveG1saHR0cHJlcXVlc3QtcmVjdXJzaXZlLXN5bmMtZXZlbnQuaHRtbDogQWRk
ZWQuCisKIDIwMDktMDktMjkgIFNoaW5pY2hpcm8gSGFtYWppICA8aGFtYWppQGNocm9taXVtLm9y
Zz4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QveG1saHR0cHJlcXVlc3QveG1saHR0cHJlcXVlc3QtcmVjdXJzaXZlLXN5bmMt
ZXZlbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC94bWxodHRwcmVxdWVzdC94bWxo
dHRwcmVxdWVzdC1yZWN1cnNpdmUtc3luYy1ldmVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjhhNTY0NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QveG1saHR0cHJlcXVlc3QveG1saHR0cHJlcXVlc3QtcmVjdXJzaXZlLXN5bmMt
ZXZlbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5l
IDE6IFVuY2F1Z2h0IFJhbmdlRXJyb3I6IE1heGltdW0gY2FsbCBzdGFjayBzaXplIGV4Y2VlZGVk
LgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFVuY2F1Z2h0IFJhbmdlRXJyb3I6IE1heGltdW0g
Y2FsbCBzdGFjayBzaXplIGV4Y2VlZGVkLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFVuY2F1
Z2h0IFJhbmdlRXJyb3I6IE1heGltdW0gY2FsbCBzdGFjayBzaXplIGV4Y2VlZGVkLgorVGhpcyB0
ZXN0cyB0aGF0IGhhdmluZyBpbmZpbml0ZSByZWN1cnNpb24gaW4gWE1MSHR0cFJlcXVlc3QgZXZl
bnQgaGFuZGxlciBkb2VzIG5vdCBjcmFzaC4gCitQQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0dHByZXF1ZXN0LXJlY3Vyc2l2ZS1zeW5jLWV2ZW50
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0dHByZXF1ZXN0LXJl
Y3Vyc2l2ZS1zeW5jLWV2ZW50Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uODQ3MjM3NwotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QveG1saHR0cHJl
cXVlc3QveG1saHR0cHJlcXVlc3QtcmVjdXJzaXZlLXN5bmMtZXZlbnQuaHRtbApAQCAtMCwwICsx
LDI5IEBACis8aHRtbD4KKzxzY3JpcHQ+CitmdW5jdGlvbiBsb2cocykgeworICB2YXIgbG9nRGl2
ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZyIpOworICBsb2dEaXYuYXBwZW5kQ2hpbGQo
ZG9jdW1lbnQuY3JlYXRlVGV4dE5vZGUocykpOworICBsb2dEaXYuYXBwZW5kQ2hpbGQoZG9jdW1l
bnQuY3JlYXRlRWxlbWVudCgiYnIiKSk7Cit9CitmdW5jdGlvbiB0ZXN0KCkgeworICBpZiAod2lu
ZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgbGF5b3V0VGVzdENvbnRyb2xsZXIuZHVt
cEFzVGV4dCgpOworICB9CisgIHZhciB4aHIgPSBuZXcgWE1MSHR0cFJlcXVlc3QoKTsKKyAgeGhy
Lm9ucmVhZHlzdGF0ZWNoYW5nZSA9IGZ1bmN0aW9uKCkgeworICAgIGlmICh4aHIucmVhZHlTdGF0
ZSA9PSA0KSB7CisgICAgICB4aHIub3BlbigiR0VUIiwgInJlY3Vyc2UuaHRtbCIsIGZhbHNlKTsK
KyAgICAgIHhoci5zZW5kKG51bGwpOworICAgIH0KKyAgfTsKKyAgeGhyLm9wZW4oIkdFVCIsICJy
ZWN1cnNlLmh0bWwiLCBmYWxzZSk7CisgIHhoci5zZW5kKG51bGwpOworICBsb2coIlBBU1MiKTsK
K30KKzwvc2NyaXB0PgorPGJvZHkgb25sb2FkPSJ0ZXN0KCkiPgorVGhpcyB0ZXN0cyB0aGF0IGhh
dmluZyBpbmZpbml0ZSByZWN1cnNpb24gaW4gWE1MSHR0cFJlcXVlc3QgZXZlbnQgaGFuZGxlciBk
b2VzIG5vdCBjcmFzaC4KKzxicj4KKzxkaXYgaWQ9ImxvZyI+PC9kaXY+Cis8L2JvZHk+Cis8L2h0
bWw+CmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hhbmdlTG9nCmlu
ZGV4IGFhY2MzZGMuLmQ1N2RlMDcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBi
L1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYgQEAKKzIwMDktMTAtMDEgIFZpdGFseSBS
ZXBlc2hrbyAgPHZpdGFseXJAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFtWOF0gUmVjdXJzaW9uIGd1YXJkIGZvciBWOFByb3h5
OjpjYWxsRnVuY3Rpb24uCisgICAgICAgIEZpeGVzIGh0dHA6Ly9jcmJ1Zy5jb20vMjMyNzguCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yOTk3NAorCisg
ICAgICAgIFRlc3Q6IGZhc3QveG1saHR0cHJlcXVlc3QveG1saHR0cHJlcXVlc3QtcmVjdXJzaXZl
LXN5bmMtZXZlbnQuaHRtbAorCisgICAgICAgICogYmluZGluZ3MvdjgvVjhQcm94eS5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpWOFByb3h5OjpjYWxsRnVuY3Rpb24pOgorCiAyMDA5LTA5LTI5ICBE
YXZlIEh5YXR0ICA8aHlhdHRAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEpvbiBI
b25leWN1dHQuCmRpZmYgLS1naXQgYS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4UHJveHkuY3BwIGIv
V2ViQ29yZS9iaW5kaW5ncy92OC9WOFByb3h5LmNwcAppbmRleCA0ZmIwZjY4Li5hNTdjMDU3IDEw
MDY0NAotLS0gYS9XZWJDb3JlL2JpbmRpbmdzL3Y4L1Y4UHJveHkuY3BwCisrKyBiL1dlYkNvcmUv
YmluZGluZ3MvdjgvVjhQcm94eS5jcHAKQEAgLTQzMyw2ICs0MzMsMTcgQEAgdjg6OkxvY2FsPHY4
OjpWYWx1ZT4gVjhQcm94eTo6Y2FsbEZ1bmN0aW9uKHY4OjpIYW5kbGU8djg6OkZ1bmN0aW9uPiBm
dW5jdGlvbiwgdjgKICAgICB7CiAgICAgICAgIFY4Q29uc29sZU1lc3NhZ2U6OlNjb3BlIHNjb3Bl
OwogCisgICAgICAgIGlmIChtX3JlY3Vyc2lvbiA+PSBrTWF4UmVjdXJzaW9uRGVwdGgpIHsKKyAg
ICAgICAgICAgIHY4OjpMb2NhbDx2ODo6U3RyaW5nPiBjb2RlID0gdjg6OlN0cmluZzo6TmV3KCJ0
aHJvdyBuZXcgUmFuZ2VFcnJvcignTWF4aW11bSBjYWxsIHN0YWNrIHNpemUgZXhjZWVkZWQuJyki
KTsKKyAgICAgICAgICAgIGlmIChjb2RlLklzRW1wdHkoKSkKKyAgICAgICAgICAgICAgICByZXR1
cm4gcmVzdWx0OworICAgICAgICAgICAgdjg6OkxvY2FsPHY4OjpTY3JpcHQ+IHNjcmlwdCA9IHY4
OjpTY3JpcHQ6OkNvbXBpbGUoY29kZSk7CisgICAgICAgICAgICBpZiAoc2NyaXB0LklzRW1wdHko
KSkKKyAgICAgICAgICAgICAgICByZXR1cm4gcmVzdWx0OworICAgICAgICAgICAgc2NyaXB0LT5S
dW4oKTsKKyAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgICAgIH0KKwogICAgICAgICAv
LyBFdmFsdWF0aW5nIHRoZSBKYXZhU2NyaXB0IGNvdWxkIGNhdXNlIHRoZSBmcmFtZSB0byBiZSBk
ZWFsbG9jYXRlZCwKICAgICAgICAgLy8gc28gd2Ugc3RhcnQgdGhlIGtlZXAgYWxpdmUgdGltZXIg
aGVyZS4KICAgICAgICAgLy8gRnJhbWU6OmtlZXBBbGl2ZSBtZXRob2QgYWRkcyB0aGUgcmVmIGNv
dW50IG9mIHRoZSBmcmFtZSBhbmQgc2V0cyBhCg==
</data>
<flag name="review"
          id="21687"
          type_id="1"
          status="-"
          setter="dglazkov"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40465</attachid>
            <date>2009-10-01 11:36:57 -0700</date>
            <delta_ts>2009-10-01 12:41:52 -0700</delta_ts>
            <desc>patch: WebKit style in JS</desc>
            <filename>recursion_guard.patch</filename>
            <type>text/plain</type>
            <size>4068</size>
            <attacher name="Vitaly Repeshko">vitalyr</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBhNWFhMzczLi5iZjk5YjQ0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMDktMTAt
MDEgIFZpdGFseSBSZXBlc2hrbyAgPHZpdGFseXJAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3QgdGhhdCBoYXZpbmcgaW5m
aW5pdGUgcmVjdXJzaW9uIGluIFhNTEh0dHBSZXF1ZXN0IGV2ZW50IGhhbmRsZXIgZG9lcyBub3Qg
Y3Jhc2guCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
OTk3NAorCisgICAgICAgICogZmFzdC94bWxodHRwcmVxdWVzdC94bWxodHRwcmVxdWVzdC1yZWN1
cnNpdmUtc3luYy1ldmVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QveG1s
aHR0cHJlcXVlc3QveG1saHR0cHJlcXVlc3QtcmVjdXJzaXZlLXN5bmMtZXZlbnQuaHRtbDogQWRk
ZWQuCisKIDIwMDktMDktMjkgIFNoaW5pY2hpcm8gSGFtYWppICA8aGFtYWppQGNocm9taXVtLm9y
Zz4KIAogICAgICAgICBSZXZpZXdlZCBieSBFcmljIFNlaWRlbC4KZGlmZiAtLWdpdCBhL0xheW91
dFRlc3RzL2Zhc3QveG1saHR0cHJlcXVlc3QveG1saHR0cHJlcXVlc3QtcmVjdXJzaXZlLXN5bmMt
ZXZlbnQtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvZmFzdC94bWxodHRwcmVxdWVzdC94bWxo
dHRwcmVxdWVzdC1yZWN1cnNpdmUtc3luYy1ldmVudC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9k
ZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uNjhhNTY0NgotLS0gL2Rldi9udWxsCisrKyBiL0xheW91
dFRlc3RzL2Zhc3QveG1saHR0cHJlcXVlc3QveG1saHR0cHJlcXVlc3QtcmVjdXJzaXZlLXN5bmMt
ZXZlbnQtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsNSBAQAorQ09OU09MRSBNRVNTQUdFOiBsaW5l
IDE6IFVuY2F1Z2h0IFJhbmdlRXJyb3I6IE1heGltdW0gY2FsbCBzdGFjayBzaXplIGV4Y2VlZGVk
LgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFVuY2F1Z2h0IFJhbmdlRXJyb3I6IE1heGltdW0g
Y2FsbCBzdGFjayBzaXplIGV4Y2VlZGVkLgorQ09OU09MRSBNRVNTQUdFOiBsaW5lIDE6IFVuY2F1
Z2h0IFJhbmdlRXJyb3I6IE1heGltdW0gY2FsbCBzdGFjayBzaXplIGV4Y2VlZGVkLgorVGhpcyB0
ZXN0cyB0aGF0IGhhdmluZyBpbmZpbml0ZSByZWN1cnNpb24gaW4gWE1MSHR0cFJlcXVlc3QgZXZl
bnQgaGFuZGxlciBkb2VzIG5vdCBjcmFzaC4gCitQQVNTCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9mYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0dHByZXF1ZXN0LXJlY3Vyc2l2ZS1zeW5jLWV2ZW50
Lmh0bWwgYi9MYXlvdXRUZXN0cy9mYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0dHByZXF1ZXN0LXJl
Y3Vyc2l2ZS1zeW5jLWV2ZW50Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAw
MC4uYTJmNjUwOAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QveG1saHR0cHJl
cXVlc3QveG1saHR0cHJlcXVlc3QtcmVjdXJzaXZlLXN5bmMtZXZlbnQuaHRtbApAQCAtMCwwICsx
LDMyIEBACis8aHRtbD4KKzxzY3JpcHQ+CitmdW5jdGlvbiBsb2cocykKK3sKKyAgICB2YXIgbG9n
RGl2ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZyIpOworICAgIGxvZ0Rpdi5hcHBlbmRD
aGlsZChkb2N1bWVudC5jcmVhdGVUZXh0Tm9kZShzKSk7CisgICAgbG9nRGl2LmFwcGVuZENoaWxk
KGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoImJyIikpOworfQorCitmdW5jdGlvbiB0ZXN0KCkKK3sK
KyAgICBpZiAod2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgICAgIGxheW91dFRl
c3RDb250cm9sbGVyLmR1bXBBc1RleHQoKTsKKyAgICB9CisgICAgdmFyIHhociA9IG5ldyBYTUxI
dHRwUmVxdWVzdCgpOworICAgIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbigpIHsK
KyAgICAgICAgaWYgKHhoci5yZWFkeVN0YXRlID09IDQpIHsKKyAgICAgICAgICAgIHhoci5vcGVu
KCJHRVQiLCAicmVjdXJzZS5odG1sIiwgZmFsc2UpOworICAgICAgICAgICAgeGhyLnNlbmQobnVs
bCk7CisgICAgICAgIH0KKyAgICB9OworICAgIHhoci5vcGVuKCJHRVQiLCAicmVjdXJzZS5odG1s
IiwgZmFsc2UpOworICAgIHhoci5zZW5kKG51bGwpOworICAgIGxvZygiUEFTUyIpOworfQorPC9z
Y3JpcHQ+Cis8Ym9keSBvbmxvYWQ9InRlc3QoKSI+CitUaGlzIHRlc3RzIHRoYXQgaGF2aW5nIGlu
ZmluaXRlIHJlY3Vyc2lvbiBpbiBYTUxIdHRwUmVxdWVzdCBldmVudCBoYW5kbGVyIGRvZXMgbm90
IGNyYXNoLgorPGJyPgorPGRpdiBpZD0ibG9nIj48L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KZGlm
ZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWFj
YzNkYy4uZDU3ZGUwNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29y
ZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAwOS0xMC0wMSAgVml0YWx5IFJlcGVzaGtv
ICA8dml0YWx5ckBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgW1Y4XSBSZWN1cnNpb24gZ3VhcmQgZm9yIFY4UHJveHk6OmNhbGxG
dW5jdGlvbi4KKyAgICAgICAgRml4ZXMgaHR0cDovL2NyYnVnLmNvbS8yMzI3OC4KKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5OTc0CisKKyAgICAgICAg
VGVzdDogZmFzdC94bWxodHRwcmVxdWVzdC94bWxodHRwcmVxdWVzdC1yZWN1cnNpdmUtc3luYy1l
dmVudC5odG1sCisKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOFByb3h5LmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OlY4UHJveHk6OmNhbGxGdW5jdGlvbik6CisKIDIwMDktMDktMjkgIERhdmUgSHlh
dHQgIDxoeWF0dEBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgSm9uIEhvbmV5Y3V0
dC4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAgYi9XZWJDb3Jl
L2JpbmRpbmdzL3Y4L1Y4UHJveHkuY3BwCmluZGV4IDRmYjBmNjguLmE1N2MwNTcgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAKKysrIGIvV2ViQ29yZS9iaW5kaW5n
cy92OC9WOFByb3h5LmNwcApAQCAtNDMzLDYgKzQzMywxNyBAQCB2ODo6TG9jYWw8djg6OlZhbHVl
PiBWOFByb3h5OjpjYWxsRnVuY3Rpb24odjg6OkhhbmRsZTx2ODo6RnVuY3Rpb24+IGZ1bmN0aW9u
LCB2OAogICAgIHsKICAgICAgICAgVjhDb25zb2xlTWVzc2FnZTo6U2NvcGUgc2NvcGU7CiAKKyAg
ICAgICAgaWYgKG1fcmVjdXJzaW9uID49IGtNYXhSZWN1cnNpb25EZXB0aCkgeworICAgICAgICAg
ICAgdjg6OkxvY2FsPHY4OjpTdHJpbmc+IGNvZGUgPSB2ODo6U3RyaW5nOjpOZXcoInRocm93IG5l
dyBSYW5nZUVycm9yKCdNYXhpbXVtIGNhbGwgc3RhY2sgc2l6ZSBleGNlZWRlZC4nKSIpOworICAg
ICAgICAgICAgaWYgKGNvZGUuSXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIHJldHVybiByZXN1
bHQ7CisgICAgICAgICAgICB2ODo6TG9jYWw8djg6OlNjcmlwdD4gc2NyaXB0ID0gdjg6OlNjcmlw
dDo6Q29tcGlsZShjb2RlKTsKKyAgICAgICAgICAgIGlmIChzY3JpcHQuSXNFbXB0eSgpKQorICAg
ICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAgICAgICAgICBzY3JpcHQtPlJ1bigpOwor
ICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICAgICAgfQorCiAgICAgICAgIC8vIEV2YWx1
YXRpbmcgdGhlIEphdmFTY3JpcHQgY291bGQgY2F1c2UgdGhlIGZyYW1lIHRvIGJlIGRlYWxsb2Nh
dGVkLAogICAgICAgICAvLyBzbyB3ZSBzdGFydCB0aGUga2VlcCBhbGl2ZSB0aW1lciBoZXJlLgog
ICAgICAgICAvLyBGcmFtZTo6a2VlcEFsaXZlIG1ldGhvZCBhZGRzIHRoZSByZWYgY291bnQgb2Yg
dGhlIGZyYW1lIGFuZCBzZXRzIGEK
</data>
<flag name="review"
          id="21688"
          type_id="1"
          status="+"
          setter="dglazkov"
    />
    <flag name="commit-queue"
          id="21689"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>40547</attachid>
            <date>2009-10-02 14:37:52 -0700</date>
            <delta_ts>2009-10-02 15:15:40 -0700</delta_ts>
            <desc>updated patch v3</desc>
            <filename>recursion_guard.patch</filename>
            <type>text/plain</type>
            <size>4059</size>
            <attacher name="Vitaly Repeshko">vitalyr</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA5ZTM3MDE4Li43MTRkYmM1IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTMgQEAKKzIwMDktMTAt
MDEgIFZpdGFseSBSZXBlc2hrbyAgPHZpdGFseXJAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3QgdGhhdCBoYXZpbmcgaW5m
aW5pdGUgcmVjdXJzaW9uIGluIFhNTEh0dHBSZXF1ZXN0IGV2ZW50IGhhbmRsZXIgZG9lcyBub3Qg
Y3Jhc2guCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0y
OTk3NAorCisgICAgICAgICogZmFzdC94bWxodHRwcmVxdWVzdC94bWxodHRwcmVxdWVzdC1yZWN1
cnNpdmUtc3luYy1ldmVudC1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIGZhc3QveG1s
aHR0cHJlcXVlc3QveG1saHR0cHJlcXVlc3QtcmVjdXJzaXZlLXN5bmMtZXZlbnQuaHRtbDogQWRk
ZWQuCisKIDIwMDktMTAtMDEgIEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuICA8a2VubmV0aEB3
ZWJraXQub3JnPgogCiAgICAgICAgIFJ1YmJlcnN0YW1wZWQgYnkgU2ltb24gSGF1c21hbm4uCmRp
ZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0dHByZXF1ZXN0
LXJlY3Vyc2l2ZS1zeW5jLWV2ZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL2Zhc3QveG1s
aHR0cHJlcXVlc3QveG1saHR0cHJlcXVlc3QtcmVjdXJzaXZlLXN5bmMtZXZlbnQtZXhwZWN0ZWQu
dHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjJlN2Q5Y2QKLS0tIC9kZXYv
bnVsbAorKysgYi9MYXlvdXRUZXN0cy9mYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0dHByZXF1ZXN0
LXJlY3Vyc2l2ZS1zeW5jLWV2ZW50LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDYgQEAKK0NPTlNP
TEUgTUVTU0FHRTogbGluZSAwOiBSYW5nZUVycm9yOiBNYXhpbXVtIGNhbGwgc3RhY2sgc2l6ZSBl
eGNlZWRlZC4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBSYW5nZUVycm9yOiBNYXhpbXVtIGNh
bGwgc3RhY2sgc2l6ZSBleGNlZWRlZC4KK0NPTlNPTEUgTUVTU0FHRTogbGluZSAwOiBSYW5nZUVy
cm9yOiBNYXhpbXVtIGNhbGwgc3RhY2sgc2l6ZSBleGNlZWRlZC4KK1RoaXMgdGVzdHMgdGhhdCBo
YXZpbmcgaW5maW5pdGUgcmVjdXJzaW9uIGluIFhNTEh0dHBSZXF1ZXN0IGV2ZW50IGhhbmRsZXIg
ZG9lcyBub3QgY3Jhc2guIAorUEFTUworCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9mYXN0L3ht
bGh0dHByZXF1ZXN0L3htbGh0dHByZXF1ZXN0LXJlY3Vyc2l2ZS1zeW5jLWV2ZW50Lmh0bWwgYi9M
YXlvdXRUZXN0cy9mYXN0L3htbGh0dHByZXF1ZXN0L3htbGh0dHByZXF1ZXN0LXJlY3Vyc2l2ZS1z
eW5jLWV2ZW50Lmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uYTJmNjUw
OAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL2Zhc3QveG1saHR0cHJlcXVlc3QveG1s
aHR0cHJlcXVlc3QtcmVjdXJzaXZlLXN5bmMtZXZlbnQuaHRtbApAQCAtMCwwICsxLDMyIEBACis8
aHRtbD4KKzxzY3JpcHQ+CitmdW5jdGlvbiBsb2cocykKK3sKKyAgICB2YXIgbG9nRGl2ID0gZG9j
dW1lbnQuZ2V0RWxlbWVudEJ5SWQoImxvZyIpOworICAgIGxvZ0Rpdi5hcHBlbmRDaGlsZChkb2N1
bWVudC5jcmVhdGVUZXh0Tm9kZShzKSk7CisgICAgbG9nRGl2LmFwcGVuZENoaWxkKGRvY3VtZW50
LmNyZWF0ZUVsZW1lbnQoImJyIikpOworfQorCitmdW5jdGlvbiB0ZXN0KCkKK3sKKyAgICBpZiAo
d2luZG93LmxheW91dFRlc3RDb250cm9sbGVyKSB7CisgICAgICAgIGxheW91dFRlc3RDb250cm9s
bGVyLmR1bXBBc1RleHQoKTsKKyAgICB9CisgICAgdmFyIHhociA9IG5ldyBYTUxIdHRwUmVxdWVz
dCgpOworICAgIHhoci5vbnJlYWR5c3RhdGVjaGFuZ2UgPSBmdW5jdGlvbigpIHsKKyAgICAgICAg
aWYgKHhoci5yZWFkeVN0YXRlID09IDQpIHsKKyAgICAgICAgICAgIHhoci5vcGVuKCJHRVQiLCAi
cmVjdXJzZS5odG1sIiwgZmFsc2UpOworICAgICAgICAgICAgeGhyLnNlbmQobnVsbCk7CisgICAg
ICAgIH0KKyAgICB9OworICAgIHhoci5vcGVuKCJHRVQiLCAicmVjdXJzZS5odG1sIiwgZmFsc2Up
OworICAgIHhoci5zZW5kKG51bGwpOworICAgIGxvZygiUEFTUyIpOworfQorPC9zY3JpcHQ+Cis8
Ym9keSBvbmxvYWQ9InRlc3QoKSI+CitUaGlzIHRlc3RzIHRoYXQgaGF2aW5nIGluZmluaXRlIHJl
Y3Vyc2lvbiBpbiBYTUxIdHRwUmVxdWVzdCBldmVudCBoYW5kbGVyIGRvZXMgbm90IGNyYXNoLgor
PGJyPgorPGRpdiBpZD0ibG9nIj48L2Rpdj4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBh
L1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDEzMDMwNi4uZTZi
ZWUxMSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VM
b2cKQEAgLTEsMyArMSwxNiBAQAorMjAwOS0xMC0wMSAgVml0YWx5IFJlcGVzaGtvICA8dml0YWx5
ckBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgW1Y4XSBSZWN1cnNpb24gZ3VhcmQgZm9yIFY4UHJveHk6OmNhbGxGdW5jdGlvbi4K
KyAgICAgICAgRml4ZXMgaHR0cDovL2NyYnVnLmNvbS8yMzI3OC4KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI5OTc0CisKKyAgICAgICAgVGVzdDogZmFz
dC94bWxodHRwcmVxdWVzdC94bWxodHRwcmVxdWVzdC1yZWN1cnNpdmUtc3luYy1ldmVudC5odG1s
CisKKyAgICAgICAgKiBiaW5kaW5ncy92OC9WOFByb3h5LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlY4UHJveHk6OmNhbGxGdW5jdGlvbik6CisKIDIwMDktMTAtMDEgIEFkYW0gQmFydGggIDxhYmFy
dGhAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KZGlmZiAt
LWdpdCBhL1dlYkNvcmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAgYi9XZWJDb3JlL2JpbmRpbmdz
L3Y4L1Y4UHJveHkuY3BwCmluZGV4IDJhNmRkNjIuLmMxNmU1ZDMgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvYmluZGluZ3MvdjgvVjhQcm94eS5jcHAKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy92OC9WOFBy
b3h5LmNwcApAQCAtNDE3LDYgKzQxNywxNyBAQCB2ODo6TG9jYWw8djg6OlZhbHVlPiBWOFByb3h5
OjpjYWxsRnVuY3Rpb24odjg6OkhhbmRsZTx2ODo6RnVuY3Rpb24+IGZ1bmN0aW9uLCB2OAogICAg
IHsKICAgICAgICAgVjhDb25zb2xlTWVzc2FnZTo6U2NvcGUgc2NvcGU7CiAKKyAgICAgICAgaWYg
KG1fcmVjdXJzaW9uID49IGtNYXhSZWN1cnNpb25EZXB0aCkgeworICAgICAgICAgICAgdjg6Okxv
Y2FsPHY4OjpTdHJpbmc+IGNvZGUgPSB2ODo6U3RyaW5nOjpOZXcoInRocm93IG5ldyBSYW5nZUVy
cm9yKCdNYXhpbXVtIGNhbGwgc3RhY2sgc2l6ZSBleGNlZWRlZC4nKSIpOworICAgICAgICAgICAg
aWYgKGNvZGUuSXNFbXB0eSgpKQorICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHQ7CisgICAg
ICAgICAgICB2ODo6TG9jYWw8djg6OlNjcmlwdD4gc2NyaXB0ID0gdjg6OlNjcmlwdDo6Q29tcGls
ZShjb2RlKTsKKyAgICAgICAgICAgIGlmIChzY3JpcHQuSXNFbXB0eSgpKQorICAgICAgICAgICAg
ICAgIHJldHVybiByZXN1bHQ7CisgICAgICAgICAgICBzY3JpcHQtPlJ1bigpOworICAgICAgICAg
ICAgcmV0dXJuIHJlc3VsdDsKKyAgICAgICAgfQorCiAgICAgICAgIC8vIEV2YWx1YXRpbmcgdGhl
IEphdmFTY3JpcHQgY291bGQgY2F1c2UgdGhlIGZyYW1lIHRvIGJlIGRlYWxsb2NhdGVkLAogICAg
ICAgICAvLyBzbyB3ZSBzdGFydCB0aGUga2VlcCBhbGl2ZSB0aW1lciBoZXJlLgogICAgICAgICAv
LyBGcmFtZTo6a2VlcEFsaXZlIG1ldGhvZCBhZGRzIHRoZSByZWYgY291bnQgb2YgdGhlIGZyYW1l
IGFuZCBzZXRzIGEK
</data>

          </attachment>
      

    </bug>

</bugzilla>