cvs: php4(PHP_4_3) /ext/standard string.c /ext/standard/tests/strings bug22008.phpt
| From: | Moriyoshi Koizumi | Date: | Sun, 04 May 2003 12:45:13 +0000 |
| Subject: | cvs: php4(PHP_4_3) /ext/standard string.c /ext/standard/tests/strings bug22008.phpt | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-20676@lists.php.net to get a copy of this message | ||
moriyoshi Sun May 4 08:45:13 2003 EDT
Added files: (Branch: PHP_4_3)
/php4/ext/standard/tests/strings bug22008.phpt
Modified files:
/php4/ext/standard string.c
Log:
MFH(r-1.379,r-1.1): real fix and a test case for bug #22008
Index: php4/ext/standard/string.c
diff -u php4/ext/standard/string.c:1.333.2.24 php4/ext/standard/string.c:1.333.2.25
--- php4/ext/standard/string.c:1.333.2.24 Sun May 4 07:46:23 2003
+++ php4/ext/standard/string.c Sun May 4 08:45:12 2003
@@ -18,7 +18,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: string.c,v 1.333.2.24 2003/05/04 11:46:23 moriyoshi Exp $ */
+/* $Id: string.c,v 1.333.2.25 2003/05/04 12:45:12 moriyoshi Exp $ */
/* Synced with php 3.0 revision 1.193 1999-06-16 [ssb] */
@@ -3396,11 +3396,18 @@
}
break;
- case 3: /* JavaScript/CSS/etc... */
+ case 3:
state = 0;
tp = tbuf;
break;
-
+
+ case 4: /* JavaScript/CSS/etc... */
+ if (p >= buf + 2 && *(p-1) == '-' && *(p-2) == '-') {
+ state = 0;
+ tp = tbuf;
+ }
+ break;
+
default:
*(rp++) = c;
break;
@@ -3437,6 +3444,12 @@
tp = tbuf;
}
}
+ }
+ break;
+
+ case '-':
+ if (state == 3 && p >= buf + 2 && *(p-1) == '-' && *(p-2)
== '!') {
+ state = 4;
}
break;
Index: php4/ext/standard/tests/strings/bug22008.phpt
+++ php4/ext/standard/tests/strings/bug22008.phpt
--TEST--
Bug #22008 (strip_tags() eliminates too much)
--FILE--
<?php
$html = <<< HERE
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>test</title>
</head>
<body>
<b>PHP!</b>
</body>
</html>
HERE;
echo trim(strip_tags($html, '<b>'))."\n";
?>
--EXPECT--
test
<b>PHP!</b>