diff --git a/Data/List/Split/Internals.hs b/Data/List/Split/Internals.hs
--- a/Data/List/Split/Internals.hs
+++ b/Data/List/Split/Internals.hs
@@ -215,11 +215,12 @@
 
 -- | Drop a final blank chunk according to the given 'EndPolicy'.
 dropFinal :: EndPolicy -> SplitList a -> SplitList a
-dropFinal _ [] = []
-dropFinal DropBlank l = case last l of
-                          Text [] -> init l
-                          _ -> l
-dropFinal _ l = l
+dropFinal _         [] = []
+dropFinal DropBlank l  = dropFinal' l
+  where dropFinal' []        = []
+        dropFinal' [Text []] = []
+        dropFinal' (x:xs)    = x:dropFinal' xs
+dropFinal _         l  = l
 
 -- * Combinators
 
diff --git a/split.cabal b/split.cabal
--- a/split.cabal
+++ b/split.cabal
@@ -1,5 +1,5 @@
 Name:                split
-Version:             0.1.2
+Version:             0.1.2.1
 Stability:           experimental
 Description:         Combinator library and utility functions for splitting lists.
 Homepage:            http://code.haskell.org/~byorgey/code/split
