 			object: docpad
 			action: 'generatePrepare generateLoad generateRender generatePostpare'
 			args: [opts]
-			next: (err) ->
-				return finish(err)
+			next: finish
 		)
 
 		# Chain

		# Check
		return next()  if opts.collection?.length is 0

		# Create the progress bar
		opts.progress ?= @createProgress()

		# Ensure progress is always removed correctly
		finish = (err) ->
			if opts.progress
				docpad.destroyProgress(opts.progress)
				opts.progress = null
			return next(err)

		# Generate

		if @config.catchExceptions
			process.setMaxListeners(0)
			process.on('uncaughtException', @error)

		# Prepare the Post Tasks
		postTasks = new TaskGroup().once 'complete', (err) =>
