Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 937dba18 authored by Yi Kong's avatar Yi Kong
Browse files

Suppress null-dereference warning temporarily

There's one more occurance of this warning.

In file included from hardware/google/av/codec2/tests/C2SampleComponent_test.cpp:23:
In file included from frameworks/av/media/codec2/core/include/C2Component.h:29:
In file included from frameworks/av/media/codec2/core/include/C2Enum.h:20:
frameworks/av/media/codec2/core/include/C2Param.h:1612:92: error: binding dereferenced null pointer to reference has undefined behavior [-Werror,-Wnull-dereference]
C2FieldDescriptor::NamedValuesType named = C2FieldDescriptor::namedValuesFor(*(T*)0);
^~~~~~

Also modernised the code to use nullptr instead of 0.

Bug: 122154294
Test: m checkbuild
Exempt-From-Owner-Approval: No functionality change, similar CL already reviewed by owner
Change-Id: Ieec3335d2f52f0c6f07be1e7c99e4f36c882dabf
parent ae461e07
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -1605,11 +1605,13 @@ struct C2FieldSupportedValues {
    /// \internal
    /// \todo: create separate values vs. flags initializer as for flags we want
    /// to list both allowed and required flags
    template<typename T, typename E=decltype(C2FieldDescriptor::namedValuesFor(*(T*)0))>
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wnull-dereference"
    template<typename T, typename E=decltype(C2FieldDescriptor::namedValuesFor(*(T*)nullptr))>
    C2FieldSupportedValues(bool flags, const T*)
        : type(flags ? FLAGS : VALUES),
          range{(T)0, (T)0, (T)0, (T)0, (T)0} {
              C2FieldDescriptor::NamedValuesType named = C2FieldDescriptor::namedValuesFor(*(T*)0);
              C2FieldDescriptor::NamedValuesType named = C2FieldDescriptor::namedValuesFor(*(T*)nullptr);
        if (flags) {
            values.emplace_back(0); // min-mask defaults to 0
        }
@@ -1618,6 +1620,7 @@ struct C2FieldSupportedValues {
        }
    }
};
#pragma GCC diagnostic pop

/**
 * Supported values for a specific field.