mirror of
https://github.com/ezyang/htmlpurifier.git
synced 2025-08-04 13:18:00 +02:00
Compare commits
8 Commits
Author | SHA1 | Date | |
---|---|---|---|
|
a617e55bc6 | ||
|
3060a5606c | ||
|
b4ec8c8036 | ||
|
06b3fc4cf4 | ||
|
c6ca293eab | ||
|
ab2887e423 | ||
|
029d1df5e3 | ||
|
b88fcd180c |
@@ -1,12 +1,17 @@
|
|||||||
language: php
|
language: php
|
||||||
php:
|
php:
|
||||||
- '5.4'
|
|
||||||
- '5.5'
|
|
||||||
- '5.6'
|
- '5.6'
|
||||||
- '7.0'
|
- '7.0'
|
||||||
- '7.1'
|
- '7.1'
|
||||||
- '7.2'
|
- '7.2'
|
||||||
- '7.3'
|
- '7.3'
|
||||||
|
- '7.4snapshot'
|
||||||
|
matrix:
|
||||||
|
include:
|
||||||
|
- php: '5.4'
|
||||||
|
dist: trusty
|
||||||
|
- php: '5.5'
|
||||||
|
dist: trusty
|
||||||
before_script:
|
before_script:
|
||||||
- git clone --depth=50 https://github.com/ezyang/simpletest.git
|
- git clone --depth=50 https://github.com/ezyang/simpletest.git
|
||||||
- cp test-settings.travis.php test-settings.php
|
- cp test-settings.travis.php test-settings.php
|
||||||
|
2
Doxyfile
2
Doxyfile
@@ -31,7 +31,7 @@ PROJECT_NAME = HTMLPurifier
|
|||||||
# This could be handy for archiving the generated documentation or
|
# This could be handy for archiving the generated documentation or
|
||||||
# if some version control system is used.
|
# if some version control system is used.
|
||||||
|
|
||||||
PROJECT_NUMBER = 4.11.0
|
PROJECT_NUMBER = 4.12.0
|
||||||
|
|
||||||
# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
|
# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute)
|
||||||
# base path where the generated documentation will be put.
|
# base path where the generated documentation will be put.
|
||||||
|
6
NEWS
6
NEWS
@@ -9,6 +9,12 @@ NEWS ( CHANGELOG and HISTORY ) HTMLPurifier
|
|||||||
. Internal change
|
. Internal change
|
||||||
==========================
|
==========================
|
||||||
|
|
||||||
|
4.12.0, released 2019-10-27
|
||||||
|
! PHP 7.4 is supported, thank you Witold Wasiczko, Mateuz Turcza and
|
||||||
|
Edi Modrić
|
||||||
|
- PHPDocs for HTMLModule::addElement() and Bool attr are fixed (thanks
|
||||||
|
Mateusz)
|
||||||
|
|
||||||
4.11.0, released 2019-07-14
|
4.11.0, released 2019-07-14
|
||||||
# SafeScripting now matches case-sensitively against its whitelist (previously it was
|
# SafeScripting now matches case-sensitively against its whitelist (previously it was
|
||||||
case-insensitive.) Thanks Dimitri Gritsajuk <gritsajuk.dimitri@gmail.com>
|
case-insensitive.) Thanks Dimitri Gritsajuk <gritsajuk.dimitri@gmail.com>
|
||||||
|
9
WHATSNEW
9
WHATSNEW
@@ -1,7 +1,2 @@
|
|||||||
HTML Purifier 4.11.x is a maintenance release, collecting a year
|
HTML Purifier 4.12.x is a maintenance release which makes
|
||||||
and a half of accumulated bug fixes. Most notable fixes are
|
compatibility fixes for PHP 7.4.
|
||||||
compatibility with PHP 7.3, and case-sensitive matching for
|
|
||||||
the SafeScripting whitelist. There are a number small feature
|
|
||||||
enhancements, including an expanded supported color list,
|
|
||||||
initial and inherit support for {min-,max-,}{width,height}
|
|
||||||
and multidimensional array support for purifyArray.
|
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
* primary concern and you are using an opcode cache. PLEASE DO NOT EDIT THIS
|
* primary concern and you are using an opcode cache. PLEASE DO NOT EDIT THIS
|
||||||
* FILE, changes will be overwritten the next time the script is run.
|
* FILE, changes will be overwritten the next time the script is run.
|
||||||
*
|
*
|
||||||
* @version 4.11.0
|
* @version 4.12.0
|
||||||
*
|
*
|
||||||
* @warning
|
* @warning
|
||||||
* You must *not* include any other HTML Purifier files before this file,
|
* You must *not* include any other HTML Purifier files before this file,
|
||||||
|
@@ -19,7 +19,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
HTML Purifier 4.11.0 - Standards Compliant HTML Filtering
|
HTML Purifier 4.12.0 - Standards Compliant HTML Filtering
|
||||||
Copyright (C) 2006-2008 Edward Z. Yang
|
Copyright (C) 2006-2008 Edward Z. Yang
|
||||||
|
|
||||||
This library is free software; you can redistribute it and/or
|
This library is free software; you can redistribute it and/or
|
||||||
@@ -58,12 +58,12 @@ class HTMLPurifier
|
|||||||
* Version of HTML Purifier.
|
* Version of HTML Purifier.
|
||||||
* @type string
|
* @type string
|
||||||
*/
|
*/
|
||||||
public $version = '4.11.0';
|
public $version = '4.12.0';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Constant with version of HTML Purifier.
|
* Constant with version of HTML Purifier.
|
||||||
*/
|
*/
|
||||||
const VERSION = '4.11.0';
|
const VERSION = '4.12.0';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Global configuration object.
|
* Global configuration object.
|
||||||
|
@@ -7,7 +7,7 @@ class HTMLPurifier_AttrDef_HTML_Bool extends HTMLPurifier_AttrDef
|
|||||||
{
|
{
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @type bool
|
* @type string
|
||||||
*/
|
*/
|
||||||
protected $name;
|
protected $name;
|
||||||
|
|
||||||
@@ -17,7 +17,7 @@ class HTMLPurifier_AttrDef_HTML_Bool extends HTMLPurifier_AttrDef
|
|||||||
public $minimized = true;
|
public $minimized = true;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param bool $name
|
* @param bool|string $name
|
||||||
*/
|
*/
|
||||||
public function __construct($name = false)
|
public function __construct($name = false)
|
||||||
{
|
{
|
||||||
|
@@ -45,7 +45,7 @@ class HTMLPurifier_ChildDef_Custom extends HTMLPurifier_ChildDef
|
|||||||
protected function _compileRegex()
|
protected function _compileRegex()
|
||||||
{
|
{
|
||||||
$raw = str_replace(' ', '', $this->dtd_regex);
|
$raw = str_replace(' ', '', $this->dtd_regex);
|
||||||
if ($raw{0} != '(') {
|
if ($raw[0] != '(') {
|
||||||
$raw = "($raw)";
|
$raw = "($raw)";
|
||||||
}
|
}
|
||||||
$el = '[#a-zA-Z0-9_.-]+';
|
$el = '[#a-zA-Z0-9_.-]+';
|
||||||
|
@@ -21,7 +21,7 @@ class HTMLPurifier_Config
|
|||||||
* HTML Purifier's version
|
* HTML Purifier's version
|
||||||
* @type string
|
* @type string
|
||||||
*/
|
*/
|
||||||
public $version = '4.11.0';
|
public $version = '4.12.0';
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Whether or not to automatically finalize
|
* Whether or not to automatically finalize
|
||||||
|
@@ -159,7 +159,7 @@ class HTMLPurifier_Encoder
|
|||||||
|
|
||||||
$len = strlen($str);
|
$len = strlen($str);
|
||||||
for ($i = 0; $i < $len; $i++) {
|
for ($i = 0; $i < $len; $i++) {
|
||||||
$in = ord($str{$i});
|
$in = ord($str[$i]);
|
||||||
$char .= $str[$i]; // append byte to char
|
$char .= $str[$i]; // append byte to char
|
||||||
if (0 == $mState) {
|
if (0 == $mState) {
|
||||||
// When mState is zero we expect either a US-ASCII character
|
// When mState is zero we expect either a US-ASCII character
|
||||||
|
@@ -132,9 +132,9 @@ class HTMLPurifier_HTMLModule
|
|||||||
* @param string $element Name of element to add
|
* @param string $element Name of element to add
|
||||||
* @param string|bool $type What content set should element be registered to?
|
* @param string|bool $type What content set should element be registered to?
|
||||||
* Set as false to skip this step.
|
* Set as false to skip this step.
|
||||||
* @param string $contents Allowed children in form of:
|
* @param string|HTMLPurifier_ChildDef $contents Allowed children in form of:
|
||||||
* "$content_model_type: $content_model"
|
* "$content_model_type: $content_model"
|
||||||
* @param array $attr_includes What attribute collections to register to
|
* @param array|string $attr_includes What attribute collections to register to
|
||||||
* element?
|
* element?
|
||||||
* @param array $attr What unique attributes does the element define?
|
* @param array $attr What unique attributes does the element define?
|
||||||
* @see HTMLPurifier_ElementDef:: for in-depth descriptions of these parameters.
|
* @see HTMLPurifier_ElementDef:: for in-depth descriptions of these parameters.
|
||||||
|
@@ -74,7 +74,12 @@ class HTMLPurifier_Lexer_DOMLex extends HTMLPurifier_Lexer
|
|||||||
}
|
}
|
||||||
|
|
||||||
set_error_handler(array($this, 'muteErrorHandler'));
|
set_error_handler(array($this, 'muteErrorHandler'));
|
||||||
$doc->loadHTML($html, $options);
|
// loadHTML() fails on PHP 5.3 when second parameter is given
|
||||||
|
if ($options) {
|
||||||
|
$doc->loadHTML($html, $options);
|
||||||
|
} else {
|
||||||
|
$doc->loadHTML($html);
|
||||||
|
}
|
||||||
restore_error_handler();
|
restore_error_handler();
|
||||||
|
|
||||||
$body = $doc->getElementsByTagName('html')->item(0)-> // <html>
|
$body = $doc->getElementsByTagName('html')->item(0)-> // <html>
|
||||||
|
@@ -75,7 +75,7 @@ class HTMLPurifier_TagTransform_Font extends HTMLPurifier_TagTransform
|
|||||||
if (isset($attr['size'])) {
|
if (isset($attr['size'])) {
|
||||||
// normalize large numbers
|
// normalize large numbers
|
||||||
if ($attr['size'] !== '') {
|
if ($attr['size'] !== '') {
|
||||||
if ($attr['size']{0} == '+' || $attr['size']{0} == '-') {
|
if ($attr['size'][0] == '+' || $attr['size'][0] == '-') {
|
||||||
$size = (int)$attr['size'];
|
$size = (int)$attr['size'];
|
||||||
if ($size < -2) {
|
if ($size < -2) {
|
||||||
$attr['size'] = '-2';
|
$attr['size'] = '-2';
|
||||||
|
Reference in New Issue
Block a user