From 0c92b32d371339a9e56cab105af56ad088a479ad Mon Sep 17 00:00:00 2001 From: Pierrick Charron Date: Fri, 25 Dec 2009 21:24:36 +0000 Subject: [PATCH] Changed tidyNode class to disallow manual node creation. --- NEWS | 2 +- ext/tidy/tests/023.phpt | 8 -------- ext/tidy/tests/025.phpt | 14 -------------- ext/tidy/tidy.c | 10 ++++++++++ 4 files changed, 11 insertions(+), 23 deletions(-) diff --git a/NEWS b/NEWS index 045bb7bd85..9c0668a3f4 100644 --- a/NEWS +++ b/NEWS @@ -5,7 +5,7 @@ PHP NEWS (Ilia) - Removed automatic file descriptor unlocking happening on shutdown and/or stream close (on all OSes excluding Windows). (Tony, Ilia) - +- Changed tidyNode class to disallow manual node creation. (Pierrick) - Fixed build of mysqli with MySQL 5.5.0-m2. (Andrey) diff --git a/ext/tidy/tests/023.phpt b/ext/tidy/tests/023.phpt index e7ee4b3c0c..1f7b02d56b 100644 --- a/ext/tidy/tests/023.phpt +++ b/ext/tidy/tests/023.phpt @@ -6,16 +6,11 @@ tidy and tidyNode OO isHtml()); - $tidy = new tidy(); $tidy->parseString(''); @@ -30,8 +25,6 @@ var_dump(tidy_get_root($tidy)->child[0]->child[0]->hasChildren()); ?> --EXPECT-- -object(tidyNode)#1 (0) { -} object(tidy)#1 (2) { ["errorBuffer"]=> NULL @@ -39,7 +32,6 @@ object(tidy)#1 (2) { NULL } ------- -bool(false) bool(true) bool(true) bool(false) diff --git a/ext/tidy/tests/025.phpt b/ext/tidy/tests/025.phpt index a7bd544d67..631ec2e5e9 100644 --- a/ext/tidy/tests/025.phpt +++ b/ext/tidy/tests/025.phpt @@ -5,15 +5,6 @@ tidyNode tests --FILE-- isPhp()); -var_dump($node->isText()); -var_dump($node->isComment()); -var_dump($node->hasSiblings()); -var_dump((string)$node); - $tidy=tidy_parse_string('<% %>'); var_dump($tidy->Root()->child[0]->isAsp()); @@ -34,11 +25,6 @@ var_dump($tidy->Root()->child[0]->child[0]->hasSiblings()); ?> --EXPECT-- -bool(false) -bool(false) -bool(false) -bool(false) -string(0) "" bool(true) bool(true) bool(true) diff --git a/ext/tidy/tidy.c b/ext/tidy/tidy.c index d97fcc3e2f..e769685064 100644 --- a/ext/tidy/tidy.c +++ b/ext/tidy/tidy.c @@ -266,6 +266,7 @@ static TIDY_NODE_METHOD(isJste); static TIDY_NODE_METHOD(isAsp); static TIDY_NODE_METHOD(isPhp); static TIDY_NODE_METHOD(getParent); +static TIDY_NODE_METHOD(__construct); /* }}} */ ZEND_DECLARE_MODULE_GLOBALS(tidy) @@ -341,6 +342,7 @@ static zend_function_entry tidy_funcs_node[] = { TIDY_NODE_ME(isAsp, NULL) TIDY_NODE_ME(isPhp, NULL) TIDY_NODE_ME(getParent, NULL) + TIDY_NODE_ME(__construct, NULL) {NULL, NULL, NULL} }; @@ -1675,6 +1677,14 @@ static TIDY_NODE_METHOD(getParent) } /* }}} */ +/* {{{ proto void tidyNode::__construct() + __constructor for tidyNode. */ +static TIDY_NODE_METHOD(__construct) +{ + php_error_docref(NULL TSRMLS_CC, E_ERROR, "You should not create a tidyNode manually"); +} +/* }}} */ + static void _php_tidy_register_nodetypes(INIT_FUNC_ARGS) { TIDY_NODE_CONST(ROOT, Root); -- 2.40.0