                   if request.headers['x-eof'] is '1'
                     opts.eof = true
                   else
-                    if typeof Buffer.from == 'function'
-                      opts.binData = Buffer.from body, 'base64'
+                    if typeof Buffer.from is 'function'
+                      try
+                        opts.binData = Buffer.from body, 'base64'
+                      catch e
+                        opts.binData = new Buffer body, 'base64'
                     else
                       opts.binData = new Buffer body, 'base64'
                     opts.chunkId = parseInt request.headers['x-chunkid']

            self._currentUploads[doc._id].end()

            unless doc.isFinished
              console.info "[FilesCollection] [_preCollectionCursor.observe] [removeUnfinishedUpload]: #{doc.file.path}" if self.debug
              self._currentUploads[doc._id].abort()

            delete self._currentUploads[doc._id]

        }

        if opts.binData
          if typeof Buffer.from is 'function'
            try
              opts.binData = Buffer.from opts.binData, 'base64'
            catch e
              opts.binData = new Buffer opts.binData, 'base64'
          else
            opts.binData = new Buffer opts.binData, 'base64'

