)]}'
{
  "commit": "b2c5dae65df952999f0a12b9df80bc1433ffa19a",
  "tree": "9b902c03c18b4aaf1ea2bdcea760f7d8a715a154",
  "parents": [
    "920d488d5f76463bd3e3f6f8563e15691011f210"
  ],
  "author": {
    "name": "Brian Salomon",
    "email": "bsalomon@google.com",
    "time": "Mon Mar 04 10:25:17 2019 -0500"
  },
  "committer": {
    "name": "Skia Commit-Bot",
    "email": "skia-commit-bot@chromium.org",
    "time": "Tue Mar 05 13:18:22 2019 +0000"
  },
  "message": "Simplify promise image lazy instantiation callbacks.\n\nNow that we never re-fulfill a promise image we no longer need to deinstantiate\npromise image proxies. They now can use kSingleUse callback semantics.\n\nThis was the only usage of the kDeinstantiate lazy callback type so it is\nremoved. The DeinstantiateProxyTracker is also no longer required and is\nremoved.\n\nThe GrTexture idle callback mechanism now uses GrReleaseProcHelper, which has\nbeen extended to support chaining multiple callbacks together and an abandon()\nmethod that aborts calling the callback in the destructor. It has been renamed\nGrRefCntedCallback to reflect its more general usage.\n\nBug: skia:8800\nChange-Id: I857c9eec57fdf706631a266ec8bea682d6657a7c\nReviewed-on: https://skia-review.googlesource.com/c/skia/+/196500\nCommit-Queue: Brian Salomon \u003cbsalomon@google.com\u003e\nReviewed-by: Robert Phillips \u003crobertphillips@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4904f420ca3ca54d3f6d38147804825857cb28c2",
      "old_mode": 33188,
      "old_path": "gn/gpu.gni",
      "new_id": "bf6be625dec59b6e763208b19911e4f6c85e1e07",
      "new_mode": 33188,
      "new_path": "gn/gpu.gni"
    },
    {
      "type": "modify",
      "old_id": "c4ff8183484a5228fd69a84a7ac1772fb95a0c78",
      "old_mode": 33188,
      "old_path": "include/gpu/GrSurface.h",
      "new_id": "40ce8a1669eb45edbd1425180765db4464bd998b",
      "new_mode": 33188,
      "new_path": "include/gpu/GrSurface.h"
    },
    {
      "type": "modify",
      "old_id": "542e785b3d8304a38104eba4f652363b9842aa34",
      "old_mode": 33188,
      "old_path": "include/gpu/GrTexture.h",
      "new_id": "4a7935f680623d702294aa5b951bf2e83f15e17c",
      "new_mode": 33188,
      "new_path": "include/gpu/GrTexture.h"
    },
    {
      "type": "modify",
      "old_id": "c9eec6c607275fd1f946d77861bd1d3e108a8755",
      "old_mode": 33188,
      "old_path": "include/private/GrSurfaceProxy.h",
      "new_id": "7c572bb1dba5cd63c101a2889d089a4fc1e949c9",
      "new_mode": 33188,
      "new_path": "include/private/GrSurfaceProxy.h"
    },
    {
      "type": "modify",
      "old_id": "63ceb4d3ae7937c9ccb26571c27d5b0aba82924e",
      "old_mode": 33188,
      "old_path": "include/private/GrTypesPriv.h",
      "new_id": "d6ea3627626874a3e51c40f75d318d37c1606960",
      "new_mode": 33188,
      "new_path": "include/private/GrTypesPriv.h"
    },
    {
      "type": "modify",
      "old_id": "9220a1921e561f6faee14d11f4b8a0a620511086",
      "old_mode": 33188,
      "old_path": "src/gpu/GrAHardwareBufferImageGenerator.cpp",
      "new_id": "205595526fd362b5821d506453a3f57c77e3e3e3",
      "new_mode": 33188,
      "new_path": "src/gpu/GrAHardwareBufferImageGenerator.cpp"
    },
    {
      "type": "modify",
      "old_id": "0c41cc156727e1e2d7cee576ccf231ee56f1532a",
      "old_mode": 33188,
      "old_path": "src/gpu/GrBackendTextureImageGenerator.cpp",
      "new_id": "e184e8e1d3d089815c06e6be0290855e7bb0e320",
      "new_mode": 33188,
      "new_path": "src/gpu/GrBackendTextureImageGenerator.cpp"
    },
    {
      "type": "modify",
      "old_id": "74dd3eac7c6f3947faef16618d2c022884263471",
      "old_mode": 33188,
      "old_path": "src/gpu/GrBackendTextureImageGenerator.h",
      "new_id": "d461176d6a1cb32c8b83d74253fb7a38ae06872d",
      "new_mode": 33188,
      "new_path": "src/gpu/GrBackendTextureImageGenerator.h"
    },
    {
      "type": "delete",
      "old_id": "9870617f24e9ba4169a52ce27012414106770abb",
      "old_mode": 33188,
      "old_path": "src/gpu/GrDeinstantiateProxyTracker.cpp",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "delete",
      "old_id": "2555ab18c0e13f5af6dcfa15501df777935ee509",
      "old_mode": 33188,
      "old_path": "src/gpu/GrDeinstantiateProxyTracker.h",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "modify",
      "old_id": "aa22cef4ad11deeef48385d7ba073235211626ae",
      "old_mode": 33188,
      "old_path": "src/gpu/GrDrawingManager.cpp",
      "new_id": "ae49d0a2154b70d0f5110f2f2055099fbd94bc44",
      "new_mode": 33188,
      "new_path": "src/gpu/GrDrawingManager.cpp"
    },
    {
      "type": "modify",
      "old_id": "07983d421dafc18de301ea8318250042a7b7bc35",
      "old_mode": 33188,
      "old_path": "src/gpu/GrOpFlushState.h",
      "new_id": "bc109200a0178c4f0f40c4d03867d4b224b99273",
      "new_mode": 33188,
      "new_path": "src/gpu/GrOpFlushState.h"
    },
    {
      "type": "modify",
      "old_id": "64b3e9556b1ed23a912026a9842aefc5303477e0",
      "old_mode": 33188,
      "old_path": "src/gpu/GrProxyProvider.cpp",
      "new_id": "2540cbb1aa49a7829b8d4af785ac022c3475d491",
      "new_mode": 33188,
      "new_path": "src/gpu/GrProxyProvider.cpp"
    },
    {
      "type": "modify",
      "old_id": "0d3c34e0ea4538f367316f4aad4d361868c007f7",
      "old_mode": 33188,
      "old_path": "src/gpu/GrResourceAllocator.cpp",
      "new_id": "81c27096bd2b5524577720f6719ab0e927706abe",
      "new_mode": 33188,
      "new_path": "src/gpu/GrResourceAllocator.cpp"
    },
    {
      "type": "modify",
      "old_id": "ea1250f537dfce7307f0ba7ec11fbf7b10500a3b",
      "old_mode": 33188,
      "old_path": "src/gpu/GrResourceAllocator.h",
      "new_id": "cb366e67778d83e959444d8a39d9c7eb1298f825",
      "new_mode": 33188,
      "new_path": "src/gpu/GrResourceAllocator.h"
    },
    {
      "type": "modify",
      "old_id": "a9076b89de395c2ab03b79a0085777caf1341afa",
      "old_mode": 33188,
      "old_path": "src/gpu/GrSurfaceProxyPriv.h",
      "new_id": "8fe7f8329f82a98364ed4136152c585a300d03d4",
      "new_mode": 33188,
      "new_path": "src/gpu/GrSurfaceProxyPriv.h"
    },
    {
      "type": "modify",
      "old_id": "caedf081dd7b9047d68e8a558a54debed45240ae",
      "old_mode": 33188,
      "old_path": "src/gpu/gl/GrGLRenderTarget.h",
      "new_id": "1e7c4778af0be690ae1b05da242a9b898b968456",
      "new_mode": 33188,
      "new_path": "src/gpu/gl/GrGLRenderTarget.h"
    },
    {
      "type": "modify",
      "old_id": "6c22b4d0503af1d16f95d9314d33d918a91ff3be",
      "old_mode": 33188,
      "old_path": "src/gpu/gl/GrGLTexture.h",
      "new_id": "423a763e2ed6f48725251878139557c9a9069bda",
      "new_mode": 33188,
      "new_path": "src/gpu/gl/GrGLTexture.h"
    },
    {
      "type": "modify",
      "old_id": "12a8ea08d26d9ab64b568fcce030697c526fd956",
      "old_mode": 33188,
      "old_path": "src/gpu/gl/GrGLTextureRenderTarget.h",
      "new_id": "a3b18419a71468538e5194262be0864c279b02b1",
      "new_mode": 33188,
      "new_path": "src/gpu/gl/GrGLTextureRenderTarget.h"
    },
    {
      "type": "modify",
      "old_id": "f1d977c9d48bbe1418b019f54480a5b7f3af42f8",
      "old_mode": 33188,
      "old_path": "src/gpu/mock/GrMockTexture.h",
      "new_id": "7beb66c17c185a03015a3391c4d3d237ce54b17b",
      "new_mode": 33188,
      "new_path": "src/gpu/mock/GrMockTexture.h"
    },
    {
      "type": "modify",
      "old_id": "c6a13aac9d0b5f2943bb84674487491632689314",
      "old_mode": 33188,
      "old_path": "src/gpu/mtl/GrMtlRenderTarget.h",
      "new_id": "282a443eb83b026501577842d566c18ef2f00cde",
      "new_mode": 33188,
      "new_path": "src/gpu/mtl/GrMtlRenderTarget.h"
    },
    {
      "type": "modify",
      "old_id": "ae283bda1c652b03d9612900c5d72c1467484993",
      "old_mode": 33188,
      "old_path": "src/gpu/mtl/GrMtlTexture.h",
      "new_id": "9134e7d8600205d522a4820f67bbe2bef7f0f399",
      "new_mode": 33188,
      "new_path": "src/gpu/mtl/GrMtlTexture.h"
    },
    {
      "type": "modify",
      "old_id": "b15d2896c07f8590e3dad51a65fabf65d2723e5c",
      "old_mode": 33188,
      "old_path": "src/gpu/mtl/GrMtlTextureRenderTarget.h",
      "new_id": "f62233002dfa07dff81cbc0785f38aecfe675d9e",
      "new_mode": 33188,
      "new_path": "src/gpu/mtl/GrMtlTextureRenderTarget.h"
    },
    {
      "type": "modify",
      "old_id": "99140f67d73732fd42b078b4821e0c6640452988",
      "old_mode": 33188,
      "old_path": "src/gpu/vk/GrVkImage.cpp",
      "new_id": "524c33e5675c88f709b140921e489e8106931d95",
      "new_mode": 33188,
      "new_path": "src/gpu/vk/GrVkImage.cpp"
    },
    {
      "type": "modify",
      "old_id": "994924d406363071ee087be91fefa32c31780a6a",
      "old_mode": 33188,
      "old_path": "src/gpu/vk/GrVkImage.h",
      "new_id": "2da325d1c2f49f83bb3d16c0b67bb4dae61dcc70",
      "new_mode": 33188,
      "new_path": "src/gpu/vk/GrVkImage.h"
    },
    {
      "type": "modify",
      "old_id": "393d54dad7c4cce8eb69e224010be6d780dd0d17",
      "old_mode": 33188,
      "old_path": "src/gpu/vk/GrVkRenderTarget.h",
      "new_id": "bcfa823ea069a549b463c26a5bca539efc0056e3",
      "new_mode": 33188,
      "new_path": "src/gpu/vk/GrVkRenderTarget.h"
    },
    {
      "type": "modify",
      "old_id": "cdb9351a8171fe4f795d56e4884e37c838aa496b",
      "old_mode": 33188,
      "old_path": "src/gpu/vk/GrVkTexture.cpp",
      "new_id": "74f9b15688b2f60deebbc37c506f7662ded1c8ba",
      "new_mode": 33188,
      "new_path": "src/gpu/vk/GrVkTexture.cpp"
    },
    {
      "type": "modify",
      "old_id": "0cfce86219bcd6d72ac2e5a29c046cc3bd525862",
      "old_mode": 33188,
      "old_path": "src/gpu/vk/GrVkTexture.h",
      "new_id": "ffd4a3fd083c099b7dba40b9a7ef88876fe478f4",
      "new_mode": 33188,
      "new_path": "src/gpu/vk/GrVkTexture.h"
    },
    {
      "type": "modify",
      "old_id": "5e90aa04b626e9d3c4a293afb835c009f97ac05f",
      "old_mode": 33188,
      "old_path": "src/gpu/vk/GrVkTextureRenderTarget.h",
      "new_id": "8093bac07a6b06925bb2cc155f1f3ce1f7f103d3",
      "new_mode": 33188,
      "new_path": "src/gpu/vk/GrVkTextureRenderTarget.h"
    },
    {
      "type": "modify",
      "old_id": "594fd05bd90f64abd3f90b9f7467db53aa2c2bab",
      "old_mode": 33188,
      "old_path": "src/image/SkImage_GpuBase.cpp",
      "new_id": "de32e8e51646ea6aa1d26184f0860be38ab0926a",
      "new_mode": 33188,
      "new_path": "src/image/SkImage_GpuBase.cpp"
    },
    {
      "type": "modify",
      "old_id": "dae39410549cb554e9de20ebe3cd109616dcc17b",
      "old_mode": 33188,
      "old_path": "tests/GrSurfaceTest.cpp",
      "new_id": "503652c355daaeb6143463586b130fe3f451fa03",
      "new_mode": 33188,
      "new_path": "tests/GrSurfaceTest.cpp"
    },
    {
      "type": "modify",
      "old_id": "e016e4f673c7818c8f13caa3a8331a4f1174fa90",
      "old_mode": 33188,
      "old_path": "tests/LazyProxyTest.cpp",
      "new_id": "94ca6cb6cf9ed2a920564cf87bfbe064f7e32553",
      "new_mode": 33188,
      "new_path": "tests/LazyProxyTest.cpp"
    },
    {
      "type": "modify",
      "old_id": "a71221d24f22313471c84364fbb015f3a2f992f5",
      "old_mode": 33188,
      "old_path": "tests/ResourceAllocatorTest.cpp",
      "new_id": "69118fc22f9ff76977454aca652b1bf69c9b9ce2",
      "new_mode": 33188,
      "new_path": "tests/ResourceAllocatorTest.cpp"
    }
  ]
}
