diff --git a/indra/llmessage/llcurl.cpp b/indra/llmessage/llcurl.cpp
index 1e735c4bbd767e8f613ee1c18e43a943f8423183..0735842dcd2e625eef829b73e580d70cec4d2128 100644
--- a/indra/llmessage/llcurl.cpp
+++ b/indra/llmessage/llcurl.cpp
@@ -683,7 +683,6 @@ void LLCurl::Multi::perform()
 {
 	if (mPerformState == PERFORM_STATE_READY)
 	{
-		mPerformState = PERFORM_STATE_PERFORMING;
 		mSignal->signal();
 	}
 }
@@ -693,7 +692,7 @@ void LLCurl::Multi::run()
 	while (!mQuitting)
 	{
 		mSignal->wait();
-
+		mPerformState = PERFORM_STATE_PERFORMING;
 		if (!mQuitting)
 		{
 			S32 q = 0;