diff options
author | Christopher Smith <chris@jalakai.co.uk> | 2011-02-06 15:16:10 +0000 |
---|---|---|
committer | Christopher Smith <chris@jalakai.co.uk> | 2011-02-06 15:16:10 +0000 |
commit | 3893df8e5068f411ba16c2e37096e47c4ad102f2 (patch) | |
tree | 14f4ac451782f8867bca9db433d00e7ee650a508 | |
parent | c34c77725873a495f375a815dd89be723cd2a512 (diff) | |
download | rpg-3893df8e5068f411ba16c2e37096e47c4ad102f2.tar.gz rpg-3893df8e5068f411ba16c2e37096e47c4ad102f2.tar.bz2 |
FS#2154 unset call writers in finalise() to prevent circular references
and help PHP garbage collection for PHP < 5.3
-rw-r--r-- | inc/parser/handler.php | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/inc/parser/handler.php b/inc/parser/handler.php index 4d0b56b44..85a353dca 100644 --- a/inc/parser/handler.php +++ b/inc/parser/handler.php @@ -720,6 +720,7 @@ class Doku_Handler_CallWriter { // function is required, but since this call writer is first/highest in // the chain it is not required to do anything function finalise() { + unset($this->Handler); } } @@ -764,6 +765,7 @@ class Doku_Handler_Nest { $this->process(); $this->CallWriter->finalise(); + unset($this->CallWriter); } function process() { @@ -817,6 +819,7 @@ class Doku_Handler_List { $this->process(); $this->CallWriter->finalise(); + unset($this->CallWriter); } //------------------------------------------------------------------------ @@ -1014,6 +1017,7 @@ class Doku_Handler_Preformatted { $this->process(); $this->CallWriter->finalise(); + unset($this->CallWriter); } function process() { @@ -1070,6 +1074,7 @@ class Doku_Handler_Quote { $this->process(); $this->CallWriter->finalise(); + unset($this->CallWriter); } function process() { @@ -1165,6 +1170,7 @@ class Doku_Handler_Table { $this->process(); $this->CallWriter->finalise(); + unset($this->CallWriter); } //------------------------------------------------------------------------ |