'Save the file to a destination path or file object.  If the
destination is a file object you have to close it yourself after the
call.  The buffer size is the number of bytes held in memory during
the copy process.  It defaults to 16KB.
For secure file saving also have a look at :func:`secure_filename`.
:param dst: a filename or open file object the uploaded file
is saved to.
:param buffer_size: the size of the buffer.  This works the same as
the `length` parameter of
:func:`shutil.copyfileobj`.'

def save(self, dst, buffer_size=16384):

    from shutil import copyfileobj
    close_dst = False
    if isinstance(dst, string_types):
        dst = open(dst, 'wb')
        close_dst = True
    try:
        copyfileobj(self.stream, dst, buffer_size)
    finally:
        if close_dst:
            dst.close()
