diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,9 @@
 # Revision history for djot
 
+## 0.1.1.2 -- 2024-03-14
+
+* Fix bug parsing regular paragraphs after list (#4).
+
 ## 0.1.1.1 -- 2024-03-03
 
 * Revert "Djot.Blocks: use ByteString directly in `toIdentifier` (#1)"
diff --git a/djot.cabal b/djot.cabal
--- a/djot.cabal
+++ b/djot.cabal
@@ -1,6 +1,6 @@
 cabal-version:      3.0
 name:               djot
-version:            0.1.1.1
+version:            0.1.1.2
 synopsis:           Parser and renderer for djot light markup syntax.
 description:        Djot (<https://djot.net>) is a light markup language.
                     This package provides a data structure to represent
diff --git a/src/Djot/Blocks.hs b/src/Djot/Blocks.hs
--- a/src/Djot/Blocks.hs
+++ b/src/Djot/Blocks.hs
@@ -970,10 +970,12 @@
 
     tip <- getTip
 
-    when (blockContainsBlock (containerSpec tip) == Just Normal) $ do
-      -- add a paragraph container
-      skipMany spaceOrTab
-      blockStart paraSpec
+    case blockContainsBlock (containerSpec tip) of
+      Just bt | bt == Normal || bt == ListItem -> do
+        -- add a paragraph container
+        skipMany spaceOrTab
+        blockStart paraSpec
+      _ -> pure ()
 
   !curline <- sourceLine
   !curcolumn <- sourceColumn
diff --git a/test/regression.test b/test/regression.test
--- a/test/regression.test
+++ b/test/regression.test
@@ -100,3 +100,21 @@
 </section>
 ```
 
+Issue #4
+
+```
+1. one
+2. two
+
+ok
+.
+<ol>
+<li>
+one
+</li>
+<li>
+two
+</li>
+</ol>
+<p>ok</p>
+```
