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

Commit 1a003e4a authored by Mathias Agopian's avatar Mathias Agopian Committed by Android Git Automerger
Browse files

am cb55857b: fix dumpsys Layer name when using multiple displays

* commit 'cb55857b':
  fix dumpsys Layer name when using multiple displays
parents eb38d852 cb55857b
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -901,14 +901,16 @@ HWComposer::LayerListIterator HWComposer::end(int32_t id) {
    return getLayerIterator(id, numLayers);
}

void HWComposer::dump(String8& result, char* buffer, size_t SIZE,
        const Vector< sp<LayerBase> >& visibleLayersSortedByZ) const {
void HWComposer::dump(String8& result, char* buffer, size_t SIZE) const {
    if (mHwc) {
        result.appendFormat("Hardware Composer state (version %8x):\n", hwcApiVersion(mHwc));
        result.appendFormat("  mDebugForceFakeVSync=%d\n", mDebugForceFakeVSync);
        for (size_t i=0 ; i<mNumDisplays ; i++) {
            const DisplayData& disp(mDisplayData[i]);

            const Vector< sp<LayerBase> >& visibleLayersSortedByZ =
                    mFlinger->getLayerSortedByZForHwcDisplay(i);

            if (disp.connected) {
                result.appendFormat(
                        "  Display[%d] : %ux%u, xdpi=%f, ydpi=%f, refresh=%lld\n",
@@ -928,6 +930,7 @@ void HWComposer::dump(String8& result, char* buffer, size_t SIZE,
                    const hwc_layer_1_t&l = disp.list->hwLayers[i];
                    int32_t format = -1;
                    String8 name("unknown");

                    if (i < visibleLayersSortedByZ.size()) {
                        const sp<LayerBase>& layer(visibleLayersSortedByZ[i]);
                        if (layer->getLayer() != NULL) {
+1 −2
Original line number Diff line number Diff line
@@ -258,8 +258,7 @@ public:
    friend class VSyncThread;

    // for debugging ----------------------------------------------------------
    void dump(String8& out, char* scratch, size_t SIZE,
            const Vector< sp<LayerBase> >& visibleLayersSortedByZ) const;
    void dump(String8& out, char* scratch, size_t SIZE) const;

private:
    void loadHwcModule();
+6 −1
Original line number Diff line number Diff line
@@ -2333,7 +2333,7 @@ void SurfaceFlinger::dumpAllLocked(
            hwc.initCheck()==NO_ERROR ? "present" : "not present",
                    (mDebugDisableHWC || mDebugRegion) ? "disabled" : "enabled");
    result.append(buffer);
    hwc.dump(result, buffer, SIZE, hw->getVisibleLayersSortedByZ());
    hwc.dump(result, buffer, SIZE);

    /*
     * Dump gralloc state
@@ -2342,6 +2342,11 @@ void SurfaceFlinger::dumpAllLocked(
    alloc.dump(result);
}

const Vector< sp<LayerBase> >&
SurfaceFlinger::getLayerSortedByZForHwcDisplay(int disp) {
    return getDisplayDevice( getBuiltInDisplay(disp) )->getVisibleLayersSortedByZ();
}

bool SurfaceFlinger::startDdmConnection()
{
    void* libddmconnection_dso =
+4 −0
Original line number Diff line number Diff line
@@ -130,6 +130,10 @@ public:
    // TODO: this should be made accessible only to MessageQueue
    void onMessageReceived(int32_t what);

    // for debugging only
    // TODO: this should be made accessible only to HWComposer
    const Vector< sp<LayerBase> >& getLayerSortedByZForHwcDisplay(int disp);

private:
    friend class Client;
    friend class DisplayEventConnection;