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