--- configure 2011-01-07 00:04:43.000000000 +0100 +++ configure 2015-07-31 20:00:52.559020800 +0200 @@ -3912,6 +3912,7 @@ SHLIB_SUFFIX_NAME=so + [ "$COMSPEC" ] && SHLIB_SUFFIX_NAME=dll.a SHLIB_DL_SUFFIX_NAME=$SHLIB_SUFFIX_NAME case $host_alias in *hpux*) --- ext/dom/node.c 2010-05-01 20:30:38.000000000 +0200 +++ ext/dom/node.c 2015-07-31 20:17:05.678297600 +0200 @@ -1950,9 +1950,17 @@ RETVAL_FALSE; } else { if (mode == 0) { +#ifdef LIBXML2_NEW_BUFFER + ret = xmlOutputBufferGetSize(buf); +#else ret = buf->buffer->use; +#endif if (ret > 0) { +#ifdef LIBXML2_NEW_BUFFER + RETVAL_STRINGL((char *) xmlOutputBufferGetContent(buf), ret, 1); +#else RETVAL_STRINGL((char *) buf->buffer->content, ret, 1); +#endif } else { RETVAL_EMPTY_STRING(); } --- ext/dom/documenttype.c 2010-01-03 10:23:27.000000000 +0100 +++ ext/dom/documenttype.c 2015-07-31 20:17:23.523958400 +0200 @@ -215,7 +215,13 @@ if (buff != NULL) { xmlNodeDumpOutput (buff, NULL, (xmlNodePtr) intsubset, 0, 0, NULL); xmlOutputBufferFlush(buff); + +#ifdef LIBXML2_NEW_BUFFER + ZVAL_STRINGL(*retval, xmlOutputBufferGetContent(buff), + xmlOutputBufferGetSize(buff), 1); +#else ZVAL_STRINGL(*retval, buff->buffer->content, buff->buffer->use, 1); +#endif (void)xmlOutputBufferClose(buff); return SUCCESS; } --- ext/simplexml/simplexml.c 2010-05-05 13:40:11.000000000 +0200 +++ ext/simplexml/simplexml.c 2015-07-31 20:17:45.896128000 +0200 @@ -1343,7 +1343,12 @@ xmlNodeDumpOutput(outbuf, (xmlDocPtr) sxe->document->ptr, node, 0, 0, ((xmlDocPtr) sxe->document->ptr)->encoding); xmlOutputBufferFlush(outbuf); +#ifdef LIBXML2_NEW_BUFFER + RETVAL_STRINGL((char *)xmlOutputBufferGetContent(outbuf), + xmlOutputBufferGetSize(outbuf), 1); +#else RETVAL_STRINGL((char *)outbuf->buffer->content, outbuf->buffer->use, 1); +#endif xmlOutputBufferClose(outbuf); } } else {