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

Commit 67031a12 authored by Chris Craik's avatar Chris Craik Committed by Android (Google) Code Review
Browse files

Merge "Fix deep copy of entry queue"

parents ad6f5766 b250a834
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -452,7 +452,7 @@ void FrameReorderer::deferBitmapOp(const BitmapOp& op) {
            && PaintUtils::getXfermodeDirect(op.paint) == SkXfermode::kSrcOver_Mode
            && op.bitmap->colorType() != kAlpha_8_SkColorType
            && hasMergeableClip(*bakedState)) {
        mergeid_t mergeId = (mergeid_t) op.bitmap->getGenerationID();
        mergeid_t mergeId = reinterpret_cast<mergeid_t>(op.bitmap->getGenerationID());
        // TODO: AssetAtlas in mergeId
        currentLayer().deferMergeableOp(mAllocator, bakedState, OpBatchType::Bitmap, mergeId);
    } else {
@@ -509,7 +509,7 @@ void FrameReorderer::deferPatchOp(const PatchOp& op) {
    if (bakedState->computedState.transform.isPureTranslate()
            && PaintUtils::getXfermodeDirect(op.paint) == SkXfermode::kSrcOver_Mode
            && hasMergeableClip(*bakedState)) {
        mergeid_t mergeId = (mergeid_t) op.bitmap->getGenerationID();
        mergeid_t mergeId = reinterpret_cast<mergeid_t>(op.bitmap->getGenerationID());
        // TODO: AssetAtlas in mergeId

        // Only use the MergedPatch batchId when merged, so Bitmap+Patch don't try to merge together
+1 −1
Original line number Diff line number Diff line
@@ -53,7 +53,7 @@ public:

    void dump() const {
        ALOGD("    Batch %p, id %d, merging %d, count %d, bounds " RECT_STRING,
                this, mBatchId, mMerging, mOps.size(), RECT_ARGS(mBounds));
                this, mBatchId, mMerging, (int) mOps.size(), RECT_ARGS(mBounds));
    }
protected:
    batchid_t mBatchId;
+1 −1
Original line number Diff line number Diff line
@@ -42,7 +42,7 @@ public:
    LayerUpdateQueue() {}
    void enqueueLayerWithDamage(RenderNode* renderNode, Rect dirty);
    void clear();
    const std::vector<Entry> entries() const { return mEntries; }
    const std::vector<Entry>& entries() const { return mEntries; }
private:
    std::vector<Entry> mEntries;
};