Corrected some valgrind issues
* fixed several uninitialized variable issues * fixed possible memory corruption in CEnginedev-ui
parent
ff101c6973
commit
b41957f2f9
|
@ -998,7 +998,8 @@ void CEngine::ChangeSecondTexture(int objRank, const std::string& tex2Name)
|
||||||
continue; // already new
|
continue; // already new
|
||||||
|
|
||||||
EngineBaseObjTexTier& newP2 = AddLevel2(p1, p2.tex1Name, tex2Name);
|
EngineBaseObjTexTier& newP2 = AddLevel2(p1, p2.tex1Name, tex2Name);
|
||||||
newP2.next.swap(p2.next);
|
newP2.next.insert(newP2.next.end(), p2.next.begin(), p2.next.end());
|
||||||
|
p2.next.clear();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -653,7 +653,7 @@ void CGLDevice::SetTexture(int index, const Texture &texture)
|
||||||
glBindTexture(GL_TEXTURE_2D, texture.id);
|
glBindTexture(GL_TEXTURE_2D, texture.id);
|
||||||
|
|
||||||
// Params need to be updated for the new bound texture
|
// Params need to be updated for the new bound texture
|
||||||
SetTextureStageParams(index, m_textureStageParams[index]);
|
UpdateTextureParams(index);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CGLDevice::SetTexture(int index, unsigned int textureId)
|
void CGLDevice::SetTexture(int index, unsigned int textureId)
|
||||||
|
@ -674,7 +674,7 @@ void CGLDevice::SetTexture(int index, unsigned int textureId)
|
||||||
glBindTexture(GL_TEXTURE_2D, textureId);
|
glBindTexture(GL_TEXTURE_2D, textureId);
|
||||||
|
|
||||||
// Params need to be updated for the new bound texture
|
// Params need to be updated for the new bound texture
|
||||||
SetTextureStageParams(index, m_textureStageParams[index]);
|
UpdateTextureParams(index);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -727,6 +727,13 @@ void CGLDevice::SetTextureStageParams(int index, const TextureStageParams ¶m
|
||||||
// Remember the settings
|
// Remember the settings
|
||||||
m_textureStageParams[index] = params;
|
m_textureStageParams[index] = params;
|
||||||
|
|
||||||
|
UpdateTextureParams(index);
|
||||||
|
}
|
||||||
|
|
||||||
|
void CGLDevice::UpdateTextureParams(int index)
|
||||||
|
{
|
||||||
|
assert(index >= 0 && index < static_cast<int>( m_currentTextures.size() ));
|
||||||
|
|
||||||
if (!m_multitextureAvailable && index != 0)
|
if (!m_multitextureAvailable && index != 0)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
@ -734,6 +741,8 @@ void CGLDevice::SetTextureStageParams(int index, const TextureStageParams ¶m
|
||||||
if (! m_currentTextures[index].Valid())
|
if (! m_currentTextures[index].Valid())
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
const TextureStageParams ¶ms = m_textureStageParams[index];
|
||||||
|
|
||||||
if (m_multitextureAvailable)
|
if (m_multitextureAvailable)
|
||||||
glActiveTexture(GL_TEXTURE0 + index);
|
glActiveTexture(GL_TEXTURE0 + index);
|
||||||
|
|
||||||
|
|
|
@ -192,6 +192,8 @@ private:
|
||||||
void UpdateModelviewMatrix();
|
void UpdateModelviewMatrix();
|
||||||
//! Updates position for given light based on transformation matrices
|
//! Updates position for given light based on transformation matrices
|
||||||
void UpdateLightPosition(int index);
|
void UpdateLightPosition(int index);
|
||||||
|
//! Updates the texture params for given texture stage
|
||||||
|
void UpdateTextureParams(int index);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
//! Current config
|
//! Current config
|
||||||
|
|
|
@ -2116,7 +2116,7 @@ void CRobotMain::FlushDisplayInfo()
|
||||||
m_infoFilename[i][0] = 0;
|
m_infoFilename[i][0] = 0;
|
||||||
m_infoPos[i] = 0;
|
m_infoPos[i] = 0;
|
||||||
}
|
}
|
||||||
strcpy(m_infoFilename[SATCOM_OBJECT], "help/") + m_app->GetLanguageChar() + std::string("/objects.txt");
|
strcpy(m_infoFilename[SATCOM_OBJECT], "objects.txt");
|
||||||
m_infoIndex = 0;
|
m_infoIndex = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -5046,6 +5046,9 @@ void CMainDialog::UpdateSceneResume(int rank)
|
||||||
{
|
{
|
||||||
for ( i=0 ; i<500 ; i++ )
|
for ( i=0 ; i<500 ; i++ )
|
||||||
{
|
{
|
||||||
|
if (line[i] == 0)
|
||||||
|
break;
|
||||||
|
|
||||||
if ( line[i] == '\t' ) line[i] = ' '; // replaces tab by space
|
if ( line[i] == '\t' ) line[i] = ' '; // replaces tab by space
|
||||||
if ( line[i] == '/' && line[i+1] == '/' )
|
if ( line[i] == '/' && line[i+1] == '/' )
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue