diff --git a/Setup.hs b/Setup.hs
deleted file mode 100644
--- a/Setup.hs
+++ /dev/null
@@ -1,2 +0,0 @@
-import Distribution.Simple
-main = defaultMain
diff --git a/library/Potoki/Core/Transform/Basic.hs b/library/Potoki/Core/Transform/Basic.hs
--- a/library/Potoki/Core/Transform/Basic.hs
+++ b/library/Potoki/Core/Transform/Basic.hs
@@ -36,17 +36,22 @@
 {-# INLINE drop #-}
 drop :: Int -> Transform input input
 drop amount =
-  Transform $ \ (A.Fetch fetchIO) -> M.Acquire $ do
-    countRef <- newIORef amount
-    return $ (, return ()) $ A.Fetch $ let
-      loop = do
-        count <- readIORef countRef
-        if count > 0
-          then do
-            writeIORef countRef $! pred count
-            loop
-          else fetchIO
-      in loop
+  Transform $ \ (A.Fetch fetchIO) -> do
+    countRef <- liftIO $ newIORef amount
+    return $ Fetch $ do
+      let
+        loop = do
+          count <- readIORef countRef
+          fetch <- fetchIO
+          case fetch of
+            Just _ ->
+              if count > 0
+                then do
+                  writeIORef countRef $! pred count
+                  loop
+                else (return fetch)
+            Nothing -> return Nothing
+      loop
 
 {-# INLINE list #-}
 list :: Transform [a] a
diff --git a/potoki-core.cabal b/potoki-core.cabal
--- a/potoki-core.cabal
+++ b/potoki-core.cabal
@@ -1,5 +1,5 @@
 name: potoki-core
-version: 2.3.4
+version: 2.3.4.1
 synopsis: Low-level components of "potoki"
 description:
   Provides everything required for building custom instances of
diff --git a/test/Transform.hs b/test/Transform.hs
--- a/test/Transform.hs
+++ b/test/Transform.hs
@@ -42,6 +42,10 @@
       concat list ===
       unsafePerformIO (C.produceAndTransformAndConsume (E.list list) A.list D.list)
     ,
+    testProperty "drop" $ \ (list :: [Int], n :: Int) -> 
+      (drop n list) ===
+      unsafePerformIO (C.produceAndTransformAndConsume (E.list list) (A.drop n) D.list)
+    ,
     testProperty "Applying chunksOf to list has the same effect as the \"batch\" transform" $ let
       gen = do
         list <- listOf (choose (0, 1000 :: Int))
