meow-7.2.2
Brad Payne (Vir Linden) 2010-11-17 22:46:21 -05:00
commit 4c86da5900
4 changed files with 782 additions and 672 deletions

File diff suppressed because it is too large Load Diff

View File

@ -46,6 +46,8 @@ class LLFloaterModelPreview;
class daeElement;
class domProfile_COMMON;
class domInstance_geometry;
class domNode;
class domTranslate;
class LLPhysicsDecompFloater : public LLFloater
{
@ -103,6 +105,11 @@ public:
LLColor4 getDaeColor(daeElement* element);
daeElement* getChildFromElement( daeElement* pElement, std::string const & name );
bool isNodeAJoint( domNode* pNode );
void processJointNode( domNode* pNode, std::map<std::string,LLMatrix4>& jointTransforms );
void extractTranslation( domTranslate* pTranslate, LLMatrix4& transform );
void extractTranslationViaElement( daeElement* pTranslateElement, LLMatrix4& transform );
//map of avatar joints as named in COLLADA assets to internal joint names
std::map<std::string, std::string> mJointMap;

60
indra/newview/llmeshrepository.cpp Normal file → Executable file
View File

@ -108,36 +108,42 @@ U32 get_volume_memory_size(const LLVolume* volume)
std::string scrub_host_name(std::string http_url)
{ //curl loves to abuse the DNS cache, so scrub host names out of urls where trivial to prevent DNS timeouts
if (!http_url.empty())
if (http_url.empty())
{
std::string::size_type begin_host = http_url.find("://")+3;
std::string host_string = http_url.substr(begin_host);
std::string::size_type end_host = host_string.find(":");
if (end_host == std::string::npos)
{
end_host = host_string.find("/");
}
host_string = host_string.substr(0, end_host);
return http_url;
}
// Not safe to scrub amazon paths
if (http_url.find("s3.amazonaws.com") != std::string::npos)
{
return http_url;
}
std::string::size_type begin_host = http_url.find("://")+3;
std::string host_string = http_url.substr(begin_host);
std::string::size_type end_host = host_string.find(":");
if (end_host == std::string::npos)
{
end_host = host_string.find("/");
}
host_string = host_string.substr(0, end_host);
std::string::size_type idx = http_url.find(host_string);
hostent* ent = gethostbyname(host_string.c_str());
if (ent && ent->h_length > 0)
{
U8* addr = (U8*) ent->h_addr_list[0];
std::string::size_type idx = http_url.find(host_string);
hostent* ent = gethostbyname(host_string.c_str());
if (ent && ent->h_length > 0)
std::string ip_string = llformat("%d.%d.%d.%d", addr[0], addr[1], addr[2], addr[3]);
if (!ip_string.empty() && !host_string.empty() && idx != std::string::npos)
{
U8* addr = (U8*) ent->h_addr_list[0];
std::string ip_string = llformat("%d.%d.%d.%d", addr[0], addr[1], addr[2], addr[3]);
if (!ip_string.empty() && !host_string.empty() && idx != std::string::npos)
{
http_url.replace(idx, host_string.length(), ip_string);
}
http_url.replace(idx, host_string.length(), ip_string);
}
}
return http_url;
}
@ -1409,8 +1415,8 @@ LLMeshUploadThread::LLMeshUploadThread(LLMeshUploadThread::instance_list& data,
mUploadObjectAssetCapability = gAgent.getRegion()->getCapability("UploadObjectAsset");
mNewInventoryCapability = gAgent.getRegion()->getCapability("NewFileAgentInventoryVariablePrice");
mUploadObjectAssetCapability = scrub_host_name(mUploadObjectAssetCapability);
mNewInventoryCapability = scrub_host_name(mNewInventoryCapability);
//mUploadObjectAssetCapability = scrub_host_name(mUploadObjectAssetCapability);
//mNewInventoryCapability = scrub_host_name(mNewInventoryCapability);
mOrigin += gAgent.getAtAxis() * scale.magVec();
}

View File

@ -266,9 +266,9 @@
<key>darwin</key>
<map>
<key>md5sum</key>
<string>c7433c41ab99b9915aa8d4e1d4304048</string>
<string>86de85fa85aa58b5ee550a6a3c77a7d3</string>
<key>url</key>
<uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/colladadom-2.1-darwin-20101115.tar.bz2</uri>
<uri>http://s3.amazonaws.com/viewer-source-downloads/install_pkgs/colladadom-2.1-darwin-20101117.tar.bz2</uri>
</map>
<key>linux</key>
<map>