Commit:    bdc565e67ad9cd1f14c987d2e54cd63653ce66a7
Author:    Anatol Belski <a...@php.net>         Thu, 12 Dec 2013 11:50:45 +0100
Parents:   e0c7899dddf0606480ebaf84be6c43d7bd613c58
Branches:  str_size_and_int64

Link:       
http://git.php.net/?p=php-src.git;a=commitdiff;h=bdc565e67ad9cd1f14c987d2e54cd63653ce66a7

Log:
revamp ext/dom

Changed paths:
  M  ext/dom/document.c


Diff:
diff --git a/ext/dom/document.c b/ext/dom/document.c
index 5bacc0f..04027d3 100644
--- a/ext/dom/document.c
+++ b/ext/dom/document.c
@@ -419,7 +419,7 @@ int dom_document_standalone_write(dom_object *obj, zval 
*newval TSRMLS_DC)
 {
        zval value_copy;
        xmlDoc *docp;
-       int standalone;
+       php_int_t standalone;
 
        docp = (xmlDocPtr) dom_object_get_node(obj);
 
@@ -553,7 +553,7 @@ int dom_document_strict_error_checking_write(dom_object 
*obj, zval *newval TSRML
 
        if (obj->document) {
                doc_prop = dom_get_doc_props(obj->document);
-               doc_prop->stricterror = Z_LVAL_P(newval);
+               doc_prop->stricterror = Z_BVAL_P(newval);
        }
 
        if (newval == &value_copy) {
@@ -596,7 +596,7 @@ int dom_document_format_output_write(dom_object *obj, zval 
*newval TSRMLS_DC)
 
        if (obj->document) {
                doc_prop = dom_get_doc_props(obj->document);
-               doc_prop->formatoutput = Z_LVAL_P(newval);
+               doc_prop->formatoutput = Z_BVAL_P(newval);
        }
 
        if (newval == &value_copy) {
@@ -638,7 +638,7 @@ int dom_document_validate_on_parse_write(dom_object *obj, 
zval *newval TSRMLS_DC
 
        if (obj->document) {
                doc_prop = dom_get_doc_props(obj->document);
-               doc_prop->validateonparse = Z_LVAL_P(newval);
+               doc_prop->validateonparse = Z_BVAL_P(newval);
        }
 
        if (newval == &value_copy) {
@@ -680,7 +680,7 @@ int dom_document_resolve_externals_write(dom_object *obj, 
zval *newval TSRMLS_DC
 
        if (obj->document) {
                doc_prop = dom_get_doc_props(obj->document);
-               doc_prop->resolveexternals = Z_LVAL_P(newval);
+               doc_prop->resolveexternals = Z_BVAL_P(newval);
        }
 
        if (newval == &value_copy) {
@@ -722,7 +722,7 @@ int dom_document_preserve_whitespace_write(dom_object *obj, 
zval *newval TSRMLS_
 
        if (obj->document) {
                doc_prop = dom_get_doc_props(obj->document);
-               doc_prop->preservewhitespace = Z_LVAL_P(newval);
+               doc_prop->preservewhitespace = Z_BVAL_P(newval);
        }
 
        if (newval == &value_copy) {
@@ -764,7 +764,7 @@ int dom_document_recover_write(dom_object *obj, zval 
*newval TSRMLS_DC)
 
        if (obj->document) {
                doc_prop = dom_get_doc_props(obj->document);
-               doc_prop->recover = Z_LVAL_P(newval);
+               doc_prop->recover = Z_BVAL_P(newval);
        }
 
        if (newval == &value_copy) {
@@ -806,7 +806,7 @@ int dom_document_substitue_entities_write(dom_object *obj, 
zval *newval TSRMLS_D
 
        if (obj->document) {
                doc_prop = dom_get_doc_props(obj->document);
-               doc_prop->substituteentities = Z_LVAL_P(newval);
+               doc_prop->substituteentities = Z_BVAL_P(newval);
        }
 
        if (newval == &value_copy) {
@@ -1032,6 +1032,11 @@ PHP_FUNCTION(dom_document_create_cdatasection)
                return;
        }
 
+       if (value_len > INT_MAX) {
+               php_error_docref(NULL TSRMLS_CC, E_WARNING, "Input value is too 
long");
+               RETURN_FALSE;
+       }
+
        DOM_GET_OBJ(docp, id, xmlDocPtr, intern);
 
        node = xmlNewCDataBlock(docp, (xmlChar *) value, value_len);
@@ -1562,8 +1567,8 @@ static xmlDocPtr dom_document_parser(zval *id, int mode, 
char *source, int sourc
        dom_object *intern;
        php_libxml_ref_obj *document = NULL;
        int validate, recover, resolve_externals, keep_blanks, substitute_ent;
-       int resolved_path_len;
-       int old_error_reporting = 0;
+       zend_str_size_int resolved_path_len;
+       php_int_t old_error_reporting = 0;
        char *directory=NULL, resolved_path[MAXPATHLEN];
 
        if (id != NULL) {


--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to