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

Commit a9a1b006 authored by Jesse Hall's avatar Jesse Hall
Browse files

Initialize DisplayData fences to NO_FENCE, not NULL

Also fix another place that was checking for NULL fence rather than
Fence::isValid().

Bug 8283950

Change-Id: Ie06db327eb416828d8dac139171d96d4470b2e35
parent 3e010f31
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -1049,5 +1049,21 @@ bool HWComposer::VSyncThread::threadLoop() {
    return true;
}

HWComposer::DisplayData::DisplayData()
:   width(0), height(0), format(0),
    xdpi(0.0f), ydpi(0.0f),
    refresh(0),
    connected(false),
    hasFbComp(false), hasOvComp(false),
    capacity(0), list(NULL),
    framebufferTarget(NULL), fbTargetHandle(0),
    lastRetireFence(Fence::NO_FENCE), lastDisplayFence(Fence::NO_FENCE),
    events(0)
{}

HWComposer::DisplayData::~DisplayData() {
    free(list);
}

// ---------------------------------------------------------------------------
}; // namespace android
+2 −7
Original line number Diff line number Diff line
@@ -289,13 +289,8 @@ private:


    struct DisplayData {
        DisplayData() : xdpi(0), ydpi(0), refresh(0),
            connected(false), hasFbComp(false), hasOvComp(false),
            capacity(0), list(NULL),
            framebufferTarget(NULL), fbTargetHandle(NULL), events(0) { }
        ~DisplayData() {
            free(list);
        }
        DisplayData();
        ~DisplayData();
        uint32_t width;
        uint32_t height;
        uint32_t format;    // pixel format from FB hal, for pre-hwc-1.1
+1 −1
Original line number Diff line number Diff line
@@ -892,7 +892,7 @@ void SurfaceFlinger::postComposition()

        const HWComposer& hwc = getHwComposer();
        sp<Fence> presentFence = hwc.getDisplayFence(HWC_DISPLAY_PRIMARY);
        if (presentFence != NULL) {
        if (presentFence->isValid()) {
            mAnimFrameTracker.setActualPresentFence(presentFence);
        } else {
            // The HWC doesn't support present fences, so use the refresh