components/php-5_2/php-sapi/patches/18_php_17157091.patch
author Craig Mohrman <craig.mohrman@oracle.com>
Wed, 29 Jan 2014 18:57:31 -0800
branchs11u1-sru
changeset 2926 73b93bcb8a2c
permissions -rw-r--r--
16658678 problem in UTILITY/PHP 16004918 problem in UTILITY/PHP 16098069 /etc/apache2/2.2/conf.d/php/php.conf missing on upgrade to s11.1 17026033 problem in UTILITY/PHP 17157091 problem in UTILITY/PHP 18156529 upgrade php 5.3 to 5.3.27
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2926
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     1
From
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     2
http://git.php.net/?p=php-src.git;a=commitdiff;h=7d163e8a0880ae8af2dd869071393e5dc07ef271
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     3
truncate results at depth of 255 to prevent corruption
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     4
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     5
--- php-5.2.17/ext/xml/xml.c_orig	2010-11-03 07:18:28.000000000 -0700
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     6
+++ php-5.2.17/ext/xml/xml.c	2013-07-12 08:31:01.397237583 -0700
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     7
@@ -322,7 +322,7 @@
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     8
 	}
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
     9
 	if (parser->ltags) {
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    10
 		int inx;
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    11
-		for (inx = 0; inx < parser->level; inx++)
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    12
+		for (inx = 0; ((inx < parser->level) && (inx < XML_MAXLEVEL)); inx++)
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    13
 			efree(parser->ltags[ inx ]);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    14
 		efree(parser->ltags);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    15
 	}
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    16
@@ -800,45 +800,50 @@
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    17
 		} 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    18
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    19
 		if (parser->data) {
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    20
-			zval *tag, *atr;
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    21
-			int atcnt = 0;
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    22
+			if (parser->level <= XML_MAXLEVEL)  {
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    23
+				zval *tag, *atr;
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    24
+				int atcnt = 0;
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    25
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    26
-			MAKE_STD_ZVAL(tag);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    27
-			MAKE_STD_ZVAL(atr);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    28
+				MAKE_STD_ZVAL(tag);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    29
+				MAKE_STD_ZVAL(atr);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    30
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    31
-			array_init(tag);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    32
-			array_init(atr);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    33
+				array_init(tag);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    34
+				array_init(atr);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    35
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    36
-			_xml_add_to_info(parser,((char *) tag_name) + parser->toffset);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    37
+				_xml_add_to_info(parser,((char *) tag_name) + parser->toffset);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    38
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    39
-			add_assoc_string(tag,"tag",((char *) tag_name) + parser->toffset,1); /* cast to avoid gcc-warning */
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    40
-			add_assoc_string(tag,"type","open",1);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    41
-			add_assoc_long(tag,"level",parser->level);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    42
+				add_assoc_string(tag,"tag",((char *) tag_name) + parser->toffset,1); /* cast to avoid gcc-warning */
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    43
+				add_assoc_string(tag,"type","open",1);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    44
+				add_assoc_long(tag,"level",parser->level);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    45
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    46
-			parser->ltags[parser->level-1] = estrdup(tag_name);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    47
-			parser->lastwasopen = 1;
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    48
+				parser->ltags[parser->level-1] = estrdup(tag_name);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    49
+				parser->lastwasopen = 1;
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    50
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    51
-			attributes = (const XML_Char **) attrs;
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    52
+				attributes = (const XML_Char **) attrs;
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    53
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    54
-			while (attributes && *attributes) {
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    55
-				att = _xml_decode_tag(parser, attributes[0]);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    56
-				val = xml_utf8_decode(attributes[1], strlen(attributes[1]), &val_len, parser->target_encoding);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    57
-				
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    58
-				add_assoc_stringl(atr,att,val,val_len,0);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    59
+				while (attributes && *attributes) {
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    60
+					att = _xml_decode_tag(parser, attributes[0]);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    61
+					val = xml_utf8_decode(attributes[1], strlen(attributes[1]), &val_len, parser->target_encoding);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    62
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    63
-				atcnt++;
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    64
-				attributes += 2;
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    65
+					add_assoc_stringl(atr,att,val,val_len,0);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    66
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    67
-				efree(att);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    68
-			}
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    69
+					atcnt++;
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    70
+					attributes += 2;
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    71
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    72
-			if (atcnt) {
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    73
-				zend_hash_add(Z_ARRVAL_P(tag),"attributes",sizeof("attributes"),&atr,sizeof(zval*),NULL);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    74
-			} else {
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    75
-				zval_ptr_dtor(&atr);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    76
-			}
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    77
+					efree(att);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    78
+				}
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    79
+
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    80
+				if (atcnt) {
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    81
+					zend_hash_add(Z_ARRVAL_P(tag),"attributes",sizeof("attributes"),&atr,sizeof(zval*),NULL);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    82
+				} else {
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    83
+					zval_ptr_dtor(&atr);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    84
+				}
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    85
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    86
-			zend_hash_next_index_insert(Z_ARRVAL_P(parser->data),&tag,sizeof(zval*),(void *) &parser->ctag);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    87
+				zend_hash_next_index_insert(Z_ARRVAL_P(parser->data),&tag,sizeof(zval*),(void *) &parser->ctag);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    88
+			} else if (parser->level == (XML_MAXLEVEL + 1)) {
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    89
+				TSRMLS_FETCH();
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    90
+				php_error_docref(NULL TSRMLS_CC, E_WARNING, "Maximum depth exceeded - Results truncated");
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    91
+			}
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    92
 		}
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    93
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    94
 		efree(tag_name);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    95
@@ -890,7 +895,7 @@
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    96
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    97
 		efree(tag_name);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    98
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
    99
-		if (parser->ltags) {
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   100
+		if ((parser->ltags) && (parser->level <= XML_MAXLEVEL)) {
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   101
 			efree(parser->ltags[parser->level-1]);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   102
 		}
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   103
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   104
@@ -974,18 +979,23 @@
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   105
 						}
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   106
 					}
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   107
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   108
-					MAKE_STD_ZVAL(tag);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   109
-					
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   110
-					array_init(tag);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   111
-					
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   112
-					_xml_add_to_info(parser,parser->ltags[parser->level-1] + parser->toffset);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   113
+					if (parser->level <= XML_MAXLEVEL) {
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   114
+						MAKE_STD_ZVAL(tag);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   115
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   116
-					add_assoc_string(tag,"tag",parser->ltags[parser->level-1] + parser->toffset,1);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   117
-					add_assoc_string(tag,"value",decoded_value,0);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   118
-					add_assoc_string(tag,"type","cdata",1);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   119
-					add_assoc_long(tag,"level",parser->level);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   120
+						array_init(tag);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   121
 
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   122
-					zend_hash_next_index_insert(Z_ARRVAL_P(parser->data),&tag,sizeof(zval*),NULL);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   123
+						_xml_add_to_info(parser,parser->ltags[parser->level-1] + parser->toffset);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   124
+
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   125
+						add_assoc_string(tag,"tag",parser->ltags[parser->level-1] + parser->toffset,1);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   126
+						add_assoc_string(tag,"value",decoded_value,0);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   127
+						add_assoc_string(tag,"type","cdata",1);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   128
+						add_assoc_long(tag,"level",parser->level);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   129
+
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   130
+						zend_hash_next_index_insert(Z_ARRVAL_P(parser->data),&tag,sizeof(zval*),NULL);
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   131
+					} else if (parser->level == (XML_MAXLEVEL + 1)) {
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   132
+						TSRMLS_FETCH();
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   133
+						php_error_docref(NULL TSRMLS_CC, E_WARNING, "Maximum depth exceeded - Results truncated");
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   134
+					}
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   135
 				}
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   136
 			} else {
73b93bcb8a2c 16658678 problem in UTILITY/PHP
Craig Mohrman <craig.mohrman@oracle.com>
parents:
diff changeset
   137
 				efree(decoded_value);