File tree Expand file tree Collapse file tree 1 file changed +14
-2
lines changed
Expand file tree Collapse file tree 1 file changed +14
-2
lines changed Original file line number Diff line number Diff line change @@ -971,10 +971,22 @@ struct curlFileTransfer : public FileTransfer
971971 if (request.uri .scheme () == " s3" ) {
972972 auto modifiedRequest = request;
973973 modifiedRequest.setupForS3 ();
974- return enqueueItem (make_ref<TransferItem>(*this , std::move (modifiedRequest), std::move (callback)));
974+ auto item = make_ref<TransferItem>(*this , std::move (modifiedRequest), std::move (callback));
975+ try {
976+ return enqueueItem (item);
977+ } catch (const nix::Error & e) {
978+ item->fail (e);
979+ return ItemHandle (static_cast <Item &>(*item));
980+ }
975981 }
976982
977- return enqueueItem (make_ref<TransferItem>(*this , request, std::move (callback)));
983+ auto item = make_ref<TransferItem>(*this , request, std::move (callback));
984+ try {
985+ return enqueueItem (item);
986+ } catch (const nix::Error & e) {
987+ item->fail (e);
988+ return ItemHandle (static_cast <Item &>(*item));
989+ }
978990 }
979991
980992 void unpauseTransfer (ref<TransferItem> item)
You can’t perform that action at this time.
0 commit comments