)]}'
{
  "log": [
    {
      "commit": "f8ff3a5ae21ce34f22928709cc6f992ff2fdd56e",
      "tree": "991927028fba761d8327d96eac6a4d906eeb1dd2",
      "parents": [
        "545ab46063f083239b29e59b8b491656d93f2a38"
      ],
      "author": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Wed Apr 18 15:30:56 2012 -0700"
      },
      "committer": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Wed Apr 18 15:31:23 2012 -0700"
      },
      "message": "fastboot: Keep borked bootloaders happy by shrinking URB len.\n\nSome devices will fail to return the requested data if the final\nURB len of the request to \u003e 255.\nSo shrink the current data buffer from 128 to 127 in the acse of getting\nthe serial number seems to work just fine.\n\nChange-Id: Ic24e6c86ec93f002dc721d92309b3f880f281f20\n"
    },
    {
      "commit": "545ab46063f083239b29e59b8b491656d93f2a38",
      "tree": "8572736c90155a9c22be5d846f00e8680c642dba",
      "parents": [
        "b47cd10acf6eb9449fc12a93f17f720b21e998c8"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Apr 16 18:05:39 2012 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Apr 17 16:02:31 2012 -0700"
      },
      "message": "audio: added definitions for audio HAL device API.\n\nAdded definitions for output flags needed by new audio\nHAL device API.\n\nThese flags where previously defined in audio_policy.h.\nDefinition in audio_policy.h remains temporarily until\nall projects are changed to use new flags.\n\nChange-Id: I371558c78050daae73942a36f51854372ab71068\n"
    },
    {
      "commit": "b47cd10acf6eb9449fc12a93f17f720b21e998c8",
      "tree": "36b5096aea5e8c8b54b824b64c8b9ad5411b4c86",
      "parents": [
        "cc6e34e629ecad281f12f883e035eae6d5c6d861",
        "4f5d5176a3d732baebe92ab3748a12166406a198"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Tue Apr 17 10:40:09 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 17 10:40:09 2012 -0700"
      },
      "message": "Merge \"init.rc: Add support for new USB accessory configurations\""
    },
    {
      "commit": "cc6e34e629ecad281f12f883e035eae6d5c6d861",
      "tree": "76f20d141f395c70dd677d4a0a6f489f6b2e5c45",
      "parents": [
        "aab19bbcb63eb3555291b4efd06282403b9eb002",
        "34f6d9e910824d6af22c71e6e94a8bea5cde16c8"
      ],
      "author": {
        "name": "Andrew Flynn",
        "email": "flynn@google.com",
        "time": "Mon Apr 16 10:24:57 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 16 10:24:57 2012 -0700"
      },
      "message": "Merge \"Don\u0027t set ro.carrier in init.c\""
    },
    {
      "commit": "34f6d9e910824d6af22c71e6e94a8bea5cde16c8",
      "tree": "493b1ebcd2497628a02d4c978f2c1d999f59c502",
      "parents": [
        "ad0d54efbb6f3a12a84d2c76116f5c0703817f12"
      ],
      "author": {
        "name": "Andrew Flynn",
        "email": "flynn@google.com",
        "time": "Fri Apr 13 09:00:48 2012 -0700"
      },
      "committer": {
        "name": "Andrew Flynn",
        "email": "flynn@google.com",
        "time": "Fri Apr 13 09:00:48 2012 -0700"
      },
      "message": "Don\u0027t set ro.carrier in init.c\n\nIt will instead be set using PRODUCT_PROPERTY_OVERRIDES\nin makefiles\n\nChange-Id: Idc8b480af4c15e15c2d97cdd82a20f259e027c52\n"
    },
    {
      "commit": "aab19bbcb63eb3555291b4efd06282403b9eb002",
      "tree": "3d64303637111070abff6c5f99f266ad20ccaa09",
      "parents": [
        "5fa860dea3618d5397bb580645f057a6e975786e",
        "29392a4e5bedcff53a1d1f6674c73de00e0e5055"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Apr 12 17:34:51 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 12 17:34:51 2012 -0700"
      },
      "message": "Merge \"Added flag for cropped scaling mode\""
    },
    {
      "commit": "5fa860dea3618d5397bb580645f057a6e975786e",
      "tree": "221fad7e3dd580ac527e11c0ad51b92a5fd34973",
      "parents": [
        "f5f9dad0c70c98cc2a500e62830d7be4a2844dbb",
        "1d91fcf7c0a31d27097b196579a37873ba1c0934"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Thu Apr 12 16:48:11 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 12 16:48:11 2012 -0700"
      },
      "message": "Merge \"Add MDNS service\""
    },
    {
      "commit": "f5f9dad0c70c98cc2a500e62830d7be4a2844dbb",
      "tree": "15f6f0e0f25891536370c4be021e8ae82d502c55",
      "parents": [
        "ad0d54efbb6f3a12a84d2c76116f5c0703817f12",
        "731d831e91d5d9f8b15ca95367977abe35967166"
      ],
      "author": {
        "name": "Ashish Sharma",
        "email": "ashishsharma@google.com",
        "time": "Thu Apr 12 14:47:22 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 12 14:47:22 2012 -0700"
      },
      "message": "Merge \"libsysutils: NetlinkEvent: add support for interface xt_IDLETIMER events.\""
    },
    {
      "commit": "29392a4e5bedcff53a1d1f6674c73de00e0e5055",
      "tree": "8c9e54bdb1905ab2392c2598683d445e5ab384db",
      "parents": [
        "720d598280e5ebd3fb7c845a2a11520bb646d645"
      ],
      "author": {
        "name": "Daniel Lam",
        "email": "dalam@google.com",
        "time": "Wed Apr 11 18:19:46 2012 -0700"
      },
      "committer": {
        "name": "Daniel Lam",
        "email": "dalam@google.com",
        "time": "Thu Apr 12 14:33:31 2012 -0700"
      },
      "message": "Added flag for cropped scaling mode\n\nNATIVE_WINDOW_SCALING_MODE_CROP forces the SurfaceTexture\nto match the crop rect\u0027s aspect ratio to that of the window.\n\nChange-Id: Id126b106eac06fd34d2d650a1bc66ffbac26c501\n"
    },
    {
      "commit": "ad0d54efbb6f3a12a84d2c76116f5c0703817f12",
      "tree": "0695361038a2210f84b490ebb9b424fdd592530b",
      "parents": [
        "6a35bb3529520dd1a47a5d0f58abf91d38eb0222",
        "afcdef635718985aae26e5f94c21ae4f3248a0b9"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Wed Apr 11 18:37:12 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 11 18:37:12 2012 -0700"
      },
      "message": "Merge \"window: add API for native_window_set_buffers_user_dimensions\""
    },
    {
      "commit": "731d831e91d5d9f8b15ca95367977abe35967166",
      "tree": "041d773389dc1d6543fda3bb618d2a9233632c8f",
      "parents": [
        "720d598280e5ebd3fb7c845a2a11520bb646d645"
      ],
      "author": {
        "name": "Ashish Sharma",
        "email": "ashishsharma@google.com",
        "time": "Tue Apr 10 18:59:16 2012 -0700"
      },
      "committer": {
        "name": "Ashish Sharma",
        "email": "ashishsharma@google.com",
        "time": "Wed Apr 11 17:24:46 2012 -0700"
      },
      "message": "libsysutils: NetlinkEvent: add support for interface xt_IDLETIMER events.\n\nxt_IDLETIMER events are used to infer the interface (radio) state\nbased on a inactivity timeout value.\n\nChange-Id: I755eb54a048ca1c6ce0c646564d61188d8241851\n"
    },
    {
      "commit": "6a35bb3529520dd1a47a5d0f58abf91d38eb0222",
      "tree": "ff682445d345010979681e0efc8a515d4eb0baff",
      "parents": [
        "720d598280e5ebd3fb7c845a2a11520bb646d645",
        "0653b97b2594d5e3f21c6326fb121741bfbf65f7"
      ],
      "author": {
        "name": "Todd Poynor",
        "email": "toddpoynor@google.com",
        "time": "Wed Apr 11 15:28:57 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 11 15:28:57 2012 -0700"
      },
      "message": "Merge \"init.rc: Set owner and permissions for cpufreq files\""
    },
    {
      "commit": "0653b97b2594d5e3f21c6326fb121741bfbf65f7",
      "tree": "ef309012172a13a422ccfa937f68be83dfb662d4",
      "parents": [
        "cfa9f650266621fee963fe18084a39602aa8fcc6"
      ],
      "author": {
        "name": "Todd Poynor",
        "email": "toddpoynor@google.com",
        "time": "Wed Apr 11 14:48:51 2012 -0700"
      },
      "committer": {
        "name": "Todd Poynor",
        "email": "toddpoynor@google.com",
        "time": "Wed Apr 11 14:50:09 2012 -0700"
      },
      "message": "init.rc: Set owner and permissions for cpufreq files\n\nChange-Id: Iaaf8491915567dbe22cab1798081a00fed4fb2e2\n"
    },
    {
      "commit": "4f5d5176a3d732baebe92ab3748a12166406a198",
      "tree": "82d8cf8e2a8947447cb9541d1370de75e7f58b24",
      "parents": [
        "03e0cb3a38ec6a2bf65c19466017ce35b13d8cb2"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Apr 04 11:26:59 2012 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Apr 11 12:35:49 2012 -0700"
      },
      "message": "init.rc: Add support for new USB accessory configurations\n\nAlso moved USB scripts to new file init.usb.rc\n\nChange-Id: I98e099fbd8de3eb3e1e18c9ef69312608033a50c\nSigned-off-by: Mike Lockwood \u003clockwood@google.com\u003e\n"
    },
    {
      "commit": "afcdef635718985aae26e5f94c21ae4f3248a0b9",
      "tree": "1fc9d951e80e966921f4a888e988708c9cb70aa1",
      "parents": [
        "720d598280e5ebd3fb7c845a2a11520bb646d645"
      ],
      "author": {
        "name": "Michael I. Gold",
        "email": "gold@nvidia.com",
        "time": "Mon Apr 09 18:21:13 2012 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Tue Apr 10 18:15:48 2012 -0700"
      },
      "message": "window: add API for native_window_set_buffers_user_dimensions\n\nAdd token and wrapper function for a new private function\nnative_window_set_buffers_user_dimensions which overrides the native window\nsize as the default buffer size.  This is intended for use primarily by\nANativeWindow_SetBuffersGeometry so that application-set buffer dimensions may\nco-exist with pre-rotation in e.g. the GLES driver which calls\nnative_window_set_buffers_dimension.\n\nChange-Id: I6c0fc334c070290cc15b04daae1484d0a28cd8ad\n"
    },
    {
      "commit": "720d598280e5ebd3fb7c845a2a11520bb646d645",
      "tree": "9d9ebf917f092ce7176f3c014df3a2897530cd0a",
      "parents": [
        "cfa9f650266621fee963fe18084a39602aa8fcc6",
        "db49739f390992a3d68303765ac36f14ed09b68a"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Tue Apr 10 18:01:38 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 10 18:01:38 2012 -0700"
      },
      "message": "Merge \"Add tracing initialization to init.rc.\""
    },
    {
      "commit": "db49739f390992a3d68303765ac36f14ed09b68a",
      "tree": "c96a64f85e4f1c3e10ecadcae8254c184671692f",
      "parents": [
        "98c6a9902599244585a8ed75c7d35634db8cad9e"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Apr 09 16:01:30 2012 -0700"
      },
      "committer": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Tue Apr 10 15:52:39 2012 -0700"
      },
      "message": "Add tracing initialization to init.rc.\n\nThis change adds init.rc steps to allow kernel tracing to support inserting\nmessages from any userland process.\n\nChange-Id: I01970728d7132a25408fed09a213a015ac05ccaf\n"
    },
    {
      "commit": "cfa9f650266621fee963fe18084a39602aa8fcc6",
      "tree": "afdb84f9b1ae143e958faf451feb546e8a9dd6a2",
      "parents": [
        "03e0cb3a38ec6a2bf65c19466017ce35b13d8cb2"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Apr 09 17:09:38 2012 -0700"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Apr 09 19:09:39 2012 -0700"
      },
      "message": "Migrate emulated SD card to /storage/sdcard.\n\nBug: 6131916\nChange-Id: Iab4d2a36b1dd979f7a9a0583d51dca3c5e38e681\n"
    },
    {
      "commit": "03e0cb3a38ec6a2bf65c19466017ce35b13d8cb2",
      "tree": "bee7f8d7d42b11fb32b3759fb3da3878288d1b60",
      "parents": [
        "82fd659667e0919bf804a6a1cb4c9b1b10a76e0f",
        "79f90bdc7de561aa31888948c0661568ccc33da1"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Apr 09 08:35:34 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 09 08:35:34 2012 -0700"
      },
      "message": "Merge \"audio: added definitions for usb audio devices\""
    },
    {
      "commit": "82fd659667e0919bf804a6a1cb4c9b1b10a76e0f",
      "tree": "7e2f97618ce97a479a119a84393fa99a8265cb0f",
      "parents": [
        "a64adba539c290624c27a8506ee6c0ba39f44ffc"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Sun Apr 08 11:25:04 2012 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Sun Apr 08 11:27:06 2012 -0700"
      },
      "message": "Tweak makefile to let SELinux build\n\nfastboot now needs SELinux support when not on Windows.\n\nChange-Id: Ib32404ef5c9a1a183d7ae319cc94eaf7f12620d9\n"
    },
    {
      "commit": "1d91fcf7c0a31d27097b196579a37873ba1c0934",
      "tree": "198e0ee95c9be4951611388f80ec170e30c94db6",
      "parents": [
        "c8583c680a62dcd8f66952a71cd986f477aa1241"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Tue Mar 27 16:59:27 2012 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "rgreenwalt@google.com",
        "time": "Fri Apr 06 15:38:21 2012 -0700"
      },
      "message": "Add MDNS service\n\nAdds both the new service and another socket for netd.\n\nChange-Id: Ie0271a2c48aa55217ae3fcdcc8e121b86b5a589b\n"
    },
    {
      "commit": "79f90bdc7de561aa31888948c0661568ccc33da1",
      "tree": "ff9c2d46d5ab6cd134cb368a868cd295226eb4d0",
      "parents": [
        "a64adba539c290624c27a8506ee6c0ba39f44ffc"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Apr 06 08:57:48 2012 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri Apr 06 14:03:09 2012 -0700"
      },
      "message": "audio: added definitions for usb audio devices\n\nChange-Id: I4a4f5919708a09f87974367961b1d09664ae6c06\n"
    },
    {
      "commit": "a64adba539c290624c27a8506ee6c0ba39f44ffc",
      "tree": "cde8b5a99b0309fd0ec2db35d13ee43e1c2c675a",
      "parents": [
        "98c6a9902599244585a8ed75c7d35634db8cad9e"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Apr 05 15:23:20 2012 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Apr 06 09:05:49 2012 -0700"
      },
      "message": "Add signal names to kill\n\nmksh provides a kill primitive with signal names, but also offer it in\nour toolbox binary. This will allow anyone to use \"kill -HUP \u003cpid\u003e\" or\n\"kill -l\" to look at the name to number signal mapping.\n\nChange-Id: Id683721f4ad3f2b518b4dc54a6073510290cbe04\n"
    },
    {
      "commit": "98c6a9902599244585a8ed75c7d35634db8cad9e",
      "tree": "0b239ae9ba0112f9d905d7746f71aa9c46b787ad",
      "parents": [
        "d0c5aac3cb084a5dee685b7bbbfa1abd9e5afbea",
        "6ebf12fe1bc2de7af4522349973e8bfcc71d6126"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Apr 03 09:32:08 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 03 09:32:08 2012 -0700"
      },
      "message": "Merge \"init: Change umask of forked processes to 077\""
    },
    {
      "commit": "d0c5aac3cb084a5dee685b7bbbfa1abd9e5afbea",
      "tree": "c52d2237a541ee448371aed02cb91fcc30111bb4",
      "parents": [
        "968c234f31aa606a7f3f361ccd8f5b3b4bf3bcea",
        "eb68fa8153d97f5f8b6d9062fcf91fe393e3bff3"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Apr 03 09:32:00 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 03 09:32:00 2012 -0700"
      },
      "message": "Merge \"adb: set umask to 000\""
    },
    {
      "commit": "968c234f31aa606a7f3f361ccd8f5b3b4bf3bcea",
      "tree": "b842c78e08ecbc79891a8e2c5944bc4acfda3953",
      "parents": [
        "1ecb8681c366b1c1e58473d97cd607195a06167f",
        "ec3b164524fda0beb30354627f3e3f9d0c45126a"
      ],
      "author": {
        "name": "Ken Sumrall",
        "email": "ksumrall@android.com",
        "time": "Mon Apr 02 14:48:08 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Apr 02 14:48:08 2012 -0700"
      },
      "message": "Merge \"Make sure FAT32 filesystems contain a minimum of 65527 clusters\""
    },
    {
      "commit": "6ebf12fe1bc2de7af4522349973e8bfcc71d6126",
      "tree": "72ef777aa15fbe3cb0b34dcf77f66026e5ed2efb",
      "parents": [
        "eb68fa8153d97f5f8b6d9062fcf91fe393e3bff3"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Mar 26 09:09:11 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Apr 02 14:11:07 2012 -0700"
      },
      "message": "init: Change umask of forked processes to 077\n\nModify init to set the umask to 077 when forking processes.\nThis helps protect against inadvertant information disclosure\nin init\u0027s child processes.\n\nueventd: Keep umask at 000. uevent needs to be able to\ncreate device nodes with exactly the permissions it\nindicates.\n\nTesting:\n1) Do an \"ls -lR /data /dev\" on the device before and after\nthe umask change and diff the output. Verified by hand\nthat the permission change wouldn\u0027t cause any problems.\n\n2) Verify that package installation works, and the permissions\nare as expected, when installing a program from market and\n\"adb install\".\n\nBug: 3272072\nChange-Id: Ie4f7f06c0ee9da8d9b6fce25d71d8991a9bce406\n"
    },
    {
      "commit": "eb68fa8153d97f5f8b6d9062fcf91fe393e3bff3",
      "tree": "a1389963863c6e910927b702aeaffe18eb43653e",
      "parents": [
        "1ecb8681c366b1c1e58473d97cd607195a06167f"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Apr 02 13:00:35 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Apr 02 14:10:56 2012 -0700"
      },
      "message": "adb: set umask to 000\n\nInit is going to be modified to set the umask to 077.\nThis will impact adb, as \"adb install\" and \"adb sync\"\nassume that files will be world-readable / writable.\n\nKeep adb\u0027s umask at 000 for now.\n\nBug: 3272072\nChange-Id: I75978e8dd7bbdf4dbe7c9a691ef516235f207da2\n"
    },
    {
      "commit": "1ecb8681c366b1c1e58473d97cd607195a06167f",
      "tree": "bc5e49472fedb62930809ebb75283103e3bfdefd",
      "parents": [
        "f91259a8f0d75d721761d588a4b811427565c984"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Mar 30 20:44:45 2012 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Fri Mar 30 20:46:16 2012 -0700"
      },
      "message": "fastboot: add support for SELinux and fs_config_func\n\nThere were some changes to make_ext4fs to add SELinux context. Also, we\nchanged the \"android\" argument to an fs_config_func that allows you to\ncustomize the permissions put into a ext4 filesystem.\n\nChange-Id: If23152c40659122a91771fcbd094f713b38e321e\n"
    },
    {
      "commit": "f91259a8f0d75d721761d588a4b811427565c984",
      "tree": "74cb40800dcb33752fc7d3550f1c10c9acadbe16",
      "parents": [
        "d7f1feb5c8c76838b822d093983cc8a3f57a9b2d"
      ],
      "author": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Fri Mar 30 13:19:11 2012 -0700"
      },
      "committer": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Fri Mar 30 13:19:11 2012 -0700"
      },
      "message": "adb: fix non-linux builds. tcpip:, root:, usb: are not for ADB_HOST\n\nThe handling of adb root:/tpcip:/usb: is normally only for non-ADB_HOST.\nThis avoids getuid() being invoked on windows builds.\n\nChange-Id: I365b81d9f70de99b9347d3eac82e690a8ac5e747\n"
    },
    {
      "commit": "d7f1feb5c8c76838b822d093983cc8a3f57a9b2d",
      "tree": "274d37eb0eb325a8ab044787f05cb9069ee316e4",
      "parents": [
        "b012679f9730908aa8e7fa6909a401fab47aaefb"
      ],
      "author": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Fri Mar 30 11:19:16 2012 -0700"
      },
      "committer": {
        "name": "JP Abgrall",
        "email": "jpa@google.com",
        "time": "Fri Mar 30 11:19:16 2012 -0700"
      },
      "message": "adb: fix exit of \"adb root\" when it is a no-op.\n\n\"adb root\" creates a socket, then starts the service.\nSocket creation should not set the exit_on_close when the service will be\na no-op.\n\nBug: 6259353\nChange-Id: Ie526d2fad64f39a48051ed0ff6fb3405c2802ced\n"
    },
    {
      "commit": "ec3b164524fda0beb30354627f3e3f9d0c45126a",
      "tree": "68f8e24017c6f2c7b8a82535d8677365a22ceb80",
      "parents": [
        "b012679f9730908aa8e7fa6909a401fab47aaefb"
      ],
      "author": {
        "name": "Ken Sumrall",
        "email": "ksumrall@android.com",
        "time": "Wed Dec 14 21:28:27 2011 -0800"
      },
      "committer": {
        "name": "Ken Sumrall",
        "email": "ksumrall@android.com",
        "time": "Thu Mar 29 21:05:46 2012 -0700"
      },
      "message": "Make sure FAT32 filesystems contain a minimum of 65527 clusters\n\nSome versions of windows cannot handle FAT32 filesystems with less\nthan 65527 clusters, so make sure we don\u0027t create such beasts.\n\nChange-Id: Id00fb02c4f8476f7dcc0ef137bd9e4975d740591\n"
    },
    {
      "commit": "b012679f9730908aa8e7fa6909a401fab47aaefb",
      "tree": "d79575e6d3000c706f8de4d677de69420e86a8d4",
      "parents": [
        "0ee4518620f50df88e56d95d3ab5a02eca62aafa",
        "15621e0970e97eb2fc28f82a07620c9124a4455c"
      ],
      "author": {
        "name": "Geremy Condra",
        "email": "gcondra@google.com",
        "time": "Thu Mar 29 17:10:44 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 29 17:10:44 2012 -0700"
      },
      "message": "Merge \"cutils: return the remote uid on netlink recv failure\""
    },
    {
      "commit": "15621e0970e97eb2fc28f82a07620c9124a4455c",
      "tree": "da0394eb66b5c51750f9b44a7d2be7d5030663d3",
      "parents": [
        "15892e10a49b5b5f3d612228cd3e125cf3b43025"
      ],
      "author": {
        "name": "Geremy Condra",
        "email": "gcondra@google.com",
        "time": "Thu Mar 29 14:46:07 2012 -0700"
      },
      "committer": {
        "name": "Geremy Condra",
        "email": "gcondra@google.com",
        "time": "Thu Mar 29 17:07:24 2012 -0700"
      },
      "message": "cutils: return the remote uid on netlink recv failure\n\nThis change adds a layer of indirection to uevent\u0027s\nuevent_kernel_multicast_recv, allowing dependent code to\nget the remote endpoint if desired.\n\nChange-Id: If2f00708a1dd6196c415b1ebc2a7eeb72399a90e\n"
    },
    {
      "commit": "0ee4518620f50df88e56d95d3ab5a02eca62aafa",
      "tree": "c8e045c0bacbc09b8b6c625187582cace30f20af",
      "parents": [
        "c8583c680a62dcd8f66952a71cd986f477aa1241",
        "d98533a01213ef8d4ef9a644074ada200cdfc926"
      ],
      "author": {
        "name": "Geremy Condra",
        "email": "gcondra@google.com",
        "time": "Thu Mar 29 16:56:24 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 29 16:56:24 2012 -0700"
      },
      "message": "Merge \"Added netlink failure logging to NetlinkListener.cpp\""
    },
    {
      "commit": "d98533a01213ef8d4ef9a644074ada200cdfc926",
      "tree": "e3dd3f175793ae35d4dfb6c98c56b040373e9f87",
      "parents": [
        "15892e10a49b5b5f3d612228cd3e125cf3b43025"
      ],
      "author": {
        "name": "Geremy Condra",
        "email": "gcondra@google.com",
        "time": "Thu Mar 29 15:44:06 2012 -0700"
      },
      "committer": {
        "name": "Geremy Condra",
        "email": "gcondra@google.com",
        "time": "Thu Mar 29 16:38:58 2012 -0700"
      },
      "message": "Added netlink failure logging to NetlinkListener.cpp\n\nThis depends on If2f00708a1dd6196c415b1ebc2a7eeb72399a90e\n\nChange-Id: If6c63e46f906b94f4778eb5e78123d8efe1710d4\n"
    },
    {
      "commit": "c8583c680a62dcd8f66952a71cd986f477aa1241",
      "tree": "139331a2fb5324e583472a20c33d2b2afefea2c8",
      "parents": [
        "61745ed7fb1e922afb8b7a105b3e8556c5f83e02",
        "3439cc6145d24d2495490dab3e48d91cf36bccc3"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Mar 29 10:40:00 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 29 10:40:00 2012 -0700"
      },
      "message": "Merge \"change files in /dev/log/ to 666\""
    },
    {
      "commit": "3439cc6145d24d2495490dab3e48d91cf36bccc3",
      "tree": "5096ba757f433921852a581a9815e3cac0432654",
      "parents": [
        "b6428c07f2bfb213f85883a17d8814b68d335a5d"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Mar 29 08:58:47 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Mar 29 09:32:33 2012 -0700"
      },
      "message": "change files in /dev/log/ to 666\n\nWith newer Android kernels, anyone can read from the files in\n/dev/log. If you\u0027re in the logs group (have the READ_LOGS) permission,\nyou\u0027ll see all entries. If you\u0027re not in that group, you\u0027ll see\nlog messages associated with your UID.\n\nRelax the permissions on the files in /dev/log/ to allow an application\nto read it\u0027s own log messages.\n\nBug: 5748848\nChange-Id: Ie740284e96a69567dc73d738117316f938491777\n"
    },
    {
      "commit": "61745ed7fb1e922afb8b7a105b3e8556c5f83e02",
      "tree": "6727c96874dbfe78ed267ec9e8052b3382001022",
      "parents": [
        "9a7611fefae6710ad9903ee61965434d6fb754cc",
        "58903013084b649fa81e9fd3310517d0e35e7c5d"
      ],
      "author": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Wed Mar 28 20:23:22 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 28 20:23:22 2012 -0700"
      },
      "message": "Merge \"init: Fix chown and chmod for write-only files\""
    },
    {
      "commit": "58903013084b649fa81e9fd3310517d0e35e7c5d",
      "tree": "edd9fbd24f7cce435202ae1775f1c95c8939c229",
      "parents": [
        "29dc792bcdd466efcdf068404760bcbbbd01017b"
      ],
      "author": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Wed Mar 28 18:15:56 2012 -0700"
      },
      "committer": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Wed Mar 28 18:24:08 2012 -0700"
      },
      "message": "init: Fix chown and chmod for write-only files\n\nChange-Id: I570b631ced11ab104aafe7ebfe71bae4e380d8af\n"
    },
    {
      "commit": "9a7611fefae6710ad9903ee61965434d6fb754cc",
      "tree": "cde8d042cd8a11dbe33abd921b2ab4e196d620e6",
      "parents": [
        "29dc792bcdd466efcdf068404760bcbbbd01017b",
        "9a77f55aada6c5a8da3d330d858bd04c1c0b6c51"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Mar 28 15:45:16 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 28 15:45:16 2012 -0700"
      },
      "message": "Merge \"Revert \"add IP checking for adb over TCP\"\""
    },
    {
      "commit": "9a77f55aada6c5a8da3d330d858bd04c1c0b6c51",
      "tree": "160c401d87400f53674eb4dbe807aca216ba6127",
      "parents": [
        "dca76e6187c4128a17c8df5bcaca0db6993d91a1"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Mar 28 15:45:08 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 28 15:45:08 2012 -0700"
      },
      "message": "Revert \"add IP checking for adb over TCP\"\n\nThis reverts commit dca76e6187c4128a17c8df5bcaca0db6993d91a1"
    },
    {
      "commit": "29dc792bcdd466efcdf068404760bcbbbd01017b",
      "tree": "e724170ed5e8ad3b581ed4406dd781a0eb1eee3a",
      "parents": [
        "15892e10a49b5b5f3d612228cd3e125cf3b43025",
        "dca76e6187c4128a17c8df5bcaca0db6993d91a1"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Mar 28 15:15:29 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 28 15:15:29 2012 -0700"
      },
      "message": "Merge \"add IP checking for adb over TCP\""
    },
    {
      "commit": "15892e10a49b5b5f3d612228cd3e125cf3b43025",
      "tree": "cde8d042cd8a11dbe33abd921b2ab4e196d620e6",
      "parents": [
        "b6428c07f2bfb213f85883a17d8814b68d335a5d",
        "71513567dc0249af1b304e458ceac391ffcbeff5"
      ],
      "author": {
        "name": "Marius Renn",
        "email": "renn@google.com",
        "time": "Tue Mar 27 16:29:53 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 27 16:29:53 2012 -0700"
      },
      "message": "Merge \"Multi-Project Commit: Move of filterfw out of system/media (6 of 7)\""
    },
    {
      "commit": "b6428c07f2bfb213f85883a17d8814b68d335a5d",
      "tree": "bfbc00af040cf461a28c4a8dcf3b39f06868c578",
      "parents": [
        "60733e9280ebd693293d6e7683af0bd94f8909aa",
        "f97b887848cc64e7d88d27f198b7721c9f2f8ec8"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@google.com",
        "time": "Tue Mar 27 14:08:26 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 27 14:08:26 2012 -0700"
      },
      "message": "Merge \"Add handling for DEVNAME for usb devices\""
    },
    {
      "commit": "71513567dc0249af1b304e458ceac391ffcbeff5",
      "tree": "2a6ecd0207864d3ba8171bfd27b9d0e47a300098",
      "parents": [
        "31af5f7bebf656018482ac1a75a3e1780c0c42d1"
      ],
      "author": {
        "name": "Marius Renn",
        "email": "renn@google.com",
        "time": "Tue Mar 27 10:56:06 2012 -0700"
      },
      "committer": {
        "name": "Marius Renn",
        "email": "renn@google.com",
        "time": "Tue Mar 27 10:56:06 2012 -0700"
      },
      "message": "Multi-Project Commit: Move of filterfw out of system/media (6 of 7)\n\nThis is part of the multi-project commit to move the filter-framework\nfrom system/media/mca to frameworks/base/media/mca.\n\nNote that the filter-framework will soon be replaced with a refactored\nversion currently under API review (also to go under frameworks/base).\nThis move is done now to unblock the PDK efforts.\n\nChange-Id: I87d034a30bb4b98a85a028cb728e37fb97256039\n"
    },
    {
      "commit": "60733e9280ebd693293d6e7683af0bd94f8909aa",
      "tree": "47dfabcee889ecb937304b53f119d1f47ac1ab0b",
      "parents": [
        "31af5f7bebf656018482ac1a75a3e1780c0c42d1"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Mar 26 16:14:02 2012 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Mar 26 16:14:07 2012 -0700"
      },
      "message": "Make sure \"adb install\" work is cleaned after error\n\nIf an error occurs during the verification of an APK, it could be left\nin the temporary installation directory.\n\nChange-Id: I4afa5535fc0b978532b31d5b8fb63776963c39db\n"
    },
    {
      "commit": "31af5f7bebf656018482ac1a75a3e1780c0c42d1",
      "tree": "4b5bdac6ef06284ecbd1afb2feaf56c4efef1a15",
      "parents": [
        "31fb85865431f98008608b62964cb1c975ca4b71"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Mar 26 14:08:34 2012 -0700"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Mar 26 14:08:34 2012 -0700"
      },
      "message": "Add AUDIO_POLICY_OUTPUT_FLAG_FAST\n\nChange-Id: I513b84de9c08957e22bff1fc2f25e4f4098111ef\n"
    },
    {
      "commit": "31fb85865431f98008608b62964cb1c975ca4b71",
      "tree": "be63cde0ada87f37a67596453ae173809cdd1921",
      "parents": [
        "4d668e013b232e080498868b190f2078b244e892",
        "3c9eed88c529374c8d80e1daa62ad9bf25c9670e"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Mar 26 13:06:12 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 26 13:06:12 2012 -0700"
      },
      "message": "Merge \"drmserver: add group drm\""
    },
    {
      "commit": "4d668e013b232e080498868b190f2078b244e892",
      "tree": "ce8f57d8e2116ce7f534dba302daf0e3cd582f23",
      "parents": [
        "62e5cbaebc29d83148dd1ce30a620a37dcdbe7ed",
        "f366b3698b409405e1ee88476d1186f29fe14b06"
      ],
      "author": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Mon Mar 26 12:56:56 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 26 12:56:56 2012 -0700"
      },
      "message": "Merge \"adb: Don\u0027t synchronize with transport using sleep\""
    },
    {
      "commit": "62e5cbaebc29d83148dd1ce30a620a37dcdbe7ed",
      "tree": "51570508dbb1eceabc1c9e4f0d1d0416f6e987e3",
      "parents": [
        "8ee361cb01e20b3fb0980f428cf83d0e1181a4bd",
        "7941cf87f624e7747b5bb868a27904c7a3be0ca4"
      ],
      "author": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Mon Mar 26 12:56:49 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 26 12:56:49 2012 -0700"
      },
      "message": "Merge \"Revert \"Reimplement the \"adb root\" command to more closely match its previous behavior\"\""
    },
    {
      "commit": "3c9eed88c529374c8d80e1daa62ad9bf25c9670e",
      "tree": "98198c2245cb8f56d8b97e16649ffb8d69f57e2f",
      "parents": [
        "8ee361cb01e20b3fb0980f428cf83d0e1181a4bd"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Mar 26 11:13:17 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Mon Mar 26 11:30:03 2012 -0700"
      },
      "message": "drmserver: add group drm\n\nMake the drm server run as UID\u003ddrm, GID\u003ddrm. This ensures that\nany files created by the drmserver app do not have GID\u003dsystem.\n\nBug: 5834297\nChange-Id: I3409ad350e9cc82bb0982cdbe470ec1f10b1ca67\n"
    },
    {
      "commit": "f97b887848cc64e7d88d27f198b7721c9f2f8ec8",
      "tree": "6d3ee84a255223b752cd6c200f03dd10697797be",
      "parents": [
        "e148601ee2a5cd83a6db80c3c4e24f3dc5a9ab31"
      ],
      "author": {
        "name": "Wei Zhong",
        "email": "wzhong@google.com",
        "time": "Fri Mar 23 14:15:34 2012 -0700"
      },
      "committer": {
        "name": "Wei Zhong",
        "email": "wzhong@google.com",
        "time": "Fri Mar 23 14:16:37 2012 -0700"
      },
      "message": "Add handling for DEVNAME for usb devices\n\nWhen creating device node, user-space handler should honor device\nnode provided by kernel if present.\n\nBug: 6105248\n\nChange-Id: I9ab3810563f29f065c239e15149882db28f08893\nSigned-off-by: Wei Zhong \u003cwzhong@google.com\u003e\n"
    },
    {
      "commit": "8ee361cb01e20b3fb0980f428cf83d0e1181a4bd",
      "tree": "11812a0e18034b7de21dbc0a6053801d90ab4a25",
      "parents": [
        "6756a0c9fe930cc5ccebf5313f605df0d127a2db"
      ],
      "author": {
        "name": "Andrew Hsieh",
        "email": "andrewhsieh@google.com",
        "time": "Fri Mar 23 15:28:56 2012 +0800"
      },
      "committer": {
        "name": "Andrew Hsieh",
        "email": "andrewhsieh@google.com",
        "time": "Fri Mar 23 15:28:56 2012 +0800"
      },
      "message": "Remove duplicated VENDOR_ID_INTEL\n\nVENDOR_ID_INTEL defined and appear in builtInVendorIds[] twice.\nRemove the 2nd one.\n\nChange-Id: I62f7bba392012aafb8ea9730959362db4bc6c669\n"
    },
    {
      "commit": "6756a0c9fe930cc5ccebf5313f605df0d127a2db",
      "tree": "0d1bedeea33c147ab99a3297a88afff62e2cc037",
      "parents": [
        "e148601ee2a5cd83a6db80c3c4e24f3dc5a9ab31"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Mar 22 14:28:16 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Mar 22 15:51:24 2012 -0700"
      },
      "message": "logger: Add the update kernel struct to userspace\n\nAndroid\u0027s kernel logger can optionally return UID information\nin addition to the previously returned information. This\ninformation is available by telling the kernel to use the\nupdated structure via the newly introduced LOGGER_SET_VERSION\nioctl.\n\nint fd \u003d open(\"/dev/log/main\", O_RDONLY);\nint version \u003d 2;\nioctl(fd, LOGGER_SET_VERSION, \u0026version);\n\nChange-Id: I6bfe7bfb9df45a56124aa8d0d19e7d7a18e06862\n"
    },
    {
      "commit": "e148601ee2a5cd83a6db80c3c4e24f3dc5a9ab31",
      "tree": "ee4aef7edc3e95359edca130c29a0573a91fa68e",
      "parents": [
        "10331ed16cb2c28092e381cab70df9824a99515f",
        "bd52ff3e9362af7747c9442872d23a7d30dc057d"
      ],
      "author": {
        "name": "Andrew Hsieh",
        "email": "andrewhsieh@google.com",
        "time": "Thu Mar 22 10:28:17 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Mar 22 10:28:17 2012 -0700"
      },
      "message": "am bd52ff3e: am 4b91e332: am ef3eb5f7: Added rules to build 64-bit libraries: lib64cutils.a and lib64log.a\n\n* commit \u0027bd52ff3e9362af7747c9442872d23a7d30dc057d\u0027:\n  Added rules to build 64-bit libraries: lib64cutils.a and lib64log.a\n"
    },
    {
      "commit": "bd52ff3e9362af7747c9442872d23a7d30dc057d",
      "tree": "691dcf7b5935253c298cb7fd5b8543b7b0e24ad9",
      "parents": [
        "176805101c10d44f21a65402c9926922b20e1de0",
        "4b91e3328c79383bcebed982ce536046ea316456"
      ],
      "author": {
        "name": "Andrew Hsieh",
        "email": "andrewhsieh@google.com",
        "time": "Thu Mar 22 10:24:51 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Mar 22 10:24:51 2012 -0700"
      },
      "message": "am 4b91e332: am ef3eb5f7: Added rules to build 64-bit libraries: lib64cutils.a and lib64log.a\n\n* commit \u00274b91e3328c79383bcebed982ce536046ea316456\u0027:\n  Added rules to build 64-bit libraries: lib64cutils.a and lib64log.a\n"
    },
    {
      "commit": "4b91e3328c79383bcebed982ce536046ea316456",
      "tree": "f0ec121bb5e47e712d2859975415748818cdddee",
      "parents": [
        "3ebb3dad6e8da55b2057d064c2c0275f478b4f61",
        "ef3eb5f74022050666168922d96c79531401a16d"
      ],
      "author": {
        "name": "Andrew Hsieh",
        "email": "andrewhsieh@google.com",
        "time": "Thu Mar 22 10:18:56 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Mar 22 10:18:56 2012 -0700"
      },
      "message": "am ef3eb5f7: Added rules to build 64-bit libraries: lib64cutils.a and lib64log.a\n\n* commit \u0027ef3eb5f74022050666168922d96c79531401a16d\u0027:\n  Added rules to build 64-bit libraries: lib64cutils.a and lib64log.a\n"
    },
    {
      "commit": "10331ed16cb2c28092e381cab70df9824a99515f",
      "tree": "ee4aef7edc3e95359edca130c29a0573a91fa68e",
      "parents": [
        "3076bfd036cf05c8359f6968525ebbadda0316f1"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Mar 22 10:18:20 2012 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Mar 22 10:18:20 2012 -0700"
      },
      "message": "Revert \"logger: Add the update kernel struct to userspace\"\n\nThis reverts commit 56c3065b7968e2cf00ffc4914d5f2fe86b98ae15.\n\nBreaks win_sdk build.\n"
    },
    {
      "commit": "3076bfd036cf05c8359f6968525ebbadda0316f1",
      "tree": "3ff4ee170d5ba96afbaf85c8b392aeb311804aef",
      "parents": [
        "2affe824ba249b532c5b39941bcdc15800900f6c",
        "56c3065b7968e2cf00ffc4914d5f2fe86b98ae15"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Mar 22 09:25:18 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 22 09:25:18 2012 -0700"
      },
      "message": "Merge \"logger: Add the update kernel struct to userspace\""
    },
    {
      "commit": "ef3eb5f74022050666168922d96c79531401a16d",
      "tree": "b4b48591508b4760a7c319a2203e6622771bbb4e",
      "parents": [
        "9cec99ba9c64d26e2fa34f310cba13ff119b4c55"
      ],
      "author": {
        "name": "Andrew Hsieh",
        "email": "andrewhsieh@google.com",
        "time": "Thu Mar 01 23:58:50 2012 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Thu Mar 22 08:56:06 2012 -0700"
      },
      "message": "Added rules to build 64-bit libraries: lib64cutils.a and lib64log.a\n\nBoth libraries are needed to build four shared libraries in 64-bit\nfor 64-bit emulator with \"-gpu on\"\n  lib64OpenglRender.so\n  lib64EGL_translator.so\n  lib64GLES_CM_translator.so\n  lib64GLES_V2_translator.so\n\nChange-Id: If57f72d4661a74f1d5e537568881f39132e0b43d\n"
    },
    {
      "commit": "2affe824ba249b532c5b39941bcdc15800900f6c",
      "tree": "ee4aef7edc3e95359edca130c29a0573a91fa68e",
      "parents": [
        "a4d9828aea9dc61129e0fac90ba88101c2de8e58",
        "ad5b9c7205ac2a9ac500c6d455bf46f8ab3aafe0"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Mar 21 17:54:16 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 21 17:54:16 2012 -0700"
      },
      "message": "Merge \"Put keystore into the drmrpc group\""
    },
    {
      "commit": "a4d9828aea9dc61129e0fac90ba88101c2de8e58",
      "tree": "7c6697c630e70ac3c6b4c5e887c266bb6923b4ab",
      "parents": [
        "2f78d81a1f95cd41d4049ec62c4783a8cecb1e68",
        "9865be95cf60848d91364b42c2cadd90e63fec66"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Mar 21 17:11:28 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 21 17:11:28 2012 -0700"
      },
      "message": "Merge \"Merge commit \u002719155b5\u0027\""
    },
    {
      "commit": "2f78d81a1f95cd41d4049ec62c4783a8cecb1e68",
      "tree": "e8102b0217fa6af822ef548f53e8d90adc871d7e",
      "parents": [
        "2abac4c303658c20f827ee758d4a9e69c1f29617",
        "ddd48d1c001c29b51fc59cd69f7badee66130eb8"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Mar 21 17:11:18 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 21 17:11:18 2012 -0700"
      },
      "message": "Merge \"Merge commit \u00275383476727659544875b90d49a5371886a31c1fe\u0027\""
    },
    {
      "commit": "2abac4c303658c20f827ee758d4a9e69c1f29617",
      "tree": "e8102b0217fa6af822ef548f53e8d90adc871d7e",
      "parents": [
        "4aade437d0a084c9d166e760ff9016460aa92c61",
        "a9bb7261b4db2372ee0f339d250079c967262758"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Mar 21 17:11:08 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 21 17:11:08 2012 -0700"
      },
      "message": "Merge \"Merge commit \u00279dd2eef\u0027\""
    },
    {
      "commit": "4aade437d0a084c9d166e760ff9016460aa92c61",
      "tree": "d3c07d700c50bf10246826680dc0cea57f454f37",
      "parents": [
        "054de5cc5b5d0339d761585303cd319b234ec429",
        "0e5667c18d76594b9d3aaa62be51610d5c962715"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Mar 21 17:10:57 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 21 17:10:57 2012 -0700"
      },
      "message": "Merge \"Merge commit \u0027c4fd60b\u0027\""
    },
    {
      "commit": "9865be95cf60848d91364b42c2cadd90e63fec66",
      "tree": "d8ede1269888afbcc9602be889af729edd0dacff",
      "parents": [
        "ddd48d1c001c29b51fc59cd69f7badee66130eb8",
        "19155b5cd3ee8674a13f7bf111e06b05f0114433"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Mar 21 16:30:49 2012 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Mar 21 16:30:54 2012 -0700"
      },
      "message": "Merge commit \u002719155b5\u0027\n\nDo not start sshd by default\n\nChange-Id: I22e6dbb6834321709e9b7c5ae49846d7f9f7c67a\n"
    },
    {
      "commit": "ddd48d1c001c29b51fc59cd69f7badee66130eb8",
      "tree": "7d37a606c75a2dba4cd21a2535c8aa9693896a9f",
      "parents": [
        "a9bb7261b4db2372ee0f339d250079c967262758",
        "5383476727659544875b90d49a5371886a31c1fe"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Mar 21 16:30:29 2012 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Mar 21 16:30:33 2012 -0700"
      },
      "message": "Merge commit \u00275383476727659544875b90d49a5371886a31c1fe\u0027\n\nempty -s ours merge\n\nChange-Id: Ie70e28bcea06dffeebee3887145a30e89626cb62\n"
    },
    {
      "commit": "a9bb7261b4db2372ee0f339d250079c967262758",
      "tree": "7d37a606c75a2dba4cd21a2535c8aa9693896a9f",
      "parents": [
        "0e5667c18d76594b9d3aaa62be51610d5c962715",
        "9dd2eef07bbee6ff5b1d1a9ccda6e3499391ecb6"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Mar 21 16:27:57 2012 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Mar 21 16:28:04 2012 -0700"
      },
      "message": "Merge commit \u00279dd2eef\u0027\n\nsshd to init.rc\n\nChange-Id: I8eedc3b47f1260502034067d9006cac827cb1089\n"
    },
    {
      "commit": "0e5667c18d76594b9d3aaa62be51610d5c962715",
      "tree": "781290dc2a67566d08b26f57555fea9e80adac2d",
      "parents": [
        "d1fe0d83fafee1854363a6e204379baccfe03531",
        "c4fd60b512952f4d872352fda43b0877488d279c"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Mar 21 16:27:35 2012 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Mar 21 16:27:40 2012 -0700"
      },
      "message": "Merge commit \u0027c4fd60b\u0027\n\nempty -s ours merge\n\nChange-Id: I148e9138d71a962e463c3252f888c2eccd2bdc4c\n"
    },
    {
      "commit": "054de5cc5b5d0339d761585303cd319b234ec429",
      "tree": "d3c07d700c50bf10246826680dc0cea57f454f37",
      "parents": [
        "d1fe0d83fafee1854363a6e204379baccfe03531",
        "9ed1fe77322384552d7d9905ffc54c9681d3b73f"
      ],
      "author": {
        "name": "Geremy Condra",
        "email": "gcondra@google.com",
        "time": "Wed Mar 21 16:03:13 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 21 16:03:13 2012 -0700"
      },
      "message": "Merge \"init: make chmod/mkdir/chown not follow symlinks\""
    },
    {
      "commit": "9ed1fe77322384552d7d9905ffc54c9681d3b73f",
      "tree": "2474851ace5c44fbc0892fb2c2873390ddcf0ecd",
      "parents": [
        "e8886740744d761d399c426321de3a7bba1c20ae"
      ],
      "author": {
        "name": "Geremy Condra",
        "email": "gcondra@google.com",
        "time": "Tue Mar 20 12:49:55 2012 -0700"
      },
      "committer": {
        "name": "Geremy Condra",
        "email": "gcondra@google.com",
        "time": "Wed Mar 21 15:13:08 2012 -0700"
      },
      "message": "init: make chmod/mkdir/chown not follow symlinks\n\nThis change brings init\u0027s do_chmod, mkdir, and do_chown into line\nwith open\u0027s O_NOFOLLOW semantics, causing them to fail when the\nlast element of their target path is a symlink.\n\nChange-Id: If00e1a25cfe17ef6f738af4bf0541abd0c1b084b\n"
    },
    {
      "commit": "19155b5cd3ee8674a13f7bf111e06b05f0114433",
      "tree": "56ab58b9e11ab4a3a0a6a248897a3a10dd600312",
      "parents": [
        "5383476727659544875b90d49a5371886a31c1fe"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Mar 21 11:58:05 2012 -0700"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Mar 21 11:58:05 2012 -0700"
      },
      "message": "init.rc: Do not start sshd by default\n\nChange-Id: Ieacd4e8fbfcd91ed2342b7a104a9b1f4114fc6d5\nSigned-off-by: Mike Lockwood \u003clockwood@google.com\u003e\n"
    },
    {
      "commit": "d1fe0d83fafee1854363a6e204379baccfe03531",
      "tree": "781290dc2a67566d08b26f57555fea9e80adac2d",
      "parents": [
        "eac5a25f5ff2e5c65181f9c859076e16dda7275d",
        "176805101c10d44f21a65402c9926922b20e1de0"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Mar 21 09:09:00 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Mar 21 09:09:00 2012 -0700"
      },
      "message": "am 17680510: am 7967e4c0: Reconcile with ics-mr1-release\n\n* commit \u0027176805101c10d44f21a65402c9926922b20e1de0\u0027:\n"
    },
    {
      "commit": "176805101c10d44f21a65402c9926922b20e1de0",
      "tree": "8cb6a80766b6214ba47bcb89c74869d7b2918781",
      "parents": [
        "049a78828418c9581b2926a41633dd1b441b2ee8",
        "7967e4c021b8790eaac08ab3fb035431ec118cae"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Mar 21 09:06:31 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Mar 21 09:06:31 2012 -0700"
      },
      "message": "am 7967e4c0: Reconcile with ics-mr1-release\n\n* commit \u00277967e4c021b8790eaac08ab3fb035431ec118cae\u0027:\n"
    },
    {
      "commit": "7967e4c021b8790eaac08ab3fb035431ec118cae",
      "tree": "82480ade38abff14a66a6a174ee9ccc10c669dc2",
      "parents": [
        "e2e8bd93becae10f1cc40bb28a581cb4a36d0154",
        "c2db4ffb874783220abf967ca4ccd0e6cf1ba57f"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Mar 21 09:01:27 2012 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Mar 21 09:01:27 2012 -0700"
      },
      "message": "Reconcile with ics-mr1-release\n\nChange-Id: I543778af0009368aa57aba5e0861d981b4351e61\n"
    },
    {
      "commit": "eac5a25f5ff2e5c65181f9c859076e16dda7275d",
      "tree": "781290dc2a67566d08b26f57555fea9e80adac2d",
      "parents": [
        "1670f831a56f7232f337407c746e97c5929ee417",
        "049a78828418c9581b2926a41633dd1b441b2ee8"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Mar 21 08:29:29 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Mar 21 08:29:29 2012 -0700"
      },
      "message": "am 049a7882: am 3ebb3dad: Reconcile with ics-mr1-release\n\n* commit \u0027049a78828418c9581b2926a41633dd1b441b2ee8\u0027:\n"
    },
    {
      "commit": "049a78828418c9581b2926a41633dd1b441b2ee8",
      "tree": "8cb6a80766b6214ba47bcb89c74869d7b2918781",
      "parents": [
        "0fc8abe1f661e341ea3c7112d5311f72482e2c16",
        "3ebb3dad6e8da55b2057d064c2c0275f478b4f61"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Mar 21 08:26:53 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Mar 21 08:26:53 2012 -0700"
      },
      "message": "am 3ebb3dad: Reconcile with ics-mr1-release\n\n* commit \u00273ebb3dad6e8da55b2057d064c2c0275f478b4f61\u0027:\n"
    },
    {
      "commit": "3ebb3dad6e8da55b2057d064c2c0275f478b4f61",
      "tree": "ed8bc48c55b5576ee9f8fe32797a709ff8b3fb66",
      "parents": [
        "c8d1a0e18e008009fe75aa2cc7d3deace0479fce",
        "c2db4ffb874783220abf967ca4ccd0e6cf1ba57f"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Mar 21 08:23:48 2012 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Mar 21 08:23:48 2012 -0700"
      },
      "message": "Reconcile with ics-mr1-release\n\nChange-Id: I5e32c5ab33c5beeab7576a1984dc0add942c590b\n"
    },
    {
      "commit": "1670f831a56f7232f337407c746e97c5929ee417",
      "tree": "781290dc2a67566d08b26f57555fea9e80adac2d",
      "parents": [
        "3236b7a4d31d5e1f98d4d0348ba7fc7440afa520"
      ],
      "author": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Tue Mar 20 20:33:09 2012 -0700"
      },
      "committer": {
        "name": "Arve Hjønnevåg",
        "email": "arve@android.com",
        "time": "Tue Mar 20 20:34:24 2012 -0700"
      },
      "message": "init.rc: Fix permissions on /sys/power/state and /sys/power/wakeup_count\n\nChange-Id: I06a1a2affebdf64f008eaa61a0851f1e832059c5\n"
    },
    {
      "commit": "56c3065b7968e2cf00ffc4914d5f2fe86b98ae15",
      "tree": "ec62041114e276c8aa01a72ebe9a9389773bd7b4",
      "parents": [
        "e8886740744d761d399c426321de3a7bba1c20ae"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Feb 21 15:48:53 2012 -0800"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Mar 20 16:21:22 2012 -0700"
      },
      "message": "logger: Add the update kernel struct to userspace\n\nAndroid\u0027s kernel logger can optionally return UID information\nin addition to the previously returned information. This\ninformation is available by telling the kernel to use the\nupdated structure via the newly introduced LOGGER_SET_VERSION\nioctl.\n\nint fd \u003d open(\"/dev/log/main\", O_RDONLY);\nint version \u003d 2;\nioctl(fd, LOGGER_SET_VERSION, \u0026version);\n\nChange-Id: I3914be41de55342c2918f8978fcd4d2b96a09288\n"
    },
    {
      "commit": "3236b7a4d31d5e1f98d4d0348ba7fc7440afa520",
      "tree": "ca6c1ea14c849a556e838bb5630f911e50bc7f61",
      "parents": [
        "77a62ceac5f1d3942b85b21d86f6b4d25d686190",
        "9f1af8cde988e8a276753db6019e8c7d94f0e2b4"
      ],
      "author": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Tue Mar 20 16:11:42 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 20 16:11:42 2012 -0700"
      },
      "message": "Merge \"adb: Remove unused flags\""
    },
    {
      "commit": "77a62ceac5f1d3942b85b21d86f6b4d25d686190",
      "tree": "f08b80756bd149aad0fd60b91aeab97ee040a905",
      "parents": [
        "e8886740744d761d399c426321de3a7bba1c20ae"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Mar 20 13:46:24 2012 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Mar 20 13:46:30 2012 -0700"
      },
      "message": "MinGW does not have sys/cdefs.h\n\nChange-Id: I5cafafce8488d355ed3865a9fd1173fbebbc5b03\n"
    },
    {
      "commit": "e8886740744d761d399c426321de3a7bba1c20ae",
      "tree": "52125a19d13be0b791c8f220962c53b0dca03998",
      "parents": [
        "418fbe66e0f7d189743ad95c8ba902db1ba6f6da",
        "50fb5a69333e4eb0b5fc30fdeae54bc73243061d"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Mar 19 23:56:00 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 19 23:56:00 2012 -0700"
      },
      "message": "Merge \"init: manually set controlling tty for console services\""
    },
    {
      "commit": "418fbe66e0f7d189743ad95c8ba902db1ba6f6da",
      "tree": "4b82ce20d84115f935900930bd7f99ef1dee41a5",
      "parents": [
        "5e0621f78a32d48e9a52d78b3f1c6ce2f577a2ea",
        "0009b73ed88f5c1759c3b2d9df73492d53f79039"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Mar 19 17:42:15 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 19 17:42:15 2012 -0700"
      },
      "message": "Merge \"Add cdefs decoration to list.h\""
    },
    {
      "commit": "5e0621f78a32d48e9a52d78b3f1c6ce2f577a2ea",
      "tree": "98f7bfe447b8b66b9387becf3171d7e32b521b11",
      "parents": [
        "4a6b384f607feed3755cfcbcdfded55fc2ccce82"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Mar 19 15:39:08 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Mar 19 15:39:08 2012 -0700"
      },
      "message": "qsort_t was only defined in glibc 2.8\n\nChange-Id: I646bac8ed4d94bf75a33b886e700c91c3837bc32\n"
    },
    {
      "commit": "4a6b384f607feed3755cfcbcdfded55fc2ccce82",
      "tree": "c7324a4820f80d979181610bb63c20c45523eb79",
      "parents": [
        "14d0c6c7c0e9abd39e4b4d0a384d12de5ecbdbfc"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Mar 19 14:07:26 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Mar 19 14:07:26 2012 -0700"
      },
      "message": "Provide portable wrapper for qsort_r.\n\nqsort_r() is declared differently on BSD and GNU libc and\nmay be absent on other platforms.\n\nProvide qsort_r_compat() which should work everywhere.\n\nChange-Id: I17a9026573b1ed971ff7d79895e7eb41ba108807\n"
    },
    {
      "commit": "14d0c6c7c0e9abd39e4b4d0a384d12de5ecbdbfc",
      "tree": "cefb3a66d1349372d970fb9ed4238825778820eb",
      "parents": [
        "c4edb9ec907d97175626419ff98302fd5123b943"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Mar 19 14:06:50 2012 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Mar 19 14:06:50 2012 -0700"
      },
      "message": "Add missing includes.\n\nCaused warnings about implicitly defined malloc() and sprintf().\n\nChange-Id: Ia56309adc11caf5801ffd88e374c512b785cfd93\n"
    },
    {
      "commit": "c4edb9ec907d97175626419ff98302fd5123b943",
      "tree": "8b82e6d97b5c31e330cdd1e0c4e326831b973dbb",
      "parents": [
        "b1108c85942f5cff22fbdaa9ed09c7b7d329da81",
        "efd7501d535fb165792013763027cf50a5b37e08"
      ],
      "author": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Mon Mar 19 09:56:14 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 19 09:56:14 2012 -0700"
      },
      "message": "Merge \"cutils: str_parms: when deleting entry, need to also remove key\""
    },
    {
      "commit": "b1108c85942f5cff22fbdaa9ed09c7b7d329da81",
      "tree": "2558e85f40352aa7b5e1cc9ef7f5072ef5167537",
      "parents": [
        "0ad682cddef396c91707a31d4982dc55206dca1b",
        "89f7ba3df8fc359023b494c2e625beed900bc706"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Mar 19 07:31:50 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 19 07:31:50 2012 -0700"
      },
      "message": "Merge \"audio_channel_in/out_mask_from_count\""
    },
    {
      "commit": "50fb5a69333e4eb0b5fc30fdeae54bc73243061d",
      "tree": "3f95e6e10c4b4ed50eef2fcb824d0b608ff499b6",
      "parents": [
        "6ac770fc52595b8230c3286d7707c85b003aeac1"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Sun Mar 18 15:38:19 2012 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Sun Mar 18 15:39:59 2012 -0700"
      },
      "message": "init: manually set controlling tty for console services\n\nNormally, calling open on a tty will set that tty as the process\ngroup controlling tty if none already exists.  However, if the tty\nis /dev/console, the kernel will never automatically set it as the\ncontrolling tty.  Call the TIOCSCTTY manually on the fd, which will\nalways attempt to set it as the controlling tty.\n\nFixes ctrl-c on the console shell when androidboot.console is not\npassed on the kernel command line and the default /dev/console is\nused.\n\nChange-Id: I449cc41b47e93ac38ad6987413bb54131e1ec0cd\n"
    },
    {
      "commit": "f366b3698b409405e1ee88476d1186f29fe14b06",
      "tree": "8e8587da4f07dade768090ac459b7c005532c521",
      "parents": [
        "7941cf87f624e7747b5bb868a27904c7a3be0ca4"
      ],
      "author": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Fri Mar 16 14:50:07 2012 -0700"
      },
      "committer": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Fri Mar 16 15:30:05 2012 -0700"
      },
      "message": "adb: Don\u0027t synchronize with transport using sleep\n\nServices that cause adbd to reboot are currently implemented this way:\n    write(fd, response)\n    close(fd)\n    sleep(1)\n    exit(1)\nsleep(1) is necessary to leave time for the transport to transmit\nthe response before the daemon exits. This is slow and unreliable.\nInstead, add a flag to the asocket to make it exit the daemon only\nafter the socket is closed.\n\nChange-Id: I9df45ea6221f0d9b828703b9b2316a5d4fe59352\n"
    },
    {
      "commit": "7941cf87f624e7747b5bb868a27904c7a3be0ca4",
      "tree": "be2e15a35a10f3407af84666d3f3f069811ce025",
      "parents": [
        "9f1af8cde988e8a276753db6019e8c7d94f0e2b4"
      ],
      "author": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Fri Mar 16 14:44:17 2012 -0700"
      },
      "committer": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Fri Mar 16 15:30:05 2012 -0700"
      },
      "message": "Revert \"Reimplement the \"adb root\" command to more closely match its previous behavior\"\n\nThis reverts commit 535164e9d9649a83d4d63829f3389f2bea339fe1.\n"
    },
    {
      "commit": "9f1af8cde988e8a276753db6019e8c7d94f0e2b4",
      "tree": "e2b45cecf406d3d1d861dff5dbe0d0c9c1927a45",
      "parents": [
        "0ad682cddef396c91707a31d4982dc55206dca1b"
      ],
      "author": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Wed Mar 14 12:58:20 2012 -0700"
      },
      "committer": {
        "name": "Benoit Goby",
        "email": "benoit@android.com",
        "time": "Fri Mar 16 15:29:34 2012 -0700"
      },
      "message": "adb: Remove unused flags\n\nBUILD_ADBD is always true\n\nANDROID_GADGET is not used in the code anymore. adbd now checks at\nruntime if /dev/android_adb is present\n\nChange-Id: If6c3278606c79cc74d1ef5978e7b8e3a4513aef8\n"
    },
    {
      "commit": "0009b73ed88f5c1759c3b2d9df73492d53f79039",
      "tree": "a4186d57de27f3a84763ee8fdd5cabcd898bde4a",
      "parents": [
        "1a87808b302898f8361664e80096dab0de81dfc0"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Mar 15 21:45:00 2012 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Mar 15 21:45:07 2012 -0700"
      },
      "message": "Add cdefs decoration to list.h\n\nIn case someone includes this from C++ code.\n\nChange-Id: I3b5a8bde5b5b9e8dcee64abaf33383f21eff7046\n"
    },
    {
      "commit": "0ad682cddef396c91707a31d4982dc55206dca1b",
      "tree": "caddef67ccc69d7f00031f21f003e91dbc8a4735",
      "parents": [
        "c4c631a15f04bdcbf8c70737e818c7e4efd5ff7b",
        "86c7cc81891a69ace7044de667b0624c284ee82b"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Mar 15 15:45:19 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 15 15:45:19 2012 -0700"
      },
      "message": "Merge \"Add get_sched_policy_name() and use in ps and top\""
    },
    {
      "commit": "86c7cc81891a69ace7044de667b0624c284ee82b",
      "tree": "6fff9f3e763724ee70181b6559e0a76b1ec21a03",
      "parents": [
        "019524a60e979053b8b8ffef61eae162de522257"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Mon Mar 05 16:14:39 2012 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Thu Mar 15 15:10:45 2012 -0700"
      },
      "message": "Add get_sched_policy_name() and use in ps and top\n\nThis will make it easier to add additional policies (cgroups) if needed.\nAlso added comments to the sched_policy APIs.\n\nChange-Id: I33ce1cc4deae10983241f7391294b7a512d2c47c\n"
    },
    {
      "commit": "dca76e6187c4128a17c8df5bcaca0db6993d91a1",
      "tree": "3155424eb224f2ad08674edecbeeaae32579628d",
      "parents": [
        "9d4dbf4835a073c6a6f970b4e9a87edd6bfb1f5b"
      ],
      "author": {
        "name": "Wei Zhong",
        "email": "wzhong@google.com",
        "time": "Tue Mar 13 10:02:50 2012 -0700"
      },
      "committer": {
        "name": "Wei Zhong",
        "email": "wzhong@google.com",
        "time": "Thu Mar 15 14:40:11 2012 -0700"
      },
      "message": "add IP checking for adb over TCP\n\nwhitelist connection for\n1) emulator\n2) \"eng\" or \"tests\" build, or\n3) IP matches with \"persist.service.adb.client_ip\"\n\nChange-Id: I8ac149149873f3bd206bd4d5abc063e5274fb468\nSigned-off-by: Wei Zhong \u003cwzhong@google.com\u003e\n"
    },
    {
      "commit": "c4c631a15f04bdcbf8c70737e818c7e4efd5ff7b",
      "tree": "c0d1063f3ca4e1bcff2aab8576c44c5de6b6093a",
      "parents": [
        "427d2b43c23c48aedadca008482f495145411e2b",
        "86bfbe3cae1f5e480ba9756ec7404fa4d5a7f2c9"
      ],
      "author": {
        "name": "Dima Zavin",
        "email": "dima@android.com",
        "time": "Thu Mar 15 13:24:17 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 15 13:24:17 2012 -0700"
      },
      "message": "Merge \"cutils: str_parms: free the key if the value was replaced during create/add\""
    },
    {
      "commit": "427d2b43c23c48aedadca008482f495145411e2b",
      "tree": "d1df9c8a123f2e5086db39bd3e87dd3e557d6469",
      "parents": [
        "019524a60e979053b8b8ffef61eae162de522257"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Mar 05 15:38:15 2012 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Mar 15 10:18:42 2012 -0700"
      },
      "message": "Fix switch indentation in audio_bytes_per_sample\n\nAlign \"case\" keyword with \"switch\" keyword.\n\nChange-Id: I57ef96253fb1fc925315b557ea27ccc35f63c2f8\n"
    }
  ],
  "next": "019524a60e979053b8b8ffef61eae162de522257"
}
