diff options
| -rw-r--r-- | indra/llrender/llimagegl.cpp | 3 | ||||
| -rw-r--r-- | indra/newview/llagentwearables.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/lldynamictexture.cpp | 7 | ||||
| -rw-r--r-- | indra/newview/llinventoryicon.cpp | 2 | ||||
| -rw-r--r-- | indra/newview/llinventoryicon.h | 2 | ||||
| -rw-r--r-- | indra/newview/llwearabletype.cpp | 11 | ||||
| -rw-r--r-- | indra/newview/skins/default/textures/icons/Inv_Invalid.png | bin | 0 -> 329 bytes | |||
| -rw-r--r-- | indra/newview/skins/default/textures/textures.xml | 3 | 
8 files changed, 23 insertions, 7 deletions
| diff --git a/indra/llrender/llimagegl.cpp b/indra/llrender/llimagegl.cpp index 90fcf6ab3f..9d037f2565 100644 --- a/indra/llrender/llimagegl.cpp +++ b/indra/llrender/llimagegl.cpp @@ -1055,7 +1055,8 @@ BOOL LLImageGL::setSubImageFromFrameBuffer(S32 fb_x, S32 fb_y, S32 x_pos, S32 y_  		{  			llinfos << "Calling glCopyTexSubImage2D(...)" << llendl ;  			checkTexSize(true) ; -			llcallstacks << fb_x << " : " << fb_y << " : " << x_pos << " : " << y_pos << " : " << width << " : " << height << llcallstacksendl ; +			llcallstacks << fb_x << " : " << fb_y << " : " << x_pos << " : " << y_pos << " : " << width << " : " << height << +				" : " << (S32)mComponents << llcallstacksendl ;  		}  		glCopyTexSubImage2D(GL_TEXTURE_2D, 0, fb_x, fb_y, x_pos, y_pos, width, height); diff --git a/indra/newview/llagentwearables.cpp b/indra/newview/llagentwearables.cpp index 4c2caae2c6..816ca61fe8 100644 --- a/indra/newview/llagentwearables.cpp +++ b/indra/newview/llagentwearables.cpp @@ -1879,7 +1879,7 @@ void LLAgentWearables::userAttachMultipleAttachments(LLInventoryModel::item_arra  		msg->nextBlockFast(_PREHASH_ObjectData );  		msg->addUUIDFast(_PREHASH_ItemID, item->getLinkedUUID());  		msg->addUUIDFast(_PREHASH_OwnerID, item->getPermissions().getOwner()); -		msg->addU8Fast(_PREHASH_AttachmentPt, 0 );	// Wear at the previous or default attachment point +		msg->addU8Fast(_PREHASH_AttachmentPt, 0 | ATTACHMENT_ADD);	// Wear at the previous or default attachment point  		pack_permissions_slam(msg, item->getFlags(), item->getPermissions());  		msg->addStringFast(_PREHASH_Name, item->getName());  		msg->addStringFast(_PREHASH_Description, item->getDescription()); diff --git a/indra/newview/lldynamictexture.cpp b/indra/newview/lldynamictexture.cpp index ed35546ca3..a3d2941114 100644 --- a/indra/newview/lldynamictexture.cpp +++ b/indra/newview/lldynamictexture.cpp @@ -54,6 +54,13 @@ LLViewerDynamicTexture::LLViewerDynamicTexture(S32 width, S32 height, S32 compon  {  	llassert((1 <= components) && (components <= 4)); +	if(gGLManager.mDebugGPU) +	{ +		if(components == 3) +		{ +			mComponents = 4 ; //convert to 32bits. +		} +	}  	generateGLTexture();  	llassert( 0 <= order && order < ORDER_COUNT ); diff --git a/indra/newview/llinventoryicon.cpp b/indra/newview/llinventoryicon.cpp index 021790648d..7216d61e7f 100644 --- a/indra/newview/llinventoryicon.cpp +++ b/indra/newview/llinventoryicon.cpp @@ -85,6 +85,8 @@ LLIconDictionary::LLIconDictionary()  	addEntry(LLInventoryIcon::ICONNAME_LINKITEM, 				new IconEntry("Inv_LinkItem"));  	addEntry(LLInventoryIcon::ICONNAME_LINKFOLDER, 				new IconEntry("Inv_LinkItem")); +	addEntry(LLInventoryIcon::ICONNAME_INVALID, 				new IconEntry("Inv_Invalid")); +  	addEntry(LLInventoryIcon::ICONNAME_NONE, 					new IconEntry("NONE"));  } diff --git a/indra/newview/llinventoryicon.h b/indra/newview/llinventoryicon.h index 3c7ac7f609..9a2cc08095 100644 --- a/indra/newview/llinventoryicon.h +++ b/indra/newview/llinventoryicon.h @@ -73,8 +73,8 @@ public:  		ICONNAME_LINKITEM,  		ICONNAME_LINKFOLDER, +		ICONNAME_INVALID,  		ICONNAME_COUNT, -  		ICONNAME_NONE = -1  	}; diff --git a/indra/newview/llwearabletype.cpp b/indra/newview/llwearabletype.cpp index d2e62c86ab..0d707d65bf 100644 --- a/indra/newview/llwearabletype.cpp +++ b/indra/newview/llwearabletype.cpp @@ -77,8 +77,8 @@ LLWearableDictionary::LLWearableDictionary()  	addEntry(LLWearableType::WT_SKIRT,        new WearableEntry("skirt",       "New Skirt",			LLAssetType::AT_CLOTHING, 	LLInventoryIcon::ICONNAME_CLOTHING_SKIRT));  	addEntry(LLWearableType::WT_ALPHA,        new WearableEntry("alpha",       "New Alpha",			LLAssetType::AT_CLOTHING, 	LLInventoryIcon::ICONNAME_CLOTHING_ALPHA));  	addEntry(LLWearableType::WT_TATTOO,       new WearableEntry("tattoo",      "New Tattoo",		LLAssetType::AT_CLOTHING, 	LLInventoryIcon::ICONNAME_CLOTHING_TATTOO)); -	addEntry(LLWearableType::WT_INVALID,      new WearableEntry("invalid",     "Invalid Wearable", 	LLAssetType::AT_NONE, 		LLInventoryIcon::ICONNAME_NONE)); -	addEntry(LLWearableType::WT_NONE,      	  new WearableEntry("none",        "Invalid Wearable", 	LLAssetType::AT_NONE, 		LLInventoryIcon::ICONNAME_NONE)); +	addEntry(LLWearableType::WT_INVALID,      new WearableEntry("invalid",     "Invalid Wearable", 	LLAssetType::AT_NONE, 		LLInventoryIcon::ICONNAME_INVALID)); +	addEntry(LLWearableType::WT_NONE,      	  new WearableEntry("none",        "Invalid Wearable", 	LLAssetType::AT_NONE, 		LLInventoryIcon::ICONNAME_INVALID));  }  // static @@ -94,6 +94,7 @@ const std::string& LLWearableType::getTypeName(LLWearableType::EType type)  {   	const LLWearableDictionary *dict = LLWearableDictionary::getInstance();  	const WearableEntry *entry = dict->lookup(type); +	if (!entry) return getTypeName(WT_INVALID);  	return entry->mName;  } @@ -102,6 +103,7 @@ const std::string& LLWearableType::getTypeDefaultNewName(LLWearableType::EType t  {   	const LLWearableDictionary *dict = LLWearableDictionary::getInstance();  	const WearableEntry *entry = dict->lookup(type); +	if (!entry) return getTypeDefaultNewName(WT_INVALID);  	return entry->mDefaultNewName;  } @@ -110,6 +112,7 @@ const std::string& LLWearableType::getTypeLabel(LLWearableType::EType type)  {   	const LLWearableDictionary *dict = LLWearableDictionary::getInstance();  	const WearableEntry *entry = dict->lookup(type); +	if (!entry) return getTypeLabel(WT_INVALID);  	return entry->mLabel;  } @@ -118,6 +121,7 @@ LLAssetType::EType LLWearableType::getAssetType(LLWearableType::EType type)  {  	const LLWearableDictionary *dict = LLWearableDictionary::getInstance();  	const WearableEntry *entry = dict->lookup(type); +	if (!entry) return getAssetType(WT_INVALID);  	return entry->mAssetType;  } @@ -126,6 +130,7 @@ LLInventoryIcon::EIconName LLWearableType::getIconName(LLWearableType::EType typ  {  	const LLWearableDictionary *dict = LLWearableDictionary::getInstance();  	const WearableEntry *entry = dict->lookup(type); +	if (!entry) return getIconName(WT_INVALID);  	return entry->mIconName; -} +}  diff --git a/indra/newview/skins/default/textures/icons/Inv_Invalid.png b/indra/newview/skins/default/textures/icons/Inv_Invalid.pngBinary files differ new file mode 100644 index 0000000000..328be104ee --- /dev/null +++ b/indra/newview/skins/default/textures/icons/Inv_Invalid.png diff --git a/indra/newview/skins/default/textures/textures.xml b/indra/newview/skins/default/textures/textures.xml index 082b37d80b..fa09a41a1d 100644 --- a/indra/newview/skins/default/textures/textures.xml +++ b/indra/newview/skins/default/textures/textures.xml @@ -229,7 +229,8 @@ with the same filename but different name    <texture name="Inv_Underpants" file_name="icons/Inv_Underpants.png" preload="false" />    <texture name="Inv_Undershirt" file_name="icons/Inv_Undershirt.png" preload="false" />    <texture name="Inv_Link" file_name="icons/Inv_Link.png" preload="false" /> - +  <texture name="Inv_Invalid" file_name="icons/Inv_Invalid.png" preload="false" /> +      <texture name="Linden_Dollar_Alert" file_name="widgets/Linden_Dollar_Alert.png"/>    <texture name="Linden_Dollar_Background" file_name="widgets/Linden_Dollar_Background.png"/> | 
