Added a few missing BoM pieces.

This commit is contained in:
Shyotl
2019-10-19 04:00:51 -05:00
parent daf63eb418
commit 835083a741
4 changed files with 33 additions and 10 deletions

View File

@@ -1037,14 +1037,26 @@ S32 LLPrimitive::packTEField(U8 *cur_ptr, U8 *data_ptr, U8 data_size, U8 last_fa
} }
//assign exception faces to cur_ptr //assign exception faces to cur_ptr
if (exception_faces >= (0x1 << 7)) if (exception_faces >= ((U64)0x1 << 7))
{ {
if (exception_faces >= (0x1 << 14)) if (exception_faces >= ((U64)0x1 << 14))
{ {
if (exception_faces >= (0x1 << 21)) if (exception_faces >= ((U64)0x1 << 21))
{ {
if (exception_faces >= (0x1 << 28)) if (exception_faces >= ((U64)0x1 << 28))
{ {
if (exception_faces >= ((U64)0x1 << 35))
{
if (exception_faces >= ((U64)0x1 << 42))
{
if (exception_faces >= ((U64)0x1 << 49))
{
*cur_ptr++ = (U8)(((exception_faces >> 49) & 0x7F) | 0x80);
}
*cur_ptr++ = (U8)(((exception_faces >> 42) & 0x7F) | 0x80);
}
*cur_ptr++ = (U8)(((exception_faces >> 35) & 0x7F) | 0x80);
}
*cur_ptr++ = (U8)(((exception_faces >> 28) & 0x7F) | 0x80); *cur_ptr++ = (U8)(((exception_faces >> 28) & 0x7F) | 0x80);
} }
*cur_ptr++ = (U8)(((exception_faces >> 21) & 0x7F) | 0x80); *cur_ptr++ = (U8)(((exception_faces >> 21) & 0x7F) | 0x80);
@@ -1053,6 +1065,7 @@ S32 LLPrimitive::packTEField(U8 *cur_ptr, U8 *data_ptr, U8 data_size, U8 last_fa
} }
*cur_ptr++ = (U8)(((exception_faces >> 7) & 0x7F) | 0x80); *cur_ptr++ = (U8)(((exception_faces >> 7) & 0x7F) | 0x80);
} }
*cur_ptr++ = (U8)(exception_faces & 0x7F); *cur_ptr++ = (U8)(exception_faces & 0x7F);
@@ -1112,7 +1125,7 @@ S32 LLPrimitive::unpackTEField(U8 *cur_ptr, U8 *buffer_end, U8 *data_ptr, U8 dat
// Includes information about image ID, color, scale S,T, offset S,T and rotation // Includes information about image ID, color, scale S,T, offset S,T and rotation
BOOL LLPrimitive::packTEMessage(LLMessageSystem *mesgsys) const BOOL LLPrimitive::packTEMessage(LLMessageSystem *mesgsys) const
{ {
const U32 MAX_TES = 32; const U32 MAX_TES = 45;
U8 image_ids[MAX_TES*16]; U8 image_ids[MAX_TES*16];
U8 colors[MAX_TES*4]; U8 colors[MAX_TES*4];
@@ -1197,7 +1210,7 @@ BOOL LLPrimitive::packTEMessage(LLMessageSystem *mesgsys) const
BOOL LLPrimitive::packTEMessage(LLDataPacker &dp) const BOOL LLPrimitive::packTEMessage(LLDataPacker &dp) const
{ {
const U32 MAX_TES = 32; const U32 MAX_TES = 45;
U8 image_ids[MAX_TES*16]; U8 image_ids[MAX_TES*16];
U8 colors[MAX_TES*4]; U8 colors[MAX_TES*4];
@@ -1401,7 +1414,7 @@ S32 LLPrimitive::unpackTEMessage(LLDataPacker &dp)
{ {
// use a negative block_num to indicate a single-block read (a non-variable block) // use a negative block_num to indicate a single-block read (a non-variable block)
S32 retval = 0; S32 retval = 0;
const U32 MAX_TES = 32; const U32 MAX_TES = 45;
// Avoid construction of 32 UUIDs per call // Avoid construction of 32 UUIDs per call
static LLUUID image_ids[MAX_TES]; static LLUUID image_ids[MAX_TES];

View File

@@ -83,6 +83,7 @@ LLPanelGroupGeneral::LLPanelGroupGeneral(const std::string& name,
mGroupNameEditor(NULL), mGroupNameEditor(NULL),
mFounderName(NULL), mFounderName(NULL),
mInsignia(NULL), mInsignia(NULL),
mGroupName(NULL),
mEditCharter(NULL), mEditCharter(NULL),
mBtnJoinGroup(NULL), mBtnJoinGroup(NULL),
mListVisibleMembers(NULL), mListVisibleMembers(NULL),
@@ -120,6 +121,7 @@ BOOL LLPanelGroupGeneral::postBuild()
// General info // General info
mGroupNameEditor = getChild<LLLineEditor>("group_name_editor", recurse); mGroupNameEditor = getChild<LLLineEditor>("group_name_editor", recurse);
mGroupName = getChild<LLNameBox>("group_name", recurse);
mInsignia = getChild<LLTextureCtrl>("insignia", recurse); mInsignia = getChild<LLTextureCtrl>("insignia", recurse);
if (mInsignia) if (mInsignia)
@@ -261,7 +263,7 @@ BOOL LLPanelGroupGeneral::postBuild()
mBtnJoinGroup->setVisible(FALSE); mBtnJoinGroup->setVisible(FALSE);
mBtnInfo->setVisible(FALSE); mBtnInfo->setVisible(FALSE);
getChildView("group_name")->setVisible(FALSE); mGroupName->setVisible(FALSE);
} }
std::string member_count(LLTrans::getString("LoadingData")); std::string member_count(LLTrans::getString("LoadingData"));
@@ -730,7 +732,7 @@ void LLPanelGroupGeneral::update(LLGroupChange gc)
if (mInsignia) mInsignia->setEnabled(can_change_ident); if (mInsignia) mInsignia->setEnabled(can_change_ident);
if (mEditCharter) mEditCharter->setEnabled(can_change_ident); if (mEditCharter) mEditCharter->setEnabled(can_change_ident);
getChildView("group_name")->setValue(mGroupID); if (mGroupName) mGroupName->setValue(mGroupID);
if (mGroupNameEditor) mGroupNameEditor->setVisible(FALSE); if (mGroupNameEditor) mGroupNameEditor->setVisible(FALSE);
if (mFounderName) mFounderName->setValue(gdatap->mFounderID); if (mFounderName) mFounderName->setValue(gdatap->mFounderID);
@@ -905,6 +907,7 @@ void LLPanelGroupGeneral::updateChanged()
LLUICtrl *check_list[] = LLUICtrl *check_list[] =
{ {
mGroupNameEditor, mGroupNameEditor,
mGroupName,
mFounderName, mFounderName,
mInsignia, mInsignia,
mEditCharter, mEditCharter,

View File

@@ -91,6 +91,7 @@ private:
// Group information (include any updates in updateChanged) // Group information (include any updates in updateChanged)
LLLineEditor *mGroupNameEditor; LLLineEditor *mGroupNameEditor;
LLNameBox *mGroupName;
LLNameBox *mFounderName; LLNameBox *mFounderName;
LLTextureCtrl *mInsignia; LLTextureCtrl *mInsignia;
LLTextEditor *mEditCharter; LLTextEditor *mEditCharter;

View File

@@ -2321,7 +2321,13 @@ S32 LLVOVolume::setTEMaterialParams(const U8 te, const LLMaterialPtr pMaterialPa
case LLMaterial::DIFFUSE_ALPHA_MODE_EMISSIVE: case LLMaterial::DIFFUSE_ALPHA_MODE_EMISSIVE:
case LLMaterial::DIFFUSE_ALPHA_MODE_MASK: case LLMaterial::DIFFUSE_ALPHA_MODE_MASK:
{ //all of them modes available only for 32 bit textures { //all of them modes available only for 32 bit textures
if(GL_RGBA != img_diffuse->getPrimaryFormat()) LLTextureEntry* tex_entry = getTE(te);
bool bIsBakedImageId = false;
if (tex_entry && LLAvatarAppearanceDefines::LLAvatarAppearanceDictionary::isBakedImageId(tex_entry->getID()))
{
bIsBakedImageId = true;
}
if (GL_RGBA != img_diffuse->getPrimaryFormat() && !bIsBakedImageId)
{ {
bSetDiffuseNone = true; bSetDiffuseNone = true;
} }