some improvements for uploader