ZEND_API void zend_html_puts(const char *s, uint len TSRMLS_DC) { const char *ptr=s, *end=s+len; #ifdef ZEND_MULTIBYTE char *filtered; int filtered_len; if (LANG_SCNG(output_filter)) { LANG_SCNG(output_filter)(&filtered, &filtered_len, s, len TSRMLS_CC); ptr = filtered; end = filtered + filtered_len; } #endif /* ZEND_MULTIBYTE */ while (ptr<end) { if (*ptr==' ') { do { zend_html_putc(*ptr); } while ((++ptr < end) && (*ptr==' ')); } else { zend_html_putc(*ptr++); } } #ifdef ZEND_MULTIBYTE if (LANG_SCNG(output_filter)) { efree(filtered); } #endif /* ZEND_MULTIBYTE */ }
ZEND_API void zend_html_puts(const char *s, uint len TSRMLS_DC) { const unsigned char *ptr = (const unsigned char*)s, *end = ptr + len; unsigned char *filtered; size_t filtered_len; if (LANG_SCNG(output_filter)) { LANG_SCNG(output_filter)(&filtered, &filtered_len, ptr, len TSRMLS_CC); ptr = filtered; end = filtered + filtered_len; } while (ptr<end) { if (*ptr==' ') { do { zend_html_putc(*ptr); } while ((++ptr < end) && (*ptr==' ')); } else { zend_html_putc(*ptr++); } } if (LANG_SCNG(output_filter)) { efree(filtered); } }