       return # So that we do not return the results of the for-loop
 
     processError = (finalCallback) -> (message, exception) ->
-      finalCallback error: "PDF Error", message: message, exception: exception
+      # TODO: This exception is not nicely displayed in the console, future.wrap seems to remove payload
+      error = new Error message
+      error.exception = exception
+      throw error
 
     # "finalCallback" has to be called only once to unblock
     processAll = future.wrap (finalCallback) ->

                counter--
                if counter == 0
                  progressCallback 1.0
                  finalCallback finalError

              appendText: (geom) ->
                width = geom.canvasWidth * geom.hScale

            page.render(renderContext).then ->
              return # Do nothing
            , (error) ->
              # TODO: This exception is not nicely displayed in the console, future.wrap seems to remove payload
              throw new Error error

        pdf.getMetadata(pageNumber).then (metadata) ->
          # TODO: If we will process metadata, too, we have to make sure finalCallback is called after only once after everything is finished
