summaryrefslogtreecommitdiff
path: root/Zend/zend_highlight.c
diff options
context:
space:
mode:
authorRui Hirokawa <hirokawa@php.net>2008-06-29 08:21:35 +0000
committerRui Hirokawa <hirokawa@php.net>2008-06-29 08:21:35 +0000
commitc3286f32ef6e44894389679723aaf5afe101492e (patch)
treedbb709b309e78a99d114e0509e0423d5d3159154 /Zend/zend_highlight.c
parenta6410b3056a0d0e1af782996a93354593c8e0c76 (diff)
downloadphp-git-c3286f32ef6e44894389679723aaf5afe101492e.tar.gz
implemented again zend-multibyte for PHP 5.3
Diffstat (limited to 'Zend/zend_highlight.c')
-rw-r--r--Zend/zend_highlight.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/Zend/zend_highlight.c b/Zend/zend_highlight.c
index ff3f8fe0b9..a6bc552eab 100644
--- a/Zend/zend_highlight.c
+++ b/Zend/zend_highlight.c
@@ -58,6 +58,17 @@ 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 {
@@ -67,6 +78,12 @@ ZEND_API void zend_html_puts(const char *s, uint len TSRMLS_DC)
zend_html_putc(*ptr++);
}
}
+
+#ifdef ZEND_MULTIBYTE
+ if (LANG_SCNG(output_filter)) {
+ efree(filtered);
+ }
+#endif /* ZEND_MULTIBYTE */
}