)]}'
{
  "commit": "71fae62f5fe03e9f8453ac3880587567ffcf9be6",
  "tree": "2d6c009c2e34eaebd050506048406dd1876a9f02",
  "parents": [
    "ca8aef63766b3193464b8f9b4cde45324a83789a"
  ],
  "author": {
    "name": "Leon Scroggins III",
    "email": "scroggo@google.com",
    "time": "Tue Mar 26 16:28:41 2019 -0400"
  },
  "committer": {
    "name": "Leon Scroggins III",
    "email": "scroggo@google.com",
    "time": "Wed Mar 27 13:39:23 2019 -0400"
  },
  "message": "Pass Bitmap\u0027s native instance to JNI where feasible\n\nTest: CtsGraphicsTestCases, CtsUiRenderingTestCases,\n      CtsRenderscriptTestCases\n\nThis is significantly faster than passing the Java object down and then\ncalling a JNI method to retrieve the pointer. See\nhttps://buganizer.corp.google.com/issues/16656908#comment19\n\nIn some cases this changes what used to be native crashes (due to\nandroid::BitmapWrapper:assertValid\u0027s LOG_ALWAYS_FATAL_IF) into\nNullPointerExceptions (if a caller used a null Bitmap).\n\nIn addition:\n- Remove unnecessary JNIEnv param from toBitmap(jlong)\n- Change instances of toBitmap(JNIEnv*, jobject) to the above\n- Replace calls to GraphicsJNI::getSkBitmap() to inline calls to\n  toBitmap/getSkBitmap\n- make Canvas#nInitRaster @FastNative (FIXME: Could these be\n  @CriticalNative?)\n\nChange-Id: I6194097be1b6e6952eba70e1e7052a5a250eed93\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "59cc5ec552069fec167fcaa04bb59f70afe53a90",
      "old_mode": 33261,
      "old_path": "core/jni/android/graphics/Bitmap.cpp",
      "new_id": "a4e37093def0497582ff0a8f01a1f296bb931740",
      "new_mode": 33261,
      "new_path": "core/jni/android/graphics/Bitmap.cpp"
    },
    {
      "type": "modify",
      "old_id": "8cfef196db1bef488887f852ef3cd899651c4d75",
      "old_mode": 33188,
      "old_path": "core/jni/android/graphics/Bitmap.h",
      "new_id": "6934d26cdc78f750a5f355116c13338fda85fc9b",
      "new_mode": 33188,
      "new_path": "core/jni/android/graphics/Bitmap.h"
    },
    {
      "type": "modify",
      "old_id": "f510e24c95075e3460b97c3d4da56bd766ffe060",
      "old_mode": 33188,
      "old_path": "core/jni/android/graphics/BitmapFactory.cpp",
      "new_id": "3f05c3b57c6991bf90faece23cd1ab5189032658",
      "new_mode": 33188,
      "new_path": "core/jni/android/graphics/BitmapFactory.cpp"
    },
    {
      "type": "modify",
      "old_id": "8a632a14ee0437d374989e6cc79a6fea6284b59e",
      "old_mode": 33188,
      "old_path": "core/jni/android/graphics/BitmapRegionDecoder.cpp",
      "new_id": "6ffa72ad89031d39d0137fac5404e039f0c947a0",
      "new_mode": 33188,
      "new_path": "core/jni/android/graphics/BitmapRegionDecoder.cpp"
    },
    {
      "type": "modify",
      "old_id": "bb291e74ce0d3ca587c25a53f06d62d54c71ac0a",
      "old_mode": 33188,
      "old_path": "core/jni/android/graphics/NinePatch.cpp",
      "new_id": "15f951688d43c6ee391e70c95ded56a1ab5d5c2b",
      "new_mode": 33188,
      "new_path": "core/jni/android/graphics/NinePatch.cpp"
    },
    {
      "type": "modify",
      "old_id": "298f7f8f78e54355262259f9e214e817c4813cda",
      "old_mode": 33188,
      "old_path": "core/jni/android/graphics/Shader.cpp",
      "new_id": "44d2cac8739dafb17738d9a8cf48ca71d0476db5",
      "new_mode": 33188,
      "new_path": "core/jni/android/graphics/Shader.cpp"
    },
    {
      "type": "modify",
      "old_id": "32ac30fdabb05027d63ea088388419d499e3ec9a",
      "old_mode": 33188,
      "old_path": "core/jni/android/graphics/pdf/PdfRenderer.cpp",
      "new_id": "761830b0e97c623da18c5307a504f40e13640be8",
      "new_mode": 33188,
      "new_path": "core/jni/android/graphics/pdf/PdfRenderer.cpp"
    },
    {
      "type": "modify",
      "old_id": "d50e60c1a899dd3e22846e8f68c950539d1beb6b",
      "old_mode": 33188,
      "old_path": "core/jni/android/opengl/util.cpp",
      "new_id": "09f0e8e232bffd280d56c1a6f0d2540c9c5e62f6",
      "new_mode": 33188,
      "new_path": "core/jni/android/opengl/util.cpp"
    },
    {
      "type": "modify",
      "old_id": "9c48c33dc2ed4999c0e7996e148da7e70b9f8c25",
      "old_mode": 33188,
      "old_path": "core/jni/android_graphics_Canvas.cpp",
      "new_id": "7a8c5c8a7b36da225c598d99f76f24dbcf131dd6",
      "new_mode": 33188,
      "new_path": "core/jni/android_graphics_Canvas.cpp"
    },
    {
      "type": "modify",
      "old_id": "ecc2dd0d3598aec5b20fd87531309719b674a5fb",
      "old_mode": 33188,
      "old_path": "core/jni/android_view_ThreadedRenderer.cpp",
      "new_id": "e7cbf938b128d9345e688ff63257946a8f31625f",
      "new_mode": 33188,
      "new_path": "core/jni/android_view_ThreadedRenderer.cpp"
    },
    {
      "type": "modify",
      "old_id": "fd37735882997ec6e713d142cbeb5a7d6dae2381",
      "old_mode": 33188,
      "old_path": "graphics/java/android/graphics/BaseCanvas.java",
      "new_id": "8ce649782924ee20079a79d509854507389edf9b",
      "new_mode": 33188,
      "new_path": "graphics/java/android/graphics/BaseCanvas.java"
    },
    {
      "type": "modify",
      "old_id": "3e117411db01bc4f83e48b1529abe59fc34463f3",
      "old_mode": 33188,
      "old_path": "graphics/java/android/graphics/BaseRecordingCanvas.java",
      "new_id": "1da10fb5b680642b6b0c10ccdca2aba8560a4a9e",
      "new_mode": 33188,
      "new_path": "graphics/java/android/graphics/BaseRecordingCanvas.java"
    },
    {
      "type": "modify",
      "old_id": "d8a86401520281a164a3f6d363982a644ac106dd",
      "old_mode": 33188,
      "old_path": "graphics/java/android/graphics/BitmapFactory.java",
      "new_id": "5623a8a49b35b7847ca37c774606d18a922a3136",
      "new_mode": 33188,
      "new_path": "graphics/java/android/graphics/BitmapFactory.java"
    },
    {
      "type": "modify",
      "old_id": "1410423eafac78d6a7471f486868c3d70d43499a",
      "old_mode": 33188,
      "old_path": "graphics/java/android/graphics/BitmapRegionDecoder.java",
      "new_id": "629d8c131b68d12aa27ea0262724849497bbae22",
      "new_mode": 33188,
      "new_path": "graphics/java/android/graphics/BitmapRegionDecoder.java"
    },
    {
      "type": "modify",
      "old_id": "eb0f2e1e18f2628dedebeb62fb2acc6e111eebbb",
      "old_mode": 33188,
      "old_path": "graphics/java/android/graphics/BitmapShader.java",
      "new_id": "198d1e7bc95668282f8a3ebac9d53683348c782e",
      "new_mode": 33188,
      "new_path": "graphics/java/android/graphics/BitmapShader.java"
    },
    {
      "type": "modify",
      "old_id": "7b3f3da111d5c40acfc81b23b17159bb6390e211",
      "old_mode": 33188,
      "old_path": "graphics/java/android/graphics/Canvas.java",
      "new_id": "5b00d11b36f3b58424a30a01ec936f7cd1410096",
      "new_mode": 33188,
      "new_path": "graphics/java/android/graphics/Canvas.java"
    },
    {
      "type": "modify",
      "old_id": "bc744cc7af3d2791846533ac30b735408f17c2ff",
      "old_mode": 33188,
      "old_path": "graphics/java/android/graphics/HardwareRenderer.java",
      "new_id": "b6b2d4e1c46a705be67b99cad5e1dacfbf7cbf9c",
      "new_mode": 33188,
      "new_path": "graphics/java/android/graphics/HardwareRenderer.java"
    },
    {
      "type": "modify",
      "old_id": "800247af492734194dae60e19ec6e4eee12447ae",
      "old_mode": 33188,
      "old_path": "graphics/java/android/graphics/NinePatch.java",
      "new_id": "c4c1eaceb4fc1dc5b0d3afb4ade4c8c85684ae23",
      "new_mode": 33188,
      "new_path": "graphics/java/android/graphics/NinePatch.java"
    },
    {
      "type": "modify",
      "old_id": "1836f009f86bf02d22527efaa3f6c2ad2a275ee3",
      "old_mode": 33188,
      "old_path": "graphics/java/android/graphics/pdf/PdfRenderer.java",
      "new_id": "bd1a49205fd5740c3fd3ebd9e992fc4b1472efa1",
      "new_mode": 33188,
      "new_path": "graphics/java/android/graphics/pdf/PdfRenderer.java"
    },
    {
      "type": "modify",
      "old_id": "d0973359058ae0f395426dbb41e7773ce2781fe0",
      "old_mode": 33188,
      "old_path": "opengl/java/android/opengl/GLUtils.java",
      "new_id": "ca8d5ac520217a491adce26cbd483159b03e01f1",
      "new_mode": 33188,
      "new_path": "opengl/java/android/opengl/GLUtils.java"
    },
    {
      "type": "modify",
      "old_id": "85c82bc009a0dec6f09f0f14a7c1f3de6a3803ea",
      "old_mode": 33188,
      "old_path": "rs/java/android/renderscript/RenderScript.java",
      "new_id": "f4c27771c846d3c60a075fdbc869e0fdeea0f0b7",
      "new_mode": 33188,
      "new_path": "rs/java/android/renderscript/RenderScript.java"
    },
    {
      "type": "modify",
      "old_id": "52d0e08e4e7f4f1be96b47e731532ff4eeb7507e",
      "old_mode": 33188,
      "old_path": "rs/jni/android_renderscript_RenderScript.cpp",
      "new_id": "dfee96182a484fa9b1fb21dd3a903dbecb849d72",
      "new_mode": 33188,
      "new_path": "rs/jni/android_renderscript_RenderScript.cpp"
    }
  ]
}
