diff --git a/indra/newview/app_settings/logcontrol.xml b/indra/newview/app_settings/logcontrol.xml
index d7bb64ce8a7787b39abc4bf24ebfc954571cdfdb..a5e2837f1658ece6a42d6e46240eeff766421f12 100644
--- a/indra/newview/app_settings/logcontrol.xml
+++ b/indra/newview/app_settings/logcontrol.xml
@@ -40,6 +40,8 @@
 						</array>
 					<key>tags</key>
 						<array>
+              <string>AppInit</string>
+              <string>Capabilities</string>
 						</array>
 				</map>
 			</array>
diff --git a/indra/newview/llassetuploadresponders.cpp b/indra/newview/llassetuploadresponders.cpp
index a0be6efdc253bc5459af3d0890d9aeca2dcc86aa..6324da74993cceb2a6b0881c5e3c77437901dddd 100644
--- a/indra/newview/llassetuploadresponders.cpp
+++ b/indra/newview/llassetuploadresponders.cpp
@@ -317,16 +317,18 @@ void LLAssetUploadResponder::uploadComplete(const LLSD& content)
 LLNewAgentInventoryResponder::LLNewAgentInventoryResponder(
 	const LLSD& post_data,
 	const LLUUID& vfile_id,
-	LLAssetType::EType asset_type)
-	: LLAssetUploadResponder(post_data, vfile_id, asset_type)
+	LLAssetType::EType asset_type,
+	LLImportCollada* import)
+	: LLAssetUploadResponder(post_data, vfile_id, asset_type), mImport(import)
 {
 }
 
 LLNewAgentInventoryResponder::LLNewAgentInventoryResponder(
 	const LLSD& post_data,
 	const std::string& file_name,
-	LLAssetType::EType asset_type)
-	: LLAssetUploadResponder(post_data, file_name, asset_type)
+	LLAssetType::EType asset_type,
+	LLImportCollada* import)
+	: LLAssetUploadResponder(post_data, file_name, asset_type), mImport(import)
 {
 }
 
@@ -334,7 +336,7 @@ LLNewAgentInventoryResponder::LLNewAgentInventoryResponder(
 void LLNewAgentInventoryResponder::error(U32 statusNum, const std::string& reason)
 {
 	LLAssetUploadResponder::error(statusNum, reason);
-	LLImportColladaAssetCache::getInstance()->assetUploaded(mVFileID, LLUUID(), FALSE);
+	LLImportColladaAssetCache::getInstance()->assetUploaded(mVFileID, LLUUID(), FALSE, mImport);
 }
 
 
@@ -343,7 +345,7 @@ void LLNewAgentInventoryResponder::uploadFailure(const LLSD& content)
 {
 	LLAssetUploadResponder::uploadFailure(content);
 
-	LLImportColladaAssetCache::getInstance()->assetUploaded(mVFileID, content["new_asset"], FALSE);
+	LLImportColladaAssetCache::getInstance()->assetUploaded(mVFileID, content["new_asset"], FALSE, mImport);
 }
 
 //virtual 
@@ -433,7 +435,7 @@ void LLNewAgentInventoryResponder::uploadComplete(const LLSD& content)
 			userdata);
 	}
 
-	LLImportColladaAssetCache::getInstance()->assetUploaded(mVFileID, content["new_asset"], TRUE);
+	LLImportColladaAssetCache::getInstance()->assetUploaded(mVFileID, content["new_asset"], TRUE, mImport);
 }
 
 LLSendTexLayerResponder::LLSendTexLayerResponder(const LLSD& post_data,
diff --git a/indra/newview/llassetuploadresponders.h b/indra/newview/llassetuploadresponders.h
index c869988203587bd7ba50e64d97722f2a2f8f869f..4b79e1552914fa866428b35f5b14ef5734ea24d3 100644
--- a/indra/newview/llassetuploadresponders.h
+++ b/indra/newview/llassetuploadresponders.h
@@ -61,19 +61,24 @@ class LLAssetUploadResponder : public LLHTTPClient::Responder
 	std::string mFileName;
 };
 
-
+class LLImportCollada;
 // TODO*: Remove this once deprecated
 class LLNewAgentInventoryResponder : public LLAssetUploadResponder
 {
 public:
+	LLImportCollada* mImport;
+
 	LLNewAgentInventoryResponder(
 		const LLSD& post_data,
 		const LLUUID& vfile_id,
-		LLAssetType::EType asset_type);
+		LLAssetType::EType asset_type,
+		LLImportCollada* import);
+
 	LLNewAgentInventoryResponder(
 		const LLSD& post_data,
 		const std::string& file_name,
-		LLAssetType::EType asset_type);
+		LLAssetType::EType asset_type,
+		LLImportCollada* import);
     virtual void error(U32 statusNum, const std::string& reason);
 	virtual void uploadComplete(const LLSD& content);
 	virtual void uploadFailure(const LLSD& content);
diff --git a/indra/newview/llviewermenufile.cpp b/indra/newview/llviewermenufile.cpp
index de6fcbd8bc481882f4fde21ff56602e10c624548..47f9031ac26968e0d49c995ba3c137a90cec1278 100644
--- a/indra/newview/llviewermenufile.cpp
+++ b/indra/newview/llviewermenufile.cpp
@@ -272,7 +272,10 @@ class LLFileUploadScene : public view_listener_t
 		std::string filename = upload_pick((void *)LLFilePicker::FFLOAD_COLLADA);
 		if (!filename.empty())
 		{
-			LLImportCollada::getInstance()->importFile(filename);
+			LLFloaterReg::showInstance("import_collada");
+			LLFloaterImportCollada* floater = LLFloaterReg::findTypedInstance<LLFloaterImportCollada>("import_collada");
+			floater->enableOK(TRUE);
+			floater->importFile(filename);
 		}
 		return TRUE;
 	}
@@ -1080,7 +1083,8 @@ void upload_new_resource(
 			new LLNewAgentInventoryResponder(
 				body,
 				uuid,
-				asset_type));
+				asset_type,
+				(LLImportCollada*) userdata));
 	}
 	else
 	{