       df.reject('not image')
     op.done (e) ->
       img = e.target
+      df.always ->
+        img.src = '//:0'
 
       if maxSource and img.width * img.height > maxSource
-        img.src = '//:0'
-        df.reject('max source')
-        return
+        return df.reject('max source')
 
       ns.getExif(file).always (exif) ->
         orientation = ns.parseExifOrientation(exif) or 1

        ][orientation - 1]

        if not trns
          df.reject('')

        canvas = document.createElement('canvas')
        canvas.width = dW

          ctx.fillStyle = bg
          ctx.fillRect(0, 0, dW, dH)
        ctx.drawImage(img, 0, 0, dW, dH)

        df.resolve(canvas, sSize)

