diff --git a/modules/node/node.module b/modules/node/node.module
index 54e6b2c00b115c5da26f8a4fea363eb87ef82cdd..e52f98015cf9de33c37d398e7d11acf4c538fa26 100644
--- a/modules/node/node.module
+++ b/modules/node/node.module
@@ -164,7 +164,7 @@ function node_teaser($body, $format = NULL) {
   // parse errors.
   if (isset($format)) {
     $filters = filter_list_format($format);
-    if (isset($filters['filter/1']) && strpos($body, '<?') !== FALSE) {
+    if (isset($filters['filter/1']) && (strpos($body, '<?') !== FALSE) && (strpos($body, '<?') < $delimiter)) {
       return $body;
     }
   }