From bdf6bd5c69226d6884e5b705f11eb13e56a34f2c Mon Sep 17 00:00:00 2001 From: AzaezelX Date: Sun, 29 Aug 2021 17:41:20 -0500 Subject: [PATCH 1/2] account for the possiblity of _set##name(StringTableEntry _in entries somehow getting punted nulls --- Engine/source/T3D/assets/ImageAsset.h | 4 ++-- Engine/source/T3D/assets/MaterialAsset.h | 2 +- Engine/source/T3D/assets/ShapeAsset.h | 4 ++-- Engine/source/T3D/assets/SoundAsset.h | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Engine/source/T3D/assets/ImageAsset.h b/Engine/source/T3D/assets/ImageAsset.h index ec16179aa..b7f9d505b 100644 --- a/Engine/source/T3D/assets/ImageAsset.h +++ b/Engine/source/T3D/assets/ImageAsset.h @@ -176,7 +176,7 @@ public: \ {\ m##name##Asset->getChangedSignal().remove(this, &className::changeFunc);\ }\ - if (_in == StringTable->EmptyString())\ + if (_in == NULL || _in == StringTable->EmptyString())\ {\ m##name##Name = StringTable->EmptyString();\ m##name##AssetId = StringTable->EmptyString();\ @@ -400,7 +400,7 @@ public: \ {\ if(index >= sm##name##Count || index < 0)\ return false;\ - if (_in == StringTable->EmptyString())\ + if (_in == NULL || _in == StringTable->EmptyString())\ {\ m##name##Name[index] = StringTable->EmptyString();\ m##name##AssetId[index] = StringTable->EmptyString();\ diff --git a/Engine/source/T3D/assets/MaterialAsset.h b/Engine/source/T3D/assets/MaterialAsset.h index 7e307cd2b..b91483a07 100644 --- a/Engine/source/T3D/assets/MaterialAsset.h +++ b/Engine/source/T3D/assets/MaterialAsset.h @@ -168,7 +168,7 @@ public: \ {\ if(m##name##AssetId != _in || m##name##Name != _in)\ {\ - if (_in == StringTable->EmptyString())\ + if (_in == NULL || _in == StringTable->EmptyString())\ {\ m##name##Name = StringTable->EmptyString();\ m##name##AssetId = StringTable->EmptyString();\ diff --git a/Engine/source/T3D/assets/ShapeAsset.h b/Engine/source/T3D/assets/ShapeAsset.h index d2ec353e7..4265bea22 100644 --- a/Engine/source/T3D/assets/ShapeAsset.h +++ b/Engine/source/T3D/assets/ShapeAsset.h @@ -241,7 +241,7 @@ public: \ {\ m##name##Asset->getChangedSignal().remove(this, &className::changeFunc);\ }\ - if (_in == StringTable->EmptyString())\ + if (_in == NULL || _in == StringTable->EmptyString())\ {\ m##name##Name = StringTable->EmptyString();\ m##name##AssetId = StringTable->EmptyString();\ @@ -439,7 +439,7 @@ public: \ {\ if(index >= sm##name##Count || index < 0)\ return false;\ - if (_in == StringTable->EmptyString())\ + if (_in == NULL || _in == StringTable->EmptyString())\ {\ m##name##Name[index] = StringTable->EmptyString();\ m##name##AssetId[index] = StringTable->EmptyString();\ diff --git a/Engine/source/T3D/assets/SoundAsset.h b/Engine/source/T3D/assets/SoundAsset.h index eb273291c..a63e14cdf 100644 --- a/Engine/source/T3D/assets/SoundAsset.h +++ b/Engine/source/T3D/assets/SoundAsset.h @@ -184,7 +184,7 @@ public: \ {\ if(m##name##AssetId != _in || m##name##Name != _in)\ {\ - if (_in == StringTable->EmptyString())\ + if (_in == NULL || _in == StringTable->EmptyString())\ {\ m##name##Name = StringTable->EmptyString();\ m##name##AssetId = StringTable->EmptyString();\ From ee3ef531e2b46e42a5905445ce2462efe902cc75 Mon Sep 17 00:00:00 2001 From: AzaezelX Date: Sun, 29 Aug 2021 18:32:44 -0500 Subject: [PATCH 2/2] ironically, overly paranoid checks were tripping warnings --- Engine/source/T3D/assets/ImageAsset.h | 2 +- Engine/source/T3D/assets/MaterialAsset.h | 2 +- Engine/source/T3D/assets/ShapeAsset.h | 2 +- Engine/source/T3D/assets/SoundAsset.h | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Engine/source/T3D/assets/ImageAsset.h b/Engine/source/T3D/assets/ImageAsset.h index b7f9d505b..241cae7b6 100644 --- a/Engine/source/T3D/assets/ImageAsset.h +++ b/Engine/source/T3D/assets/ImageAsset.h @@ -248,7 +248,7 @@ public: \ Con::errorf("%s(%s)::_set%s() - image asset failure\"%s\" due to [%s]", macroText(className), getName(), macroText(name), _in, ImageAsset::getAssetErrstrn(m##name##Asset->getStatus()).c_str());\ return false; \ }\ - else if (bool(m##name) == NULL)\ + else if (m##name)\ {\ Con::errorf("%s(%s)::_set%s() - Couldn't load image \"%s\"", macroText(className), getName(), macroText(name), _in);\ return false;\ diff --git a/Engine/source/T3D/assets/MaterialAsset.h b/Engine/source/T3D/assets/MaterialAsset.h index b91483a07..e046b31bd 100644 --- a/Engine/source/T3D/assets/MaterialAsset.h +++ b/Engine/source/T3D/assets/MaterialAsset.h @@ -231,7 +231,7 @@ public: \ Con::errorf("%s::_set%s() - material asset failure\"%s\" due to [%s]", macroText(className), macroText(name), _in, MaterialAsset::getAssetErrstrn(m##name##Asset->getStatus()).c_str());\ return false; \ }\ - else if (bool(m##name) == NULL)\ + else if (m##name)\ {\ Con::errorf("%s::_set%s() - Couldn't load material \"%s\"", macroText(className), macroText(name), _in);\ return false;\ diff --git a/Engine/source/T3D/assets/ShapeAsset.h b/Engine/source/T3D/assets/ShapeAsset.h index 4265bea22..b5bc0a97a 100644 --- a/Engine/source/T3D/assets/ShapeAsset.h +++ b/Engine/source/T3D/assets/ShapeAsset.h @@ -299,7 +299,7 @@ public: \ Con::errorf("%s(%s)::_set%s() - shape asset failure \"%s\" due to [%s]", macroText(className), getName(), macroText(name), _in, ShapeAsset::getAssetErrstrn(m##name##Asset->getStatus()).c_str());\ return false; \ }\ - else if (bool(m##name) == NULL)\ + else if (m##name)\ {\ Con::errorf("%s(%s)::_set%s() - Couldn't load shape \"%s\"", macroText(className), getName(), macroText(name), _in);\ return false;\ diff --git a/Engine/source/T3D/assets/SoundAsset.h b/Engine/source/T3D/assets/SoundAsset.h index a63e14cdf..bbaeaef9d 100644 --- a/Engine/source/T3D/assets/SoundAsset.h +++ b/Engine/source/T3D/assets/SoundAsset.h @@ -237,7 +237,7 @@ public: \ Con::errorf("%s(%s)::_set%s() - sound asset failure\"%s\" due to [%s]", macroText(className), getName(), macroText(name), _in, ShapeAsset::getAssetErrstrn(m##name##Asset->getStatus()).c_str());\ return false; \ }\ - else if (bool(m##name) == NULL)\ + else if (m##name)\ {\ Con::errorf("%s(%s)::_set%s() - Couldn't load sound \"%s\"", macroText(className), getName(), macroText(name), _in);\ return false;\