Fix 404s with snippet uploads in object storage
Previously, an HTTP request for
/uploads/-/system/personal_snippet/:snippet_id/:hash/:filename would
look for an uploader of PersonalFileUploader class and use
PersonalFileUploader#upload_paths to search the database for one of the
following paths:
:hash/:filenameuploads/-/system/personal_snippet/:id/:hash/:filename
However, when the upload were stored in object storage,
PersonalFileUploader#store_dirs stored the path as:
personal_snippet/:snippet_id/:hash
The extraneous uploads/-/system prefix prevented the path from being
matched, and uploads in object storage would return a 404 error. Uploads
in local storage would work fine.
To fix this, we set the #base_dir properly so that #upload_paths
generates the right value for object storage. Note that this also makes
#store_dirs do the right thing in FileUploader.
Edited by Stan Hu