)]}'
{
  "commit": "b996d60493a2e501655f23523b31fe34a63edd5c",
  "tree": "3c2935b0802487560a110483a1b510a10c1713ba",
  "parents": [
    "4580ea4f16a94087fe02b8a67744c1fd452a2139"
  ],
  "author": {
    "name": "Dimitry Ivanov",
    "email": "dimitry@google.com",
    "time": "Mon Jul 11 18:11:39 2016 -0700"
  },
  "committer": {
    "name": "Dimitry Ivanov",
    "email": "dimitry@google.com",
    "time": "Tue Jul 12 14:22:13 2016 -0700"
  },
  "message": "linker: Enable debug logging via properties\n\nThis patch lets developers tune logging of dlopen/dlerror with\nsetting system property.\n\nNote that for security purposes this option is disabled on user build\nfor non-debuggable apps.\n\nFor starters there are 3 debug options:\n dlerror - enables logging of all dlerrors\n dlopen - traces dlopen calls\n\nTo enable system-wide logging (works only for userdebug/eng builds)\nuse debug.ld.all property.\n\nTo enable logging for particular app use debug.ld.app.\u003cappname\u003e property.\n\nExample: Running \"adb shell setprop debug.ld.all dlerror,dlopen\" will log all\ndlerror message as well as trace all calls to dlopen.\n\nBug: http://b/29458203\nChange-Id: I2392c80a795509e16fe5689d0500d18b99772a64\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "29520f9e2d9401c504ec502f392e1d677f41f81b",
      "old_mode": 33188,
      "old_path": "linker/Android.mk",
      "new_id": "0faf70b311c767baa34295873a61351d3a6591f2",
      "new_mode": 33188,
      "new_path": "linker/Android.mk"
    },
    {
      "type": "modify",
      "old_id": "a3ebcd6465a39aa0e9cac6311d7a11d930d6fb22",
      "old_mode": 33188,
      "old_path": "linker/dlfcn.cpp",
      "new_id": "110846d9062fa856afed084fb3f9551faa8a03f6",
      "new_mode": 33188,
      "new_path": "linker/dlfcn.cpp"
    },
    {
      "type": "modify",
      "old_id": "0fe0c38e76e88f899f47eef600d905763cc60843",
      "old_mode": 33188,
      "old_path": "linker/linker.cpp",
      "new_id": "4e8a33c0d2c196f533682df2b5af41e519930512",
      "new_mode": 33188,
      "new_path": "linker/linker.cpp"
    },
    {
      "type": "modify",
      "old_id": "fbd236ff7dbff63d6d0765588254970fd17dbe1d",
      "old_mode": 33188,
      "old_path": "linker/linker.h",
      "new_id": "ea77920ef12c133108bbb6e86763952887bb1c1e",
      "new_mode": 33188,
      "new_path": "linker/linker.h"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "7499a83fdf6cbc14ded39ce2aff9c9711fa94045",
      "new_mode": 33188,
      "new_path": "linker/linker_logger.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "6b06affc0c0ce2ce1a6045f090f388ccff0863c4",
      "new_mode": 33188,
      "new_path": "linker/linker_logger.h"
    }
  ]
}
