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

Commit 562d525c authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "[SF] Fix unittest crash"

parents 186578aa 08c66224
Loading
Loading
Loading
Loading
+11 −4
Original line number Diff line number Diff line
@@ -211,13 +211,20 @@ public:
            return *this;
        }

        auto& addCapability(HWC2::Capability cap) {
            mCapabilities.emplace(cap);
        auto& setCapabilities(const std::unordered_set<HWC2::Capability>* capabilities) {
            mCapabilities = capabilities;
            return *this;
        }

        void inject(TestableSurfaceFlinger* flinger, Hwc2::Composer* composer) {
            auto display = std::make_unique<HWC2Display>(*composer, mCapabilities, mHwcDisplayId,
            static const std::unordered_set<HWC2::Capability> defaultCapabilities;
            if (mCapabilities == nullptr) mCapabilities = &defaultCapabilities;

            // Caution - Make sure that any values passed by reference here do
            // not refer to an instance owned by FakeHwcDisplayInjector. This
            // class has temporary lifetime, while the constructed HWC2::Display
            // is much longer lived.
            auto display = std::make_unique<HWC2Display>(*composer, *mCapabilities, mHwcDisplayId,
                                                         mHwcDisplayType);

            auto config = HWC2::Display::Config::Builder(*display, mActiveConfig);
@@ -247,7 +254,7 @@ public:
        int32_t mDpiX = DEFAULT_DPI;
        int32_t mDpiY = DEFAULT_DPI;
        int32_t mActiveConfig = DEFAULT_ACTIVE_CONFIG;
        std::unordered_set<HWC2::Capability> mCapabilities;
        const std::unordered_set<HWC2::Capability>* mCapabilities = nullptr;
    };

    class FakeDisplayDeviceInjector {