mirror of
https://github.com/php/php-src.git
synced 2025-08-16 05:58:45 +02:00
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
This commit is contained in:
parent
6a9d9cf272
commit
a552ac5bd5
2 changed files with 13 additions and 0 deletions
|
@ -25,6 +25,14 @@ if test "$PHP_TIDY" != "no"; then
|
|||
|
||||
if test -z "$TIDY_DIR"; then
|
||||
AC_MSG_ERROR(Cannot find libtidy)
|
||||
else
|
||||
dnl Check for tidybuffio.h (as opposed to simply buffio.h)
|
||||
dnl which indicates that we are building against tidy-html5
|
||||
dnl and not the legacy htmltidy. The two are compatible,
|
||||
dnl except for with regard to this header file.
|
||||
if test -f "$TIDY_INCDIR/tidybuffio.h"; then
|
||||
AC_DEFINE(HAVE_TIDYBUFFIO_H,1,[defined if tidybuffio.h exists])
|
||||
fi
|
||||
fi
|
||||
|
||||
TIDY_LIBDIR=$TIDY_DIR/$PHP_LIBDIR
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue