asBoolean() ignores pointers (6796,5626)

This commit is contained in:
Benoit Blanchon
2022-03-28 12:44:45 +02:00
parent d7eef30e6c
commit ddb5e1177c
2 changed files with 1 additions and 3 deletions

View File

@@ -85,7 +85,7 @@ struct Converter<bool> {
static bool fromJson(VariantConstRef src) { static bool fromJson(VariantConstRef src) {
const VariantData* data = getData(src); const VariantData* data = getData(src);
return data ? data->asBoolean() : false; return data ? data->resolve()->asBoolean() : false;
} }
static bool checkJson(VariantConstRef src) { static bool checkJson(VariantConstRef src) {

View File

@@ -45,8 +45,6 @@ inline bool VariantData::asBoolean() const {
return _content.asFloat != 0; return _content.asFloat != 0;
case VALUE_IS_NULL: case VALUE_IS_NULL:
return false; return false;
case VALUE_IS_POINTER: // P+0 G+0
return _content.asPointer->asBoolean();
default: default:
return true; return true;
} }