)]}'
{
  "log": [
    {
      "commit": "cc0c8f23f314516426ce72a5df211f3052539560",
      "tree": "050ce2a8d43f2e341587ebf0837dae1ed0ba2f63",
      "parents": [
        "eb4de87683a0d1959d64af08f3685e1b3701a314"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Mon Oct 20 14:14:39 2014 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed Dec 10 10:27:50 2014 -0800"
      },
      "message": "Switch to libsigchain.a\n\n Use LOCAL_WHOLE_STATIC_LIBRARIES to instruct static linker\n to export symbols from the static library.\n\n(cherry picked from commit 5ba317cee071b718a163ab9acf2b6b4f6a337b39)\n\nBug: 18701723\nChange-Id: Id9b567a1529574eab2225777f1f2a5ea10e540ad\n"
    },
    {
      "commit": "07268ce3d9de8f8d307e4522c9ac685974031782",
      "tree": "261e9c2ecfaffc30130e1e83d1ced71372437e4b",
      "parents": [
        "c218d8f19881deed098875e2caf41b7ca9e42133"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Tue Oct 07 13:34:42 2014 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu Oct 16 11:43:49 2014 -0700"
      },
      "message": "Link sigchain to main executable\n\n Also export necessary symbols to preempt calls from\n libart.so\n\nBug: 15345057\nBug: 15426766\n\n(cherry picked from commit 96e0cfa721925550b1cc39cdfd6084a878e6ffe2)\n\nChange-Id: I0930d96edde7dc0636e8d50d7c778f099237f748\n"
    },
    {
      "commit": "00c0cd4a24bd0f040055f9e786e2df1fa3b7d2d3",
      "tree": "87654f391f5e9dca11fd5e84901545890d3d5b16",
      "parents": [
        "98ff7bce66f03da14e39fa7e532a7202bde7dce6"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Sep 10 16:48:46 2014 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Thu Sep 11 14:19:52 2014 -0700"
      },
      "message": "Clean entire arg block when setting process name.\n\nWhen Android processes fork from Zygote, we rewrite the command line\nwith a new name, eg. \"system_server\".  When we do this, we should\nfill the entire block with zeros to remove corrupted argument\ninformation that may otherwise remain in the /proc/\u003cpid\u003e/cmdline buffer\nand be seen in tools and stack dumps.\n\nFixed an issue where VM options could be overwritten after setting\nthe nice name if the name was too long.\n\nBug: 17474152\nChange-Id: Ie6cf9ed7752a04300a340e26cd6812bb35c59e1b\n"
    },
    {
      "commit": "55471dcd0f843e79d8665c63165720eca6a9c980",
      "tree": "8c0c3defbd934c122861a5895d80ec7f5cd1f59e",
      "parents": [
        "371bee50f9b2e2f293bb1e1e11872ef1bd69d155"
      ],
      "author": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Wed Aug 27 15:39:17 2014 -0700"
      },
      "committer": {
        "name": "Alex Light",
        "email": "allight@google.com",
        "time": "Thu Aug 28 17:02:37 2014 -0700"
      },
      "message": "Change /dalvik-cache to be owned by root.\n\nBug: 16875245\n\n(cherry picked from commit 79bf4007f559e194205f632b23d2bfb6f8d1e7ba)\n\nChange-Id: I29a70215a2207bc4e0db02ab751d32a68edf4b66\n"
    },
    {
      "commit": "559484ed6a3ed98980579e35d12543be2835aa35",
      "tree": "85168a027a7d7d333488e69da6337016d82c14e6",
      "parents": [
        "b7d7cbc9c3a9315a5c5ecd85e16f5916c4bc3f3a"
      ],
      "author": {
        "name": "Yongqin Liu",
        "email": "yongqin.liu@linaro.org",
        "time": "Tue May 06 23:30:40 2014 +0800"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed May 14 18:48:42 2014 +0100"
      },
      "message": "app_process: change app_process a symlink of primary version\n\nChange app_process to be a symlink to the primary version\nand have app_process32/app_process64 be the 32-bit/64-bit\nversions respectively.\n\nThis will make it possible to use the primary zygote for\nam/pm commands and other scripts that use app_process and\ndon\u0027t need a specific zygote.\n\nSigned-off-by: Yongqin Liu \u003cyongqin.liu@linaro.org\u003e\nChange-Id: Ibef545994eb95ddc82101c95df613ad1d06345e6\n"
    },
    {
      "commit": "d6183204e438a738b68301aeac452c0be41c8cb3",
      "tree": "76da5e53d9141f3689a49bb91a360d005b4183ff",
      "parents": [
        "973cdeed8eb9aa250b1b3bd5549df0e0dc78457e"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Apr 30 16:45:07 2014 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Thu May 01 11:27:49 2014 +0100"
      },
      "message": "Fix x86 build in app_process.\n\nLook for __i386__ and not __x86__.\n\n(cherry picked from commit 47d526217b3fd0d17ba751c66d25cfaf1c6ed7cd)\n\nChange-Id: I848ba351c378e59ab6744ca1983ae4463ae75ba4\n"
    },
    {
      "commit": "973cdeed8eb9aa250b1b3bd5549df0e0dc78457e",
      "tree": "dc92e8b3a7cdc7b32f14ddaf0f85298ba9abdb8e",
      "parents": [
        "fbb0ab02bed5c49159acb3dba6848a154e524169"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Apr 25 11:43:22 2014 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Thu May 01 11:26:49 2014 +0100"
      },
      "message": "Create arch specific cache dirs during zygote startup.\n\nThe runtime expects them to exist before it\u0027s launched.\nThe boot image / art files are created during the first\nzygote launch.\n\n(cherry picked from commit da738713e4e2120a324e8ab6fd11aa0e54a3c66e)\n\nChange-Id: I7472aa25c16a1cf95791af2bdf80ed0d73123872\n"
    },
    {
      "commit": "195c73c9b2c5be50ab325099dc2160215ac7562a",
      "tree": "d96f10bd5467d1c3788e9393a6b9f5ee367c0b2c",
      "parents": [
        "5c220cc4e4c0584a9083529b58e30e17ab7d2d9e"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Apr 25 15:01:24 2014 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Apr 29 15:10:58 2014 -0700"
      },
      "message": "Set NO_NEW_PRIVS on zygote init\n\nWhen app_process/zygote starts, make sure PR_SET_NO_NEW_PRIVS is set.\nThis prevents zygote spawned apps from acquiring new privileges\non exec.\n\nIn particular, this allows the CTS test\nandroid.os.cts.SecurityFeaturesTest#testNoNewPrivs() to pass if ART is set\nas the default runtime.\n\nChange-Id: I81139cda999c7b1430242561aad28f566e9b6da0\n"
    },
    {
      "commit": "6bd762289b911e8876759ebbfd9e8960ba825844",
      "tree": "6837055e52424d78e7c3e024e16ebc841895a59e",
      "parents": [
        "683cf1bffe33f49f26d46201f96cd2eff60e8192"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 23 16:54:33 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 23 16:54:33 2014 -0700"
      },
      "message": "Fix a typo in an assertion.\n\nChange-Id: I3e97bb3cb8070c0ec0c6b97769f1da3e7b4ef8f5\n"
    },
    {
      "commit": "90c75cf02e8e36be8679273f4ea15fd145001033",
      "tree": "8619abb2bafa9ece6622855ec829b0573d4f99bb",
      "parents": [
        "b093e485bbd790cc4d9678451c8cce4d361c2cf2"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Sat Apr 12 12:25:50 2014 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Sat Apr 12 12:25:50 2014 +0100"
      },
      "message": "Don\u0027t compare String8s to NULL.\n\nUse String8::isEmpty instead. Note that this code path is hit\nonly if the zygote calls ::exit, and that never happens unless\nthe VM invocation fails.\n\nChange-Id: I0e7d3a86a79b12b2174ca3bf0dbe1904e33c041a\n"
    },
    {
      "commit": "d35d3e5d391b8daf20f9af2c5f01d5ff1985c1ee",
      "tree": "d5ffc966f3e4d3bf0711209213e73e03651d6749",
      "parents": [
        "09e13cc5f9f98382376eb49bfa6ceb94a50d37a1"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Thu Apr 10 12:13:06 2014 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Thu Apr 10 12:15:39 2014 +0100"
      },
      "message": "Dual zygote cleanup.\n\n- Use different process names for the 32 / 64 bit zygote.\n- Pass command line arguments correctly. The first unmatched\n  argument must be passed through to the java main class.\n\nChange-Id: I952ebbdbba941f118d992354b9bd0ada2dade417\n"
    },
    {
      "commit": "c41638cb759ce569630ffae4c5c4cdee1b0f3b82",
      "tree": "06f51dec3427c6e8322816b2e43f2bb784f28fe0",
      "parents": [
        "22ec1eefa4dc8e12f7da8e8750d4770144941526"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Apr 07 13:56:15 2014 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Apr 09 13:41:15 2014 +0100"
      },
      "message": "Make zygotes aware of their supported ABIs.\n\nQuery system properties for the list of ABIs and pass\nit as a command line argument to ZygoteInit.\n\nAlso add a new Zygote command that returns this list of\nABIs to peers.\n\nChange-Id: I68034c6f63fa626911122579a011a0a25a8cda94\n"
    },
    {
      "commit": "22ec1eefa4dc8e12f7da8e8750d4770144941526",
      "tree": "f5ca6c4f0055e8c4ef01cf484abc65d983ec990b",
      "parents": [
        "a5608acbd7647e0fd9aa87e5319715b0cbd6b0c0"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Apr 07 12:44:58 2014 +0100"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Wed Apr 09 13:39:41 2014 +0100"
      },
      "message": "Clean up argc / argv processing for runtime args.\n\n- Make copies of argc, argv before argv is potentially\n  overwritten with the process name.\n- Allow multiple command line arguments to be passed to\n  ZygoteInit (this is required for some of the 64 bit\n  zygote work).\n- Add an explanatory comment about how these argments\n  are processed.\n\nChange-Id: I752be69c5c0f97ed17d1a3dded19f46ee00929b0\n"
    },
    {
      "commit": "a23fcd7be8e40078a913b1a99222cdd89229e67b",
      "tree": "9580df860d196b7b1edab40837c0c08fbc4ff6da",
      "parents": [
        "369a00574da218975718ce07ffe6abba5c17bf92"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Fri Mar 28 13:39:21 2014 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Thu Apr 03 12:29:07 2014 +0000"
      },
      "message": "Remove ProcessState::mArgc,mArgV,mArgLen\n\nThese look like historical oddities, and weren\u0027t really being\nused for anything useful.\n\nProcess:setArgV0 was being called by android.util.Process, but\nthat functionality can be moved directly into the implementation\nof that class.\n\nbug: 13647418\n\nChange-Id: I216c8f8a4c065f0cf3a61f19f9e32decd26f93f6"
    },
    {
      "commit": "f130f0aaea58358dafbe83ccec2b5163b5bed1fb",
      "tree": "06be6d4b9de8764d34ef29e7dc2eca085833c2c4",
      "parents": [
        "5daf51c0fe6d5bea858c37291fed88bd3094d3ec"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Mar 27 10:20:29 2014 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Thu Mar 27 10:20:29 2014 -0700"
      },
      "message": "app_process: use LOCAL_MULTILIB :\u003d both\n\nUse LOCAL_MULTILIB :\u003d both to build app_process64 instead of\nduplicating the build rule.\n\nAlso causes PRODUCT_PACKAGES :\u003d app_process to install both\nversions on 64-bit platforms, as the module names for both\napp_process and app_process64 are now app_process.\n\nChange-Id: Ia3c3265d15475771b0cae8bace53b8fbf351c186\n"
    },
    {
      "commit": "2764fce3a1119599cd231545b16e6a16286e482d",
      "tree": "10afd1b4914b8e5eb448f94514221e93a2167179",
      "parents": [
        "bfc440923ecb8f32448c675095a2096049fe7ebe"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Mar 19 17:47:39 2014 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Mar 19 17:49:47 2014 -0700"
      },
      "message": "build app_process64 on 64-bit targets\n\nOn 64-bit platforms builds two copies of app_process, the 32-bit\napp_process and 64-bit app_process64.\n\nChange-Id: I59d739b5df398ad0bd040c954c57640ff7ab3e72\n"
    },
    {
      "commit": "d53afd2b05f428fcce5695770c04d6cb6fba7aca",
      "tree": "343b43878bcad885afde9a87252e89f628a9c3e1",
      "parents": [
        "ac39c604d6df8631922c2295b3341cd561f172a5"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Sep 18 14:29:46 2013 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Wed Sep 18 14:29:46 2013 -0700"
      },
      "message": "revert ADDR_COMPAT_LAYOUT workaround.\n\nStop working around bad applications by setting ADDR_COMPAT_LAYOUT.\nADDR_COMPAT_LAYOUT is undesirable because it reduces the amount of\naddress space available to an application.\n\nThe Android emulator, in both 4.3 and 4.4, does not set\nADDR_COMPAT_LAYOUT. Anyone needing to test their application on a\nversion of Android without ADDR_COMPAT_LAYOUT can use the emulator\nand reproduce the failures.\n\nChange-Id: I8f753acc205798bd7f031026c7ece12d26de562c\n"
    },
    {
      "commit": "fc8bd4d3f4deece8beee7ce3f7888078dd37c60d",
      "tree": "e45c438d4a34e40694d2f6e859adf50ce844615d",
      "parents": [
        "2ea5aebe59b72c034b32c132c35a5c75a7a2bf56",
        "35587a0c47c33a8eed7817dc705dbf502f7b5b60"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Apr 23 17:06:58 2013 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Apr 23 17:06:58 2013 -0700"
      },
      "message": "am 35587a0c: Merge \"Don\\\u0027t set ADDR_COMPAT_LAYOUT on the emulator\"\n\n* commit \u002735587a0c47c33a8eed7817dc705dbf502f7b5b60\u0027:\n  Don\u0027t set ADDR_COMPAT_LAYOUT on the emulator\n"
    },
    {
      "commit": "fc17dc2548234461eb43ff83539ede4c9893a825",
      "tree": "8f8bbf8c1ab2defe9926b461fa9090222ced4275",
      "parents": [
        "be4536d214eedc3d12b50f0f30b47bba773b8dbc"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Apr 23 15:30:45 2013 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Tue Apr 23 15:40:03 2013 -0700"
      },
      "message": "Don\u0027t set ADDR_COMPAT_LAYOUT on the emulator\n\nDon\u0027t work around third party app bugs on the emulator.\n\nChange-Id: I4440fcd56b72e3a74881ddec2a469f037a060525\n"
    },
    {
      "commit": "6ad0452e6301c0650f58f3991f7c523f6f279ddb",
      "tree": "0f116a6253e62bd96a4deb02c137461516cf6266",
      "parents": [
        "d12a7645a3bf3ffa83b8041bf343f1dc12a2381f"
      ],
      "author": {
        "name": "Jamie Gennis",
        "email": "jgennis@google.com",
        "time": "Mon Apr 15 18:53:24 2013 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Apr 16 22:15:21 2013 +0000"
      },
      "message": "Disable tracing from Zygote\n\nThis change disables all atrace tracing in Zygote immediately after it is\ninitialized.  This is necessary because Zygote has no way to receive\nnotifications that the enabled trace tags have been changed.  Tracing is\nre-enabled when other processes fork from Zygote.\n\nChange-Id: If2983858fb0c4890ba9ab041849b1c4d98f66c13\n"
    },
    {
      "commit": "d685894212e6dbeac1fda4996903c1da115d49a6",
      "tree": "c52d05c78811e79a869afbcdbe55a906e38f2fa1",
      "parents": [
        "9fa49cc3308f6af593d780581121afc3c1d7e046"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Apr 09 21:54:12 2013 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Apr 09 21:54:12 2013 -0700"
      },
      "message": "Add liblog\n\nBug: 8580410\nChange-Id: I746aa8258866508c3a725d0773faf4518096548f\n"
    },
    {
      "commit": "9a9350550a7ca51feb97218101ef90c2cb90be71",
      "tree": "ef9b1a88b56ca830da9309928ca59e389f086c0a",
      "parents": [
        "f7ec4e61ebde9ff6d4934bd398e9ef8a39e4c28b"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Mar 15 13:12:28 2013 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Mar 15 13:14:52 2013 -0700"
      },
      "message": "app_process: don\u0027t pollute the environment\n\nGive a hoot — don\u0027t pollute!\n\nChange-Id: I30d6c05cecab483f0e9d8063907f7bc0ef2bb104\n"
    },
    {
      "commit": "1fe21bd1b6ca8b94c78fbf3666a1e8e0472355de",
      "tree": "d3fe55e4014a23cc1d6991ce3110b26a2d97de83",
      "parents": [
        "1ae6ae2094fd0ab8c82ad1a347e7a8bd67d995e5"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Mar 15 11:38:29 2013 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Fri Mar 15 11:59:03 2013 -0700"
      },
      "message": "Never call app_main more than once\n\nDifferent kernels seem to handle ADDR_COMPAT_LAYOUT differently,\nsometimes passing it to its children, sometimes not. If it\u0027s not\npassed to its child successfully, we can end up in a restart loop.\n\nInstead of testing for the presence of ADDR_COMPAT_LAYOUT, use an\nenvironment variable instead, which is handled more predictably.\n\nBug: 8392487\nChange-Id: Ia531dd2abb4e1cd46f3430d844e644f53581f530\n"
    },
    {
      "commit": "5fa1ee779e2170fd2e3e96b1e0887f15b04b1f76",
      "tree": "bb51821e615f0a1b70dc962cbac893106ce9f024",
      "parents": [
        "f732108e86fcc9825d5ecaa0b65ee91469c4a24c"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Mar 14 16:31:34 2013 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Mar 14 16:31:34 2013 -0700"
      },
      "message": "Don\u0027t use ADDR_COMPAT_LAYOUT on the emulator\n\nFor the emulator, we want people to see memory as it\nactually is, not how we\u0027re hacking around buggy apps. Don\u0027t\nset ADDR_COMPAT_LAYOUT on the emulator.\n\nFor reasons that I don\u0027t understand, personality(ADDR_COMPAT_LAYOUT)\ndoes not persist across an exec on the emulator. app_main gets\ninto a tight loop restarting itself because of this. This change\nalso works around that bug.\n\nChange-Id: Ia73a7d2d623c25cf39d248145d97307945d554da\n"
    },
    {
      "commit": "8a0a929422682ba3eb6a205dc6c0638e68b909de",
      "tree": "2d97cde26c7050f159c9f20a3267ed1243783250",
      "parents": [
        "733329a2745ce703029b40afaa5dd78c7a5b620c"
      ],
      "author": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Mar 14 13:23:52 2013 -0700"
      },
      "committer": {
        "name": "Nick Kralevich",
        "email": "nnk@google.com",
        "time": "Thu Mar 14 15:21:12 2013 -0700"
      },
      "message": "Respawn app_main if ADDR_COMPAT_LAYOUT is not set\n\nBug: 8358800\nChange-Id: Id81aa26d74dfd16a49f0ee5926ea2cdb3c2106d8\n"
    },
    {
      "commit": "bb4cd8259269743fa8f0912b064961477b368c4f",
      "tree": "a2f1cece969241290b281ef3fd72db4aba469d1c",
      "parents": [
        "5e63d99ca5b292702d79ce3e144721710d7106db"
      ],
      "author": {
        "name": "Evgeniy Stepanov",
        "email": "eugenis@google.com",
        "time": "Mon Apr 02 16:16:04 2012 +0400"
      },
      "committer": {
        "name": "Evgeniy Stepanov",
        "email": "eugenis@google.com",
        "time": "Wed Apr 04 21:51:44 2012 +0400"
      },
      "message": "Build /system/bin/asan/app_process.\n\nChange-Id: Id3fa26a1bc0e0832bfde73dbd3acce15ecce823d\n"
    },
    {
      "commit": "5bb508fac6453c75afe8acc2fec6380bc0ebdb06",
      "tree": "2187a2a450cdf80d9b1ea10eb53d7d15b09753e6",
      "parents": [
        "cb5c734790e1e3d8496b4c75c57e8a537784c056"
      ],
      "author": {
        "name": "Stephen Hines",
        "email": "srhines@google.com",
        "time": "Wed Apr 04 08:12:46 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 04 08:12:46 2012 -0700"
      },
      "message": "Revert \"Build /system/bin/asan/app_process.\"\n\nThis reverts commit cb5c734790e1e3d8496b4c75c57e8a537784c056"
    },
    {
      "commit": "cb5c734790e1e3d8496b4c75c57e8a537784c056",
      "tree": "fa85c044e00d7e2c60f1cd9e2ed58170d16859d5",
      "parents": [
        "ee80082ef7c6575ab36ef63c9f11808a44c371ad"
      ],
      "author": {
        "name": "Evgeniy Stepanov",
        "email": "eugenis@google.com",
        "time": "Mon Apr 02 16:16:04 2012 +0400"
      },
      "committer": {
        "name": "Evgeniy Stepanov",
        "email": "eugenis@google.com",
        "time": "Tue Apr 03 22:17:00 2012 +0400"
      },
      "message": "Build /system/bin/asan/app_process.\n\nChange-Id: Icdfe215a7e86466a07fe0508775c89963a0a4787\n"
    },
    {
      "commit": "3762c311729fe9f3af085c14c5c1fb471d994c03",
      "tree": "7d4caccad80ac7327c7bff96dafc857d5f4631ad",
      "parents": [
        "7a939077bd14521c7d351af98df7ed75a8ec9c15"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Fri Jan 06 19:20:56 2012 +0000"
      },
      "committer": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Sun Jan 08 13:19:13 2012 +0000"
      },
      "message": "Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF)  DO NOT MERGE\n\nSee https://android-git.corp.google.com/g/#/c/157220\n\nBug: 5449033\nChange-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c\n"
    },
    {
      "commit": "71f2cf116aab893e224056c38ab146bd1538dd3e",
      "tree": "75a9162a0ea00830184b12a9ca51d3a1a040a5bb",
      "parents": [
        "1da79501066a74b630c8aa138db0f86ab6c690bb"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Thu Oct 20 11:56:00 2011 +0100"
      },
      "committer": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Wed Oct 26 09:57:54 2011 +0100"
      },
      "message": "Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF)  DO NOT MERGE\n\nSee https://android-git.corp.google.com/g/#/c/143865\n\nBug: 5449033\nChange-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a\n"
    },
    {
      "commit": "10e89712863f5b91a2982dc1783fbdfe39c1485d",
      "tree": "7a268e40e03cfb2b65d3764b73d0ea42172965fa",
      "parents": [
        "b7440a140b650932bf31cf51d3b87c3249e3b682"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jul 08 18:52:57 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Fri Jul 08 19:54:07 2011 -0700"
      },
      "message": "Eliminate single-process mode.\nBug: 5010576\n\nChange-Id: Id450dc83efed4897d1e4ff451530fed14457aace\n"
    },
    {
      "commit": "ebed7d6e35f7f960e6e6add2b8ab7c7a31a511c3",
      "tree": "ae346479a6c069a3a57acecb18a0b0a563325e3f",
      "parents": [
        "cbc38e74f028d9e337eba0f3ed7c435310cc10c2"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon May 16 17:08:42 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Tue May 24 12:01:25 2011 -0700"
      },
      "message": "Support wrapping app processes to inject debug instrumentation.\nBug: 4437846\n\nChange-Id: I4552501c693716b14714afb5c5248edaca9547ab\n"
    },
    {
      "commit": "d195e5ab401432ddac659791640a2927fc668699",
      "tree": "61169b923b4d530a097ac8ff9e3029dfe468b7cd",
      "parents": [
        "966f9e558d714d9d41189e989b21e6d5fec35047"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 13 15:39:37 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 13 16:43:15 2011 -0700"
      },
      "message": "Replace a custom AndroidRuntime::findClass with a more targeted fix.\n\nThis seems simpler and more contained, and I think the comment explaining\nwhy hoop-jumping is necessary is a bit clearer now.\n\nChange-Id: Ief4afd7cbb42188ed835fce23e497520bdb753a8\n"
    },
    {
      "commit": "de6d1d889ebf15250c04a8ffc204b91af1e447e3",
      "tree": "74e7bf4e0179ab278d36d502642a3c6db2825061",
      "parents": [
        "c8b7971cb3e09dfd4480a4bb8875a32157b62192"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Thu Oct 07 16:02:11 2010 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Thu Oct 07 16:02:11 2010 -0700"
      },
      "message": "Move LOG_ALWAYS_FATAL to end of app_process\n\nSince LOG_ALWAYS_FATAL is always fatal and code after it is by\ndefinition unreachable, put the call after other diagnostic output.\n\nChange-Id: Ib3a515a04125d8e4f6e8af3a6f59226e8f0dd9cd\n"
    },
    {
      "commit": "b1bb6cfe91c97fccd720de565fa69ed787ae1cbc",
      "tree": "f57a58dd074a3846884b41320665d33a0d6553fe",
      "parents": [
        "82583b8312403ed734c30b161750d40c26086ee2"
      ],
      "author": {
        "name": "Doug Kwan",
        "email": "dougkwan@google.com",
        "time": "Sun Oct 04 19:27:57 2009 -0700"
      },
      "committer": {
        "name": "Doug Kwan",
        "email": "dougkwan@google.com",
        "time": "Sun Oct 04 19:27:57 2009 -0700"
      },
      "message": "Add back missing shared libraries used in executables in link commands.  These\nexecutables have calls to some shared libraries without explicitly linking\nthem.  Currently it works as linker links these libraries via dependencies of\nother libraries.  This is fragile and not the right thing to do.\n"
    },
    {
      "commit": "0795272aa226f4e965968a03daddc53ce30b7cda",
      "tree": "6b4e8ba5e57c5dcf2dd770c24e14c43eda42fdd7",
      "parents": [
        "25ba5b6564224dceefa086b5c439ef28dad530ca"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue May 19 19:08:10 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed May 20 12:55:03 2009 -0700"
      },
      "message": "move libbinder\u0027s header files under includes/binder\n"
    },
    {
      "commit": "9066cfe9886ac131c34d59ed0e2d287b0e3c0087",
      "tree": "d88beb88001f2482911e3d28e43833b50e4b4e97",
      "parents": [
        "d83a98f4ce9cfa908f5c54bbd70f03eec07e7553"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 19:31:44 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 19:31:44 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@135843\n"
    },
    {
      "commit": "d83a98f4ce9cfa908f5c54bbd70f03eec07e7553",
      "tree": "4b825dc642cb6eb9a060e54bf8d69288fbee4904",
      "parents": [
        "076357b8567458d4b6dfdcf839ef751634cd2bfb"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 18:28:45 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 18:28:45 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@135843\n"
    },
    {
      "commit": "54b6cfa9a9e5b861a9930af873580d6dc20f773c",
      "tree": "35051494d2af230dce54d6b31c6af8fc24091316",
      "parents": [],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Oct 21 07:00:00 2008 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Oct 21 07:00:00 2008 -0700"
      },
      "message": "Initial Contribution\n"
    }
  ]
}
