I've updated bug request #54037 to include a patch which creates HTML
specific constants for HTML_PARSE_NODEFDTD and HTML_PARSE_NOIMPLIED,
it also creates LIBXML_PEDANTIC and LIBXML_RECOVER constants

On Thu, Feb 17, 2011 at 12:52 PM, Christian Stocker
<christian.stoc...@liip.ch> wrote:
> Hi
>
> Looks good to me. But can you add the constants from:
> typedef enum {
>    HTML_PARSE_RECOVER  = 1<<0, /* Relaxed parsing */
>    HTML_PARSE_NODEFDTD = 1<<2, /* do not default a doctype if not found */
>    HTML_PARSE_NOERROR  = 1<<5, /* suppress error reports */
>    HTML_PARSE_NOWARNING= 1<<6, /* suppress warning reports */
>    HTML_PARSE_PEDANTIC = 1<<7, /* pedantic error reporting */
>    HTML_PARSE_NOBLANKS = 1<<8, /* remove blank nodes */
>    HTML_PARSE_NONET    = 1<<11,/* Forbid network access */
>    HTML_PARSE_NOIMPLIED= 1<<13,/* Do not add implied html/body...
> elements */
>    HTML_PARSE_COMPACT  = 1<<16 /* compact small text nodes */
> } htmlParserOption;
>
> also to it, so that they are available from PHP? I don't like guessing
> integers :)
>
> Maybe we don't have to extra define the ones already defined in
> xmlParserOption , eg XML_PARSE_NOERROR, but there's no compagnion to
> HTML_PARSE_NODEFDTD and HTML_PARSE_NOIMPLIED
>
> chregu
>
> On 17.02.11 16:29, James Devine wrote:
>> Will do, thanks!
>>
>> On Thu, Feb 17, 2011 at 6:43 AM, Pierre Joye <pierre....@gmail.com> wrote:
>>> hi,
>>>
>>> Can you make a patch against trunk instead please?
>>>
>>> Also pls follow the CS:
>>>
>>> if (foo) {
>>> }
>>>
>>> Ideally attach your patch to a feature request at bugs.php.net, so we
>>> won't loose it :)
>>>
>>> thanks for your work!
>>>
>>> Cheers,
>>>
>>> On Thu, Feb 17, 2011 at 12:57 AM, James Devine <fxmul...@gmail.com> wrote:
>>>> I've included a patch for review adding the ability to optionally pass
>>>> options to the DOMDocument::loadHTML[File] functions
>>>>
>>>>
>>>> diff -ru php-5.3.5.orig/ext/dom/document.c php-5.3.5.new/ext/dom/document.c
>>>> --- php-5.3.5.orig/ext/dom/document.c   2010-04-02 14:08:15.000000000 -0600
>>>> +++ php-5.3.5.new/ext/dom/document.c    2011-02-16 16:49:20.000000000 -0700
>>>> @@ -149,10 +149,12 @@
>>>>
>>>>  ZEND_BEGIN_ARG_INFO_EX(arginfo_dom_document_loadhtml, 0, 0, 1)
>>>>        ZEND_ARG_INFO(0, source)
>>>> +       ZEND_ARG_INFO(0, options)
>>>>  ZEND_END_ARG_INFO();
>>>>
>>>>  ZEND_BEGIN_ARG_INFO_EX(arginfo_dom_document_loadhtmlfile, 0, 0, 1)
>>>>        ZEND_ARG_INFO(0, source)
>>>> +       ZEND_ARG_INFO(0, options)
>>>>  ZEND_END_ARG_INFO();
>>>>
>>>>  ZEND_BEGIN_ARG_INFO_EX(arginfo_dom_document_savehtml, 0, 0, 0)
>>>> @@ -2157,10 +2159,11 @@
>>>>        char *source;
>>>>        int source_len, refcount, ret;
>>>>        htmlParserCtxtPtr ctxt;
>>>> +       int options = 0;
>>>>
>>>>        id = getThis();
>>>>
>>>> -       if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s",
>>>> &source, &source_len) == FAILURE) {
>>>> +       if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s|l",
>>>> &source, &source_len, &options) == FAILURE) {
>>>>                return;
>>>>        }
>>>>
>>>> @@ -2180,6 +2183,9 @@
>>>>                RETURN_FALSE;
>>>>        }
>>>>
>>>> +       if(options)
>>>> +               htmlCtxtUseOptions(ctxt, options);
>>>> +
>>>>        ctxt->vctxt.error = php_libxml_ctx_error;
>>>>        ctxt->vctxt.warning = php_libxml_ctx_warning;
>>>>        if (ctxt->sax != NULL) {
>>>>
>>>> --
>>>> PHP Internals - PHP Runtime Development Mailing List
>>>> To unsubscribe, visit: http://www.php.net/unsub.php
>>>>
>>>>
>>>
>>>
>>>
>>> --
>>> Pierre
>>>
>>> @pierrejoye | http://blog.thepimp.net | http://www.libgd.org
>>>
>>
>

--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to