Fix: use right filename and source file -- support to select a file to upload