diff --git a/indra/llmessage/llxfermanager.cpp b/indra/llmessage/llxfermanager.cpp
index 58d3ee47a1e4c47bd26b0bbde38a361ac055e139..272dbbc785dc2d561be4790fda94566e7e99dd3f 100644
--- a/indra/llmessage/llxfermanager.cpp
+++ b/indra/llmessage/llxfermanager.cpp
@@ -1123,10 +1123,12 @@ void LLXferManager::abortRequestById(U64 xfer_id, S32 result_code)
 		else
 		{
 			xferp->mCallbackResult = result_code;
-			xferp->processEOF(); //should norify requestor
+			xferp->processEOF(); //should notify requester
 			removeXfer(xferp, &mReceiveList);
-			startPendingDownloads();
 		}
+		// Since already removed or marked as aborted no need
+		// to wait for processAbort() to start new download
+		startPendingDownloads();
 	}
 }