diff --git a/geshi.php b/geshi.php
index aedc64f..52295c3 100644
--- a/geshi.php
+++ b/geshi.php
@@ -2142,6 +2142,13 @@ class GeSHi {
         $code = str_replace("\r\n", "\n", $this->source);
         $code = str_replace("\r", "\n", $code);
 
+        // Get rid of some HTML entities.
+        $code = str_replace("&gt;", ">", $code);
+        $code = str_replace("&lt;", "<", $code);
+        $code = str_replace("&amp;", "&", $code);
+        $code = str_replace("&#39;", "'", $code);
+        $code = str_replace("&quot;", "\"", $code);
+
         // Firstly, if there is an error, we won't highlight
         if ($this->error) {
             //Escape the source for output
