fixes some uninit bool loads (#5644)
This commit fixes some bool loads which are not initialized. With ubsan and the "option -fsanitize=bool", this results in a runtime error during test execution. Co-authored-by: Kim Kulling <kimkulling@users.noreply.github.com>pull/5640/head^2
parent
dd1474e280
commit
35976a4eb4
|
@ -53,7 +53,8 @@ namespace Assimp {
|
||||||
|
|
||||||
// ------------------------------------------------------------------------------------------------
|
// ------------------------------------------------------------------------------------------------
|
||||||
// Constructor to be privately used by Importer
|
// Constructor to be privately used by Importer
|
||||||
LimitBoneWeightsProcess::LimitBoneWeightsProcess() : mMaxWeights(AI_LMW_MAX_WEIGHTS) {
|
LimitBoneWeightsProcess::LimitBoneWeightsProcess() :
|
||||||
|
mMaxWeights(AI_LMW_MAX_WEIGHTS), mRemoveEmptyBones(true) {
|
||||||
// empty
|
// empty
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -113,19 +113,19 @@ struct aiMetadata;
|
||||||
*/
|
*/
|
||||||
// -------------------------------------------------------------------------------
|
// -------------------------------------------------------------------------------
|
||||||
|
|
||||||
inline aiMetadataType GetAiType(bool) {
|
inline aiMetadataType GetAiType(const bool &) {
|
||||||
return AI_BOOL;
|
return AI_BOOL;
|
||||||
}
|
}
|
||||||
inline aiMetadataType GetAiType(int32_t) {
|
inline aiMetadataType GetAiType(int32_t) {
|
||||||
return AI_INT32;
|
return AI_INT32;
|
||||||
}
|
}
|
||||||
inline aiMetadataType GetAiType(uint64_t) {
|
inline aiMetadataType GetAiType(const uint64_t &) {
|
||||||
return AI_UINT64;
|
return AI_UINT64;
|
||||||
}
|
}
|
||||||
inline aiMetadataType GetAiType(float) {
|
inline aiMetadataType GetAiType(const float &) {
|
||||||
return AI_FLOAT;
|
return AI_FLOAT;
|
||||||
}
|
}
|
||||||
inline aiMetadataType GetAiType(double) {
|
inline aiMetadataType GetAiType(const double &) {
|
||||||
return AI_DOUBLE;
|
return AI_DOUBLE;
|
||||||
}
|
}
|
||||||
inline aiMetadataType GetAiType(const aiString &) {
|
inline aiMetadataType GetAiType(const aiString &) {
|
||||||
|
@ -137,10 +137,10 @@ inline aiMetadataType GetAiType(const aiVector3D &) {
|
||||||
inline aiMetadataType GetAiType(const aiMetadata &) {
|
inline aiMetadataType GetAiType(const aiMetadata &) {
|
||||||
return AI_AIMETADATA;
|
return AI_AIMETADATA;
|
||||||
}
|
}
|
||||||
inline aiMetadataType GetAiType(int64_t) {
|
inline aiMetadataType GetAiType(const int64_t &) {
|
||||||
return AI_INT64;
|
return AI_INT64;
|
||||||
}
|
}
|
||||||
inline aiMetadataType GetAiType(uint32_t) {
|
inline aiMetadataType GetAiType(const uint32_t &) {
|
||||||
return AI_UINT32;
|
return AI_UINT32;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -242,6 +242,22 @@ TEST_F( utMetadata, copy_test ) {
|
||||||
EXPECT_EQ( i32v, v );
|
EXPECT_EQ( i32v, v );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// uint32_t test
|
||||||
|
{
|
||||||
|
uint32_t v = 0;
|
||||||
|
bool ok = copy.Get("uint32_t", v);
|
||||||
|
EXPECT_TRUE(ok);
|
||||||
|
EXPECT_EQ( ui32, v );
|
||||||
|
}
|
||||||
|
|
||||||
|
// int64_t test
|
||||||
|
{
|
||||||
|
int64_t v = -1;
|
||||||
|
bool ok = copy.Get("int64_t", v);
|
||||||
|
EXPECT_TRUE(ok);
|
||||||
|
EXPECT_EQ( i64, v );
|
||||||
|
}
|
||||||
|
|
||||||
// uint64_t test
|
// uint64_t test
|
||||||
{
|
{
|
||||||
uint64_t v = 255;
|
uint64_t v = 255;
|
||||||
|
@ -264,14 +280,14 @@ TEST_F( utMetadata, copy_test ) {
|
||||||
EXPECT_EQ( dv, v );
|
EXPECT_EQ( dv, v );
|
||||||
}
|
}
|
||||||
|
|
||||||
// bool test
|
// string test
|
||||||
{
|
{
|
||||||
aiString v;
|
aiString v;
|
||||||
EXPECT_TRUE( copy.Get( "aiString", v ) );
|
EXPECT_TRUE( copy.Get( "aiString", v ) );
|
||||||
EXPECT_EQ( strVal, v );
|
EXPECT_EQ( strVal, v );
|
||||||
}
|
}
|
||||||
|
|
||||||
// bool test
|
// vector test
|
||||||
{
|
{
|
||||||
aiVector3D v;
|
aiVector3D v;
|
||||||
EXPECT_TRUE( copy.Get( "aiVector3D", v ) );
|
EXPECT_TRUE( copy.Get( "aiVector3D", v ) );
|
||||||
|
|
Loading…
Reference in New Issue