From: Pierrick Charron Date: Fri, 25 Dec 2009 21:24:36 +0000 (+0000) Subject: Changed tidyNode class to disallow manual node creation. X-Git-Tag: php-5.4.0alpha1~509 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=832eb472c548b1e28fa10cb74114926df3af971a;p=php Changed tidyNode class to disallow manual node creation. --- diff --git a/NEWS b/NEWS index 2a1510aa3f..13f7230fe1 100644 --- a/NEWS +++ b/NEWS @@ -16,6 +16,7 @@ PHP NEWS (David Soria Parra) - Changed "post_max_size" php.ini directive to allow unlimited post size by setting it to 0. (Rasmus) +- Changed tidyNode class to disallow manual node creation. (Pierrick) - Removed automatic file descriptor unlocking happening on shutdown and/or stream close (on all OSes). (Tony, Ilia) 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 d45b0825e7..af54054dca 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) @@ -441,6 +442,7 @@ static const 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} }; @@ -1775,6 +1777,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);