fix remaining bugs with recursive upload