diff --git a/Tests/test-filediff.hs b/Tests/test-filediff.hs
--- a/Tests/test-filediff.hs
+++ b/Tests/test-filediff.hs
@@ -359,6 +359,16 @@
 
     ab `mappend` bc @?= ac
 
+testSequenceDiffCompositionEdgeCase2 :: Assertion
+testSequenceDiffCompositionEdgeCase2 = do
+    let ab = FSeq.SeqDiff {FSeq.dels = [], FSeq.adds = [(0,"a")]}
+    let bc = FSeq.SeqDiff {FSeq.dels = [], FSeq.adds = [(1,"b")]}
+
+    let ac = FSeq.SeqDiff {FSeq.dels = [], FSeq.adds = [(0,"a"),(1,"b")]}
+
+    ab `mappend` bc @?= ac
+
+
 testFileDiffComposition :: Assertion
 testFileDiffComposition = do
     createFileWithContents "a" "a\nb\nc\nd\ne\nf\ng"
@@ -540,7 +550,7 @@
     D.createDirectory "_/b"
 
     D.setCurrentDirectory "a"
-    createFileWithContents "a" "a"  
+    createFileWithContents "a" "a"
     D.setCurrentDirectory ".."
 
     D.setCurrentDirectory "_/b"
@@ -689,6 +699,9 @@
     , testCase
         "Testing sequence diffing composition (edge case 1)"
         (testSequenceDiffCompositionEdgeCase1)
+    , testCase
+        "Testing sequence diffing composition (edge case 2)"
+        (testSequenceDiffCompositionEdgeCase2)
     , testCase
         "Testing file diffing composition"
         (runTest testFileDiffComposition)
diff --git a/filediff.cabal b/filediff.cabal
--- a/filediff.cabal
+++ b/filediff.cabal
@@ -2,7 +2,7 @@
 -- documentation, see http://haskell.org/cabal/users-guide/
 
 name:                filediff
-version:             0.1.0.5
+version:             0.1.0.6
 synopsis:            Diffing and patching module
 description:         `filediff` is a Haskell library for creating diffs, and applying diffs to files and directories.
 homepage:            https://github.com/bgwines/filediff
diff --git a/src/Filediff/Sequence.hs b/src/Filediff/Sequence.hs
--- a/src/Filediff/Sequence.hs
+++ b/src/Filediff/Sequence.hs
@@ -103,6 +103,7 @@
 
             survivingABAdds' :: [(Int, a)] -> [Int] -> [(Int, a)]
             survivingABAdds' [] _ = []
+            survivingABAdds' adds [] = adds
             survivingABAdds' (a:adds) (d:dels) =
                 case (fst a) `compare` d of
                     LT -> (:) a $ survivingABAdds' adds (d:dels)
