)]}'
{
  "commit": "c4a3f242b8cd3b9aba21828d1299e18ddbb855c3",
  "tree": "0f3dc310a38299098156c4c280f840fbd7b5b4bc",
  "parents": [
    "8af24c5c4afc459c6ada259da25e57c9ec33a072"
  ],
  "author": {
    "name": "Nicolas Capens",
    "email": "capn@google.com",
    "time": "Mon Dec 11 15:07:53 2017 -0500"
  },
  "committer": {
    "name": "Nicolas Capens",
    "email": "nicolascapens@google.com",
    "time": "Thu Dec 14 15:39:56 2017 +0000"
  },
  "message": "Implement framebuffer layer support.\n\nThis stores the layer as part of the framebuffer object, instead of the\nrenderbuffer, and passes it to the renderer at draw time.\n\nChange-Id: I947f8a58ba7a119cc9d890659c99e7e05d0d1d91\nReviewed-on: https://swiftshader-review.googlesource.com/14728\nTested-by: Nicolas Capens \u003cnicolascapens@google.com\u003e\nReviewed-by: Alexis Hétu \u003csugoi@google.com\u003e\nReviewed-by: Nicolas Capens \u003cnicolascapens@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "75d52496cbb1578cc98b82479d099c50d86ca2fa",
      "old_mode": 33188,
      "old_path": "src/OpenGL/common/Image.hpp",
      "new_id": "052121c61bc0191597c71f5b41a762a060e9a247",
      "new_mode": 33188,
      "new_path": "src/OpenGL/common/Image.hpp"
    },
    {
      "type": "modify",
      "old_id": "d8ff8625e1bdcace4c55350c3a0461ba47404507",
      "old_mode": 33188,
      "old_path": "src/OpenGL/libGLESv2/Context.cpp",
      "new_id": "05b7eaac3c965d7ada4bc8d0d484b549f58fe1cc",
      "new_mode": 33188,
      "new_path": "src/OpenGL/libGLESv2/Context.cpp"
    },
    {
      "type": "modify",
      "old_id": "598bd4f98b3362d7b9a87bbd686fd4d3bbec5821",
      "old_mode": 33188,
      "old_path": "src/OpenGL/libGLESv2/Device.cpp",
      "new_id": "1be27ff579fc7abc776bdf090ee22685f6c4d7b5",
      "new_mode": 33188,
      "new_path": "src/OpenGL/libGLESv2/Device.cpp"
    },
    {
      "type": "modify",
      "old_id": "1b1492eb3ef0b9d315a29f4cd1393be94338d111",
      "old_mode": 33188,
      "old_path": "src/OpenGL/libGLESv2/Device.hpp",
      "new_id": "c1974167e1e0336e1cab0077b978dc4d25ea201d",
      "new_mode": 33188,
      "new_path": "src/OpenGL/libGLESv2/Device.hpp"
    },
    {
      "type": "modify",
      "old_id": "e5a621e456071d7c49d4aec1041590bbfc4e5693",
      "old_mode": 33188,
      "old_path": "src/OpenGL/libGLESv2/Framebuffer.cpp",
      "new_id": "ec3c3212acd8f22c82187563521fd0f7674d8284",
      "new_mode": 33188,
      "new_path": "src/OpenGL/libGLESv2/Framebuffer.cpp"
    },
    {
      "type": "modify",
      "old_id": "cbae1e354c84dd0b4bd6a202d8d96357031baf05",
      "old_mode": 33188,
      "old_path": "src/OpenGL/libGLESv2/Framebuffer.h",
      "new_id": "e1a3611d5bb3f5b2a112259dd43ea1aec316b947",
      "new_mode": 33188,
      "new_path": "src/OpenGL/libGLESv2/Framebuffer.h"
    },
    {
      "type": "modify",
      "old_id": "61cc2239006d4f8f1203c4cfb0147b1552f6e2df",
      "old_mode": 33188,
      "old_path": "src/OpenGL/libGLESv2/Renderbuffer.cpp",
      "new_id": "f68c6f33de1af5b4817b0d70892a1c1099ec5ad5",
      "new_mode": 33188,
      "new_path": "src/OpenGL/libGLESv2/Renderbuffer.cpp"
    },
    {
      "type": "modify",
      "old_id": "c7719b5fe0ebc1fee15689f513c53d82aa227c66",
      "old_mode": 33188,
      "old_path": "src/OpenGL/libGLESv2/Renderbuffer.h",
      "new_id": "f035d508c4a46ec00489df5068345e3db7b50608",
      "new_mode": 33188,
      "new_path": "src/OpenGL/libGLESv2/Renderbuffer.h"
    },
    {
      "type": "modify",
      "old_id": "6618859bf0bde4cfc61b50bcc62fd4d838480705",
      "old_mode": 33188,
      "old_path": "src/OpenGL/libGLESv2/Texture.cpp",
      "new_id": "9ae1b113724904e51a2ee8eba92b32aee4f2bc4b",
      "new_mode": 33188,
      "new_path": "src/OpenGL/libGLESv2/Texture.cpp"
    },
    {
      "type": "modify",
      "old_id": "6d04c53de60a4afb1dbe0f83543263c2dd986c24",
      "old_mode": 33188,
      "old_path": "src/OpenGL/libGLESv2/Texture.h",
      "new_id": "bd34b33193877176cd0911a4cdf2657bba31f5c7",
      "new_mode": 33188,
      "new_path": "src/OpenGL/libGLESv2/Texture.h"
    },
    {
      "type": "modify",
      "old_id": "ddc23e8b245c685b72ce4aecea17f559c8c726fe",
      "old_mode": 33188,
      "old_path": "src/OpenGL/libGLESv2/libGLESv2.cpp",
      "new_id": "93a59a6e1ffb06792a15c5c7a9a6e8b363096b2e",
      "new_mode": 33188,
      "new_path": "src/OpenGL/libGLESv2/libGLESv2.cpp"
    },
    {
      "type": "modify",
      "old_id": "b758bada2943aec61b11d8a272160fada5087eed",
      "old_mode": 33188,
      "old_path": "src/Renderer/Surface.cpp",
      "new_id": "b8091482ecbac4fc7c1521e204a74850e66e859a",
      "new_mode": 33188,
      "new_path": "src/Renderer/Surface.cpp"
    }
  ]
}
