diff --git a/Changelog.md b/Changelog.md
--- a/Changelog.md
+++ b/Changelog.md
@@ -1,7 +1,10 @@
+## 1.25.11 (2022-09-13)
+- revert "allow empty text content #10" to avoid haxr memory leak
+
 ## 1.25.10 (2022-09-12)
-- allow empty text content (@TeofilC, #10)
-- allow building with GHC 9.4 (@andreasabel, #9)
-- better pretty printer formatting (@avieth, #8)
+- better pretty printer formatting #8 (Alexander Vieth)
+- allow building with GHC 9.4 #9 (Andreas Abel)
+- allow empty text content #10 (Adrian May)
 
 ## 1.25.9 (2022-04-10)
 - fix 1.25.7 regression in Xtract.Parse (#7 by Isaac van Bakel)
diff --git a/HaXml.cabal b/HaXml.cabal
--- a/HaXml.cabal
+++ b/HaXml.cabal
@@ -1,6 +1,6 @@
 cabal-version:  1.18
 name:           HaXml
-version:        1.25.10
+version:        1.25.11
 
 license:        LGPL-2.1
 license-files:  COPYRIGHT, LICENCE-GPL, LICENCE-LGPL
diff --git a/src/Text/XML/HaXml/XmlContent/Parser.hs b/src/Text/XML/HaXml/XmlContent/Parser.hs
--- a/src/Text/XML/HaXml/XmlContent/Parser.hs
+++ b/src/Text/XML/HaXml/XmlContent/Parser.hs
@@ -224,10 +224,12 @@
                  CRef (RefEntity s) _ -> text' (('&':s++";"):acc)
                  CMisc _ _            -> text' acc
                  CElem _ _         -> do { reparse [c] -- put it back!
-                                         ; return (concat (reverse acc))
+                                         ; if null acc then fail "empty string"
+                                           else return (concat (reverse acc))
                                          }
              }
-          `onFail` return (concat (reverse acc))
+          `onFail` ( if null acc then fail "empty string"
+                     else return (concat (reverse acc)) )
 
 
 -- | 'choice f p' means if parseContents succeeds, apply f to the result,
