diff options
Diffstat (limited to 'ext/tidy/tests/027.phpt')
-rw-r--r-- | ext/tidy/tests/027.phpt | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/ext/tidy/tests/027.phpt b/ext/tidy/tests/027.phpt new file mode 100644 index 0000000..8d9f66e --- /dev/null +++ b/ext/tidy/tests/027.phpt @@ -0,0 +1,59 @@ +--TEST-- +Bug: tidy segfaults with markup=false +--SKIPIF-- +<?php if (!extension_loaded('tidy')) die('skip'); ?> +--FILE-- +<?php + +// bug report from http://sf.net/tracker/?func=detail&atid=390963&aid=1641868&group_id=27659 + +abstract class BaseClass { + private static $tidyconfig; + + public function BaseClass() { + $this->tidyconfig = array( + 'indent' => false, + 'clean' => true, + 'merge-divs' => false, + 'quote-marks' => true, + 'drop-empty-paras' => false, + 'markup' => false, + 'output-xhtml' => true, + 'wrap' => 0); + + } + + abstract public function run(); + + public function getURL($url) { + $data = "awerawer"; // in my code, $data is downloaded from a site + + $tidy = new tidy; + $tidy->parseString($data, $this->tidyconfig, 'utf8'); + $tidy->cleanRepair(); + + return $tidy; + } + +} + +class ChildClass extends BaseClass { + public function ChildClass() { + parent::__construct(); + } + + public function run() { + $result = $this->getURL('awer'); + if ($result === null) { + echo "\tError:\n"; + } + var_dump((string)$result); + } +} + +$instance = new ChildClass(); +$instance->run(); + +?> +--EXPECT-- +string(0) "" |