summaryrefslogtreecommitdiff
path: root/ext/tidy/tidy.c
diff options
context:
space:
mode:
authorMichael Orlitzky <michael@orlitzky.com>2016-06-09 23:00:02 -0400
committerAnatol Belski <ab@php.net>2016-07-11 14:05:43 +0200
commita552ac5bd589035b66c899b74511b29a3d1a4718 (patch)
tree0873add4f608b321fb6c554fb0a8f67f883864f9 /ext/tidy/tidy.c
parent6a9d9cf2724df4b00c63c206689b0bd60d334388 (diff)
downloadphp-git-a552ac5bd589035b66c899b74511b29a3d1a4718.tar.gz
ext/tidy: add support for the new tidy-html5 library.
Our existing libtidy support is based on the legacy "HTML tidy" project. That project now has a successor called tidy-html5, where all new features and bugfixes happen. Of particular note are the fixes for two security vulnerabilities, CVE-2015-5522 and CVE-2015-5523. The API is largely unchanged in the new project (which is truly the successor of the original -- not a fork), and so it is almost a drop-in replacement as far as PHP is concerned. However, one file has changed in the new project: "buffio.h" has been moved to "tidybuffio.h". This commit detects the presence of tidybuffio.h at build time, and then adjusts the import statement in tidy.c accordingly. The result is a build that works against either the legacy project or the new tidy-html5 project, although the test suite for the tidy extension now fails. Those failures are not critical and will be fixed. Gentoo-Bug: 561452 Gentoo-Bug: 585474 PHP-Bug: 72379
Diffstat (limited to 'ext/tidy/tidy.c')
-rw-r--r--ext/tidy/tidy.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/ext/tidy/tidy.c b/ext/tidy/tidy.c
index 0537c576c7..d6461bd513 100644
--- a/ext/tidy/tidy.c
+++ b/ext/tidy/tidy.c
@@ -31,7 +31,12 @@
#include "ext/standard/info.h"
#include "tidy.h"
+
+#if HAVE_TIDYBUFFIO_H
+#include "tidybuffio.h"
+#else
#include "buffio.h"
+#endif
/* compatibility with older versions of libtidy */
#ifndef TIDY_CALL