)]}'
{
  "log": [
    {
      "commit": "49658cb55bdabfd8e086f896b8ea49458db2de6f",
      "tree": "627926619f81a31c4291e87e2c9ffd93c01910d6",
      "parents": [
        "6069beb2dfed6da837bf7faa3db3f6119edc017a",
        "4f22a545552d308377e178d5df5557cfe15252f9"
      ],
      "author": {
        "name": "Leon Scroggins",
        "email": "scroggo@google.com",
        "time": "Wed Mar 10 10:07:46 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 10 10:07:46 2010 -0800"
      },
      "message": "Merge \"When context is voice, show the microphone.\""
    },
    {
      "commit": "6069beb2dfed6da837bf7faa3db3f6119edc017a",
      "tree": "59b7d3e108b6e1dcfebc0a897db335b9c9f37407",
      "parents": [
        "a8fbe1fb74d3bd40b73c90c85ac25e5176475ca5"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Wed Mar 10 09:46:49 2010 -0800"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Wed Mar 10 09:46:49 2010 -0800"
      },
      "message": "    Rename ApplicationInfo.FLAG_ON_SDCARD to ApplicationInfo.FLAG_EXTERNAL_STORAGE\n\n    Change-Id: Iadef9f9bb2851c38b6d79be1bafbf932abce4210\n\nChange-Id: I2e412bace3d8005db5057a3497bd836d0038b90c\n"
    },
    {
      "commit": "4f22a545552d308377e178d5df5557cfe15252f9",
      "tree": "f466b79f5fce6bfc8b57c9b3a88f486ee23fab65",
      "parents": [
        "a8fbe1fb74d3bd40b73c90c85ac25e5176475ca5"
      ],
      "author": {
        "name": "Leon Scroggins",
        "email": "scroggo@google.com",
        "time": "Tue Mar 09 17:28:13 2010 -0500"
      },
      "committer": {
        "name": "Leon Scroggins",
        "email": "scroggo@google.com",
        "time": "Wed Mar 10 12:04:29 2010 -0500"
      },
      "message": "When context is voice, show the microphone.\n\nPart of fix for http://b/issue?id\u003d2501400\n\nChange-Id: Ibdf364942bcdc8ec837fb8bb30a33c1af2ba5b06\n"
    },
    {
      "commit": "a8fbe1fb74d3bd40b73c90c85ac25e5176475ca5",
      "tree": "ee5fb37a1e91521611a58c6abe0446d49a4fb080",
      "parents": [
        "746f666029f67cbb3d9e274d718ab7d88e8455cd"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Tue Mar 09 09:13:58 2010 -0800"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Wed Mar 10 08:28:08 2010 -0800"
      },
      "message": "Re-organize access to native interface through WifiStateTracker\n\nBug: 2339709\nChange-Id: Ibb2eeb09b83dc24897116ea15a9016f81a08d442\n"
    },
    {
      "commit": "746f666029f67cbb3d9e274d718ab7d88e8455cd",
      "tree": "3c3b9651dbb8a195842817700fd77d9f9547ccce",
      "parents": [
        "62459c0fa5f379ab7aaaea3159654dd355117b37",
        "aa86859b1035f865147b4f76ad2a9eed7ee098a5"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Wed Mar 10 06:36:06 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 10 06:36:06 2010 -0800"
      },
      "message": "Merge \"YuvImage: jpeg_set_quality() should be called after jpeg_set_defaults().\""
    },
    {
      "commit": "62459c0fa5f379ab7aaaea3159654dd355117b37",
      "tree": "44863c71b9cb656dc3cbc45f50cc7778454e250a",
      "parents": [
        "a401d559ecfb1c84f4016b5cc6b711581989dc3a"
      ],
      "author": {
        "name": "Leon Scroggins",
        "email": "scroggo@google.com",
        "time": "Tue Mar 09 15:14:03 2010 -0500"
      },
      "committer": {
        "name": "Leon Scroggins",
        "email": "scroggo@google.com",
        "time": "Wed Mar 10 09:08:47 2010 -0500"
      },
      "message": "If the new text and old text are \"\", return from onTextChanged.\n\nFixes http://b/issue?id\u003d2496329\n\nChange-Id: I239f143c0e539710342e46783157344a4d7ccc08\n"
    },
    {
      "commit": "a401d559ecfb1c84f4016b5cc6b711581989dc3a",
      "tree": "e93c5b0d2198636575a1e4175b47f8afb3fdddad",
      "parents": [
        "a69f54038f2aea111bfc197cc3f4d3d8775eef0e"
      ],
      "author": {
        "name": "Kristian Monsen",
        "email": "kristianm@google.com",
        "time": "Mon Mar 08 19:39:03 2010 +0000"
      },
      "committer": {
        "name": "Kristian Monsen",
        "email": "kristianm@google.com",
        "time": "Wed Mar 10 12:40:04 2010 +0000"
      },
      "message": "Don\u0027t cut the url on a redirect\n\nThis is a fix for issue 2485033. It is not a final fix, but just starting with this so it can be discussed on code review. The line in question\nwas added to fix issue 1690652.\n\nUpdated fix. Stores the url before it is cut during a redirect. Forwards this to the reponse instead of the cut url.\n\nUpdate 2: Using the old originalUrl\n\nChange-Id: I286084451aa45e51d5d07811f9d119cf83849592\n"
    },
    {
      "commit": "aa86859b1035f865147b4f76ad2a9eed7ee098a5",
      "tree": "df308eb549f002b43e8c28535d93548621fd598b",
      "parents": [
        "fe62d04c30e7b3abe408b56c7744c7f547c57640"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Wed Mar 10 17:08:58 2010 +0800"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Wed Mar 10 17:08:58 2010 +0800"
      },
      "message": "YuvImage: jpeg_set_quality() should be called after jpeg_set_defaults().\n\nChange-Id: I6579ad9241dd5ee6aabf54e1a1128d17b4f6b3e6\n"
    },
    {
      "commit": "a69f54038f2aea111bfc197cc3f4d3d8775eef0e",
      "tree": "1ec86b0dc9705a65417fade280a78ceaa448396e",
      "parents": [
        "7b467d8b44c00d14590c021928b6a9ad5a36348e",
        "547a96bc12f25f585271c678395d4c991f08c52d"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Tue Mar 09 22:48:40 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 22:48:40 2010 -0800"
      },
      "message": "Merge \"SettingsProvider: dup-suppress from cache.\""
    },
    {
      "commit": "7b467d8b44c00d14590c021928b6a9ad5a36348e",
      "tree": "35a46a47d27f92d94e0bb7c4ecfc1ab2bd90a928",
      "parents": [
        "4aaf256e95de9d09936b37a6c44e1200e751324e"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Mar 09 16:55:23 2010 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Mar 09 20:56:41 2010 -0800"
      },
      "message": "Dedupe resource config pointers\n\nWhen there are two configs in a StringPool that would match a string ID\nonly keep the more generic entry to save some space. This means that if\nyou have both \"es\" and \"es_US\" translations that have the same\ntranslation, the string entry would be removed from the \"es_US\" config.\n\nChange-Id: I4d619942d35ddb477e2eabe4437b7f02697c24de\n"
    },
    {
      "commit": "4aaf256e95de9d09936b37a6c44e1200e751324e",
      "tree": "4426d6b97b2985dada4d6ae086e6470125d04b50",
      "parents": [
        "c57346035aa4ee2b08e4f8c5653923613d16250f",
        "d951d88c17661cf95391ca3de2a72fbe8afedb69"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Mar 09 18:44:06 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 18:44:06 2010 -0800"
      },
      "message": "Merge \"Use proper config to enable LVMX.\""
    },
    {
      "commit": "c57346035aa4ee2b08e4f8c5653923613d16250f",
      "tree": "c7202df6444c76f962462c6b2778449c2efe7321",
      "parents": [
        "fe62d04c30e7b3abe408b56c7744c7f547c57640",
        "99c085bd5a34cfe4311f97beac5914cd51004522"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Mar 09 18:43:57 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 18:43:57 2010 -0800"
      },
      "message": "Merge \"Use proper config to enable LVMX\""
    },
    {
      "commit": "d951d88c17661cf95391ca3de2a72fbe8afedb69",
      "tree": "20d217517aacbf3a9f8373ec6dc4ba9e628febf5",
      "parents": [
        "fe62d04c30e7b3abe408b56c7744c7f547c57640"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Mar 09 18:38:25 2010 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Mar 09 18:38:25 2010 -0800"
      },
      "message": "Use proper config to enable LVMX.\n\nChange-Id: Ic8792e2b48110b2e91903e2e407b828a97d6e531\n"
    },
    {
      "commit": "99c085bd5a34cfe4311f97beac5914cd51004522",
      "tree": "32c137d71670e63014b363775944d2804cd647bf",
      "parents": [
        "ae58f6d7473c67d76b6c6373794fd1a77543ddb4"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Mar 09 18:13:59 2010 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Mar 09 18:13:59 2010 -0800"
      },
      "message": "Use proper config to enable LVMX\n\nChange-Id: Ifa75a82884b99aeee139e055f40e7c510cf28213\n"
    },
    {
      "commit": "547a96bc12f25f585271c678395d4c991f08c52d",
      "tree": "59c3521a9cc6e2fba7204a45d800425b1c705b3d",
      "parents": [
        "f3bcc62584f714ac4994601d74761b6f14e1fc48"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Tue Mar 09 17:58:53 2010 -0800"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Tue Mar 09 17:58:53 2010 -0800"
      },
      "message": "SettingsProvider: dup-suppress from cache.\n\nOn insert(), check to see if the value is redundant by checking if\nit\u0027s the same value already in our cache (but without faulting it in\nto check).  If so, avoid hitting sqlite or spamming all the\nnotification listeners with such uselessness.\n\nThis reportedly is happening a fair bit.\n\nChange-Id: If58feb3ff1d00027dd927e0900087388cbcd72ae\n"
    },
    {
      "commit": "fe62d04c30e7b3abe408b56c7744c7f547c57640",
      "tree": "323a3850e8525fbfd3344e514b0342081c0e3ea8",
      "parents": [
        "f3bcc62584f714ac4994601d74761b6f14e1fc48"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Mar 09 14:59:33 2010 -0800"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Tue Mar 09 17:44:34 2010 -0800"
      },
      "message": "Helper for combining multiple selection/selectionArgs.\n\nChange-Id: I08eb082149a2a3e45ab00b81a3f46825ad52188d\n"
    },
    {
      "commit": "f3bcc62584f714ac4994601d74761b6f14e1fc48",
      "tree": "5b279e457dcada9e12246bc6da0579b34bed6c24",
      "parents": [
        "cf244ada58539ce857ec041d7288d0271204fbb6",
        "342984a17ddd010381c462066e33e18354b79e4f"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Tue Mar 09 17:24:51 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 17:24:51 2010 -0800"
      },
      "message": "Merge \"SettingsProvider: defensively cap size of settings kept cached in memory.\""
    },
    {
      "commit": "cf244ada58539ce857ec041d7288d0271204fbb6",
      "tree": "ec16084d19a3b0c0e43e11dd276fbe7c6a6813c5",
      "parents": [
        "ae58f6d7473c67d76b6c6373794fd1a77543ddb4"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Mar 09 15:00:30 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Mar 09 17:18:05 2010 -0800"
      },
      "message": "Add ability for some manifest attributes to reference resources.\n\nThis loosens our restriction on many manifest attributes requiring\nliteral string values, to allow various ones to use values from\nresources.  This is only allowed if the resource value does not change\nfrom configuration changes, and the restriction is still in place\nfor attributes that are core to security (requesting permissions) or\nmarket operation (used libraries and features etc).\n\nChange-Id: I4da02f6a5196cb6a7dbcff9ac25403904c42c2c8\n"
    },
    {
      "commit": "342984a17ddd010381c462066e33e18354b79e4f",
      "tree": "6b3c1eabcb6616948d858a4e82dca40be8829bd9",
      "parents": [
        "104798b706370c1bf403a1d07a0d69a740a3fb2f"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Tue Mar 09 16:59:30 2010 -0800"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Tue Mar 09 16:59:30 2010 -0800"
      },
      "message": "SettingsProvider: defensively cap size of settings kept cached in memory.\n\nChange-Id: I50289ece2d7f5f50d2ea2efbacac7a0bb1483bf6\n"
    },
    {
      "commit": "ae58f6d7473c67d76b6c6373794fd1a77543ddb4",
      "tree": "54e7279c7942fd9df5ec4fb0b504779e2568963e",
      "parents": [
        "104798b706370c1bf403a1d07a0d69a740a3fb2f",
        "b7e029d03c115ed65cdea9b2bba307e882c308e2"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Tue Mar 09 16:56:36 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 16:56:36 2010 -0800"
      },
      "message": "Merge \"Add an API to set the link timeout.\""
    },
    {
      "commit": "b7e029d03c115ed65cdea9b2bba307e882c308e2",
      "tree": "b4651ba5b76333f2859fa975125a3fedaa375ccb",
      "parents": [
        "529b2854de028a79dff45583112723a9791430c9"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Tue Mar 09 15:31:24 2010 -0800"
      },
      "committer": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Tue Mar 09 16:51:09 2010 -0800"
      },
      "message": "Add an API to set the link timeout.\n\nThis fixes the problem where the car dock is\npowered on and off pretty quickly.\n\nChange-Id: I8724641b8c337019f089b005cb236fc90549cf6f\n"
    },
    {
      "commit": "104798b706370c1bf403a1d07a0d69a740a3fb2f",
      "tree": "df2a005a5ace5de7fae0c3e64ecad7c97c9adefc",
      "parents": [
        "28ada96218d8869e746cafcea335ccafc37ae41c",
        "9ffdfa0c238fce3b85741d7f6828fd484cd8f195"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Tue Mar 09 16:42:44 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 16:42:44 2010 -0800"
      },
      "message": "Merge \"Speed up ContentProvider.query() in simple case by ~30%\""
    },
    {
      "commit": "28ada96218d8869e746cafcea335ccafc37ae41c",
      "tree": "7c19afc262b7a8d357b9ab20461eaccea276bae2",
      "parents": [
        "2f0bf83e45ad990479b7c7ec2eb6bded8e29c96c",
        "f02811f7853202c0934622702ebb9c82e6ab0592"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Tue Mar 09 16:39:13 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 16:39:13 2010 -0800"
      },
      "message": "Merge \"Support unbundled bookmarks. Bug #2460685\""
    },
    {
      "commit": "f02811f7853202c0934622702ebb9c82e6ab0592",
      "tree": "7bab1fc7b7b21563da6a591988cf0f9906833db4",
      "parents": [
        "6509662adb12a506f3d584630f78d0edc9a62922"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Tue Mar 09 16:33:51 2010 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Tue Mar 09 16:33:51 2010 -0800"
      },
      "message": "Support unbundled bookmarks.\nBug #2460685\n\nChange-Id: I402e342673cd8de88664a595401a141e09583e1d\n"
    },
    {
      "commit": "2f0bf83e45ad990479b7c7ec2eb6bded8e29c96c",
      "tree": "313785391426c9f3f6815c98a89d3c19e6b683f7",
      "parents": [
        "158a2ce56ffb0ce06491eb0ebd3aa8bfe146f42b",
        "b4ca6ef9941701502a9ea4d298d7fe5602ba8e7a"
      ],
      "author": {
        "name": "Ray Chen",
        "email": "raychen@google.com",
        "time": "Tue Mar 09 16:20:59 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 16:20:59 2010 -0800"
      },
      "message": "Merge \"Avoid overriding DATE_TAKEN by unreliable file time. MediaProvider will calculate it if needed.\""
    },
    {
      "commit": "158a2ce56ffb0ce06491eb0ebd3aa8bfe146f42b",
      "tree": "a18d787c82986f0d83ce9f6fb6705a5e8a21bdfe",
      "parents": [
        "aa3780b6f7749c4f4d0a8258d8505da4681cfbfa",
        "871c16cec850c042c61aa06a7ffc0e1965867bcf"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Mar 09 16:00:17 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 16:00:17 2010 -0800"
      },
      "message": "Merge \"Initial version of LifeVibes integration. Also changed tabs to spaces in other audioflinger files.\""
    },
    {
      "commit": "aa3780b6f7749c4f4d0a8258d8505da4681cfbfa",
      "tree": "20e9bfb591b16c86fa1310d675236efa31cb154c",
      "parents": [
        "d274979739ff6b8d3d6f552724f8a85f5de44fb0",
        "f0fa39ed7496ae43369fac306d765d7d86fa23d7"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Tue Mar 09 15:42:34 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 15:42:34 2010 -0800"
      },
      "message": "Merge \"Fix NO_CONNECTIVITY flag in some cases.\""
    },
    {
      "commit": "d274979739ff6b8d3d6f552724f8a85f5de44fb0",
      "tree": "2bcb98380112e3b715630b21882c3821394a4906",
      "parents": [
        "4acdcb721727dd32134d2e53376e4c3583c7f95a",
        "97566043afdb714fd4eea6bb22898964e95f16bc"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Tue Mar 09 15:38:56 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 15:38:56 2010 -0800"
      },
      "message": "Merge \"Fix ListView filter popups when window focus changes\""
    },
    {
      "commit": "97566043afdb714fd4eea6bb22898964e95f16bc",
      "tree": "1f082ba65d2fdd829dd2395afea84f7156fa74b5",
      "parents": [
        "1596136562e9bc5d0c808bb8c33816ea1303df40"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Tue Mar 09 15:34:09 2010 -0800"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Tue Mar 09 15:34:09 2010 -0800"
      },
      "message": "Fix ListView filter popups when window focus changes\n\nChange-Id: I8c468900d5dd4d8d82308e2bed3bf992b6c803c7\n"
    },
    {
      "commit": "9ffdfa0c238fce3b85741d7f6828fd484cd8f195",
      "tree": "b187b4936d33363f652e5d0cd5d1d2e9bfa577b7",
      "parents": [
        "33d1fdd6aa9ac9b59295756f151a49f2cf520691"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Tue Mar 09 13:18:02 2010 -0800"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Tue Mar 09 15:20:21 2010 -0800"
      },
      "message": "Speed up ContentProvider.query() in simple case by ~30%\n\nWhen query() uses bulkQuery() and we know we\u0027re going to need some\nmetadata right afterwards (number of rows and column index of _id, if\npresent), just asked for it in the initial binder transaction instead\nof immediately fetching it again.\n\nAlso, this defers loading column names until the client asks for them.\n\nThis gets down the simpler (and very common) use cases of\nContentProvider.query() down to 3 binder calls:\n\n   QUERY_TRANSACTION to android.content.ContentProvider$Transport\n   GET_CURSOR_WINDOW_TRANSACTION to android.database.CursorToBulkCursorAdaptor\n   CLOSE_TRANSACTION to android.database.CursorToBulkCursorAdaptor\n\nMore can still be done, but this is a good bite-sized first piece.\n\nChange-Id: I7ad45949f53e0097ff18c2478d659f0f36929693\n"
    },
    {
      "commit": "4acdcb721727dd32134d2e53376e4c3583c7f95a",
      "tree": "e323fe730133484f180f495454c4d0bb5665b0ba",
      "parents": [
        "17bc415ded862bc0a5f70ee2f7259f34d3491a17",
        "46af6a8b1f270b86f4e4a53b2c80fd20d8981af8"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Mar 09 14:57:41 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 14:57:42 2010 -0800"
      },
      "message": "Merge \"Don\u0027t let hidden keyguard interfere with button and screen brightness overrides\""
    },
    {
      "commit": "f0fa39ed7496ae43369fac306d765d7d86fa23d7",
      "tree": "73a1c9614d24bf6ad25f2361d9d81555c573938b",
      "parents": [
        "e8df25a9c6f9118e0136904883a777052c522cb0"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Tue Mar 09 14:55:08 2010 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Tue Mar 09 14:55:08 2010 -0800"
      },
      "message": "Fix NO_CONNECTIVITY flag in some cases.\n\nAirplane mode seemed to hit this bug.\n\nbug:2498268\nChange-Id: I5af9266fbbad3e2323d30d7471058f0f4ec3f544\n"
    },
    {
      "commit": "17bc415ded862bc0a5f70ee2f7259f34d3491a17",
      "tree": "bf22df846408b396d662ec90844d03bb0b2cba8a",
      "parents": [
        "1596136562e9bc5d0c808bb8c33816ea1303df40",
        "6ffce2e9a3c57634bb73f8ff133ca680f8070d5d"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Tue Mar 09 14:50:18 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 14:50:18 2010 -0800"
      },
      "message": "Merge \"Add new shutdown observer for MountService. Use new observer before rebooting and shutting down. Add some unit tests for unmount and shutdown code paths Fix registering/unregistering part in MountService Use ShutdownThread in PowerManager.reboot() Add reboot support to ShutdownThread. Remove MountService code from PowerManagerService.java and Power.java. Clean shutdown/reboot is handled exclusively by ShutdownThread now.\""
    },
    {
      "commit": "b4ca6ef9941701502a9ea4d298d7fe5602ba8e7a",
      "tree": "65d23e1cdb14571998cb415e81a614f1204da3fb",
      "parents": [
        "7e93cde228f90d4ee57457508a566d461f02a656"
      ],
      "author": {
        "name": "Ray Chen",
        "email": "raychen@google.com",
        "time": "Tue Mar 09 14:23:23 2010 -0800"
      },
      "committer": {
        "name": "Ray Chen",
        "email": "raychen@google.com",
        "time": "Tue Mar 09 14:23:23 2010 -0800"
      },
      "message": "Avoid overriding DATE_TAKEN by unreliable file time. MediaProvider will calculate it if needed.\n\nChange-Id: I05cb8628f2333c26de5c05ee1c7676b8f79a5e9a\n"
    },
    {
      "commit": "1596136562e9bc5d0c808bb8c33816ea1303df40",
      "tree": "9d654c9b27664f87658b22f032061f4f8ab104ff",
      "parents": [
        "7e93cde228f90d4ee57457508a566d461f02a656",
        "2d17e1d212ed88fdeca4b27bf04c17c56bd5dee1"
      ],
      "author": {
        "name": "Grace Kloba",
        "email": "klobag@google.com",
        "time": "Tue Mar 09 14:20:34 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 14:20:34 2010 -0800"
      },
      "message": "Merge \"Add an api to set WebView over scroll background.\""
    },
    {
      "commit": "7e93cde228f90d4ee57457508a566d461f02a656",
      "tree": "64cebd11ce5149c74ce8960b4438861c754004f3",
      "parents": [
        "c10275abd6a494c93a025f683dde104a5d4f2793",
        "fee20911e3ec97af64e4ac2c519d75b5f75e2a27"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Tue Mar 09 14:19:47 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 14:19:47 2010 -0800"
      },
      "message": "Merge \"Fix bug with AbsListView position scrolling\""
    },
    {
      "commit": "871c16cec850c042c61aa06a7ffc0e1965867bcf",
      "tree": "4eb07e9acdcaa01d10d5d3458c2659f715379c34",
      "parents": [
        "c10275abd6a494c93a025f683dde104a5d4f2793"
      ],
      "author": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Fri Mar 05 12:18:01 2010 -0800"
      },
      "committer": {
        "name": "Glenn Kasten",
        "email": "gkasten@google.com",
        "time": "Tue Mar 09 14:16:01 2010 -0800"
      },
      "message": "Initial version of LifeVibes integration.\nAlso changed tabs to spaces in other audioflinger files.\n"
    },
    {
      "commit": "6ffce2e9a3c57634bb73f8ff133ca680f8070d5d",
      "tree": "39b0492ba064caf003c47db9bd41ac0860e36743",
      "parents": [
        "8e461c9add08ac8705c50aa0357304aea6a5dbe0"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Mon Mar 08 14:48:40 2010 -0800"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Mar 09 17:00:18 2010 -0500"
      },
      "message": "Add new shutdown observer for MountService.\nUse new observer before rebooting and shutting down.\nAdd some unit tests for unmount and shutdown code paths\nFix registering/unregistering part in MountService\nUse ShutdownThread in PowerManager.reboot()\nAdd reboot support to ShutdownThread.\nRemove MountService code from PowerManagerService.java and Power.java.\nClean shutdown/reboot is handled exclusively by ShutdownThread now.\n\nChange-Id: Iefb157451d3d9c426cb431707b870a873c09123d\n"
    },
    {
      "commit": "c10275abd6a494c93a025f683dde104a5d4f2793",
      "tree": "89f8b128350c8da36714b10b02f20f073bbfe1b6",
      "parents": [
        "90ebc55f35ca0b3f5294c0bf7b15981178199bc4"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Mar 09 13:49:21 2010 -0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Mar 09 13:55:27 2010 -0800"
      },
      "message": "Document new preview callback methods more clearly.\n\nbug:2358064\nChange-Id: If6af1fbf81b78b2a7ad98ce2c398145fd33200ce\n"
    },
    {
      "commit": "fee20911e3ec97af64e4ac2c519d75b5f75e2a27",
      "tree": "2b97cab44d558e80658a896bd548d05ff8fa69f6",
      "parents": [
        "1c6743c40fcafdc77ad22557bb7a4b761029d13f"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Tue Mar 09 13:45:21 2010 -0800"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Tue Mar 09 13:45:21 2010 -0800"
      },
      "message": "Fix bug with AbsListView position scrolling\n\nChange-Id: I91338f0533178417c874325f5f126d1b5fbb5f92\n"
    },
    {
      "commit": "90ebc55f35ca0b3f5294c0bf7b15981178199bc4",
      "tree": "e5bc6f16dfb5d1ef7e22a25469b17b9404c9c0c1",
      "parents": [
        "877a7a2fe61329bfa70ecde0bcda96b7c3cbd6f6",
        "8648e37f82f15f0e13acc14e4cbf4df377cf8063"
      ],
      "author": {
        "name": "Vasu Nori",
        "email": "vnori@google.com",
        "time": "Tue Mar 09 13:42:20 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 13:42:20 2010 -0800"
      },
      "message": "Merge \"add REPLACE to the list of cached sql stmnts\""
    },
    {
      "commit": "877a7a2fe61329bfa70ecde0bcda96b7c3cbd6f6",
      "tree": "a5258fe1517008652ed5069479d250275b2280e3",
      "parents": [
        "1c6743c40fcafdc77ad22557bb7a4b761029d13f",
        "758559e6b7e310cf46cc269437f44decd58d68d6"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Mar 09 13:17:35 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 13:17:35 2010 -0800"
      },
      "message": "Merge \"Fix bug 2329540  Part 1 of the fix: when the user doesn\u0027t elect to use the car dock  for music and media, the APM was not aware of the device being  docked.  This is fixed by dissociating the notification for the APM of  the docking to the dock from the sink state change of the A2DP  device.  Also missing was forcing the volumes to be reevaluated whenever  the device is docked or undocked, as volumes for docks may  differ, even when the same output device is being used.\""
    },
    {
      "commit": "2d17e1d212ed88fdeca4b27bf04c17c56bd5dee1",
      "tree": "a5eb58b8ce407755fbce942390ee53737d29088f",
      "parents": [
        "1c6743c40fcafdc77ad22557bb7a4b761029d13f"
      ],
      "author": {
        "name": "Grace Kloba",
        "email": "klobag@google.com",
        "time": "Tue Mar 09 10:55:04 2010 -0800"
      },
      "committer": {
        "name": "Grace Kloba",
        "email": "klobag@google.com",
        "time": "Tue Mar 09 13:14:04 2010 -0800"
      },
      "message": "Add an api to set WebView over scroll background.\n\nIf the WebView doesn\u0027t support zoom, or WebView does\nnot use wide viewport and horizontal is just fit,\ndon\u0027t do over scroll.\n\nFix http://b/issue?id\u003d2498403\nFix http://b/issue?id\u003d2497901"
    },
    {
      "commit": "758559e6b7e310cf46cc269437f44decd58d68d6",
      "tree": "33b262fca683199cfcf6da3ab44c5d738731dced",
      "parents": [
        "a9fb0a2497e563c2066e10a816ff1f7baaf8aa9b"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Mar 09 09:26:08 2010 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Mar 09 12:45:55 2010 -0800"
      },
      "message": "Fix bug 2329540\n Part 1 of the fix: when the user doesn\u0027t elect to use the car dock\n for music and media, the APM was not aware of the device being\n docked.\n This is fixed by dissociating the notification for the APM of\n the docking to the dock from the sink state change of the A2DP\n device.\n Also missing was forcing the volumes to be reevaluated whenever\n the device is docked or undocked, as volumes for docks may\n differ, even when the same output device is being used.\n\nChange-Id: If5314e27821a71adbd6df6fdf887c45208241d96\n"
    },
    {
      "commit": "8648e37f82f15f0e13acc14e4cbf4df377cf8063",
      "tree": "e87887882f4d1b2a06de744c5a5d9bbfd31bbaae",
      "parents": [
        "afe806a4a32aa035995136b169e0388ec4a915b7"
      ],
      "author": {
        "name": "Vasu Nori",
        "email": "vnori@google.com",
        "time": "Tue Mar 09 12:33:39 2010 -0800"
      },
      "committer": {
        "name": "Vasu Nori",
        "email": "vnori@google.com",
        "time": "Tue Mar 09 12:33:39 2010 -0800"
      },
      "message": "add REPLACE to the list of cached sql stmnts\n"
    },
    {
      "commit": "1c6743c40fcafdc77ad22557bb7a4b761029d13f",
      "tree": "b4fca4fcc729ba8c7548dc106a5f01276ac57eb2",
      "parents": [
        "637c0dce32c4966f4a7a035ae9858f3ef063019d",
        "a599fe7c0d8b4d4bdf4accb099cb17bebcb9088b"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Tue Mar 09 11:55:53 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 11:55:53 2010 -0800"
      },
      "message": "Merge \"Re-add tethered notification to framework.\""
    },
    {
      "commit": "637c0dce32c4966f4a7a035ae9858f3ef063019d",
      "tree": "a998afdb7c4c221df009b8aa18f0690bec8a9d1d",
      "parents": [
        "7a37587664baf274633db415c4a2589288b653b0",
        "463ceff8a44ec2bf67b0394be7f7e70613a55478"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Tue Mar 09 11:55:05 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 11:55:05 2010 -0800"
      },
      "message": "Merge \"Restore old/buggy behavior of ListView.getCheckItemIds() for adapters without stable IDs to support legacy code.\""
    },
    {
      "commit": "7a37587664baf274633db415c4a2589288b653b0",
      "tree": "40722fa7931aeaccaed7256d8d7fa22e949e53aa",
      "parents": [
        "f53774bce6f31ac0ae3dd21ab41aa607e548e703"
      ],
      "author": {
        "name": "Leon Scroggins",
        "email": "scroggo@google.com",
        "time": "Tue Mar 09 14:26:07 2010 -0500"
      },
      "committer": {
        "name": "Leon Scroggins",
        "email": "scroggo@google.com",
        "time": "Tue Mar 09 14:52:40 2010 -0500"
      },
      "message": "Set mShiftIsPressed properly when the focus is a plugin.\n\nFix for http://b/issue?id\u003d2484986\n\nChange-Id: I3140c3c3a0bd44af85939aceb0bbd07c0861cde4\n"
    },
    {
      "commit": "463ceff8a44ec2bf67b0394be7f7e70613a55478",
      "tree": "00a60f8157a87e63a49ee0cec3f2e7f511140bb2",
      "parents": [
        "f4743a869d8ee74b55a5f6335a554b011cfa33ab"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Tue Mar 09 11:50:51 2010 -0800"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Tue Mar 09 11:50:51 2010 -0800"
      },
      "message": "Restore old/buggy behavior of ListView.getCheckItemIds() for adapters without stable IDs to support legacy code.\n\nChange-Id: I4c6a15e5a224bc5e84949ceb4df17154a2874d20\n"
    },
    {
      "commit": "f53774bce6f31ac0ae3dd21ab41aa607e548e703",
      "tree": "89c1367b15cb20106451789923c37f7990e40696",
      "parents": [
        "6692239a2349683528c3840a0fc597cee91e461d",
        "afe806a4a32aa035995136b169e0388ec4a915b7"
      ],
      "author": {
        "name": "Vasu Nori",
        "email": "vnori@google.com",
        "time": "Tue Mar 09 11:46:57 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 11:46:57 2010 -0800"
      },
      "message": "Merge \"modify comments to be more accurate\""
    },
    {
      "commit": "6692239a2349683528c3840a0fc597cee91e461d",
      "tree": "43294176a99f24e5d92bbfaae16bb235a37f54b9",
      "parents": [
        "c2242f2b5f7daa6dcb1821beeacdc649313d8392",
        "2869e952c65548555a9fc197c1f8ceb5b7470462"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Mar 09 11:43:31 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 11:43:31 2010 -0800"
      },
      "message": "Merge \"Fix a typo in VideoView.java that disabled the seek-back button by default.\""
    },
    {
      "commit": "afe806a4a32aa035995136b169e0388ec4a915b7",
      "tree": "2681d6a56326b87970ff0a22a027ca78156b9a08",
      "parents": [
        "49d02acec84cc0382286fa233135bb5c74d5bdbf"
      ],
      "author": {
        "name": "Vasu Nori",
        "email": "vnori@google.com",
        "time": "Tue Mar 09 11:37:52 2010 -0800"
      },
      "committer": {
        "name": "Vasu Nori",
        "email": "vnori@google.com",
        "time": "Tue Mar 09 11:37:52 2010 -0800"
      },
      "message": "modify comments to be more accurate\n"
    },
    {
      "commit": "c2242f2b5f7daa6dcb1821beeacdc649313d8392",
      "tree": "2d5ef6646754ea3f86e45c760cd80ffb61066030",
      "parents": [
        "5b9bcda3a26e9b1f9b1eff28a2be8853d69614f0"
      ],
      "author": {
        "name": "Grace Kloba",
        "email": "klobag@google.com",
        "time": "Fri Mar 05 14:00:26 2010 -0800"
      },
      "committer": {
        "name": "Grace Kloba",
        "email": "klobag@google.com",
        "time": "Tue Mar 09 11:33:51 2010 -0800"
      },
      "message": "Rewrite the WebView touch to support Flash.\n\nWhen a page is loaded, Flash won\u0027t be the touch target.\nThis is ensured by another CL in external/webkit. When\nuser taps or uses nav key to make the Flash to be the\ndocument focused node, it will take all the touch\nevents without time out. If Flash didn\u0027t call prevent\ndefault, these touch events will be reprocessed by\nthe Browser. For double tap and long press, Browser\nneeds to detect and generate them for Flash.\n\nWhile Flash is in full screen mode, it will take all\nthe touch events. If Flash doesn\u0027t consume them, they\nwon\u0027t be reprocessed by the Browser. Browser does need\nto detect and generate the special events like double\ntap and long press for full screen Flash.\n\nHere are changes made for JavaScript touch events.\n\n1. preventDefault on touchMove works now. If the author\ncalls preventDefault on touchStart, UI will not handle\nthis touch sequence. If the author didn\u0027t call preventDefault\non touchStart, it can call preventDefault on the first\ntouchMove to prevent UI from panning the page. We\ncurrently do not support alternating preventDefault\nduring touchMove.\n\n2. The first touchMove is only sent when the movement\nis more than the system slop. There was a bug introduced by\nhttps://android-git.corp.google.com/g/#change,42848\nwhere the touch events are not sent to WebCore if \npreventDefault is called. This is fixed now.\n\n3. Move sending TOUCH_EVENT to WebCore into each state.\nSo if user stops a fling and continue drag, it won\u0027t\nsend the touch_down as we are in drag mode.\n\n4. Remove event time as Adobe doesn\u0027t need it any more\n\nFix http://b/issue?id\u003d2438503\nFix http://b/issue?id\u003d2478701\nFix http://b/issue?id\u003d2390587\n \n"
    },
    {
      "commit": "a599fe7c0d8b4d4bdf4accb099cb17bebcb9088b",
      "tree": "ba7213c581a68053bd92d530d85987bace8c2599",
      "parents": [
        "e8df25a9c6f9118e0136904883a777052c522cb0"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Mon Mar 08 18:30:14 2010 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Tue Mar 09 11:20:13 2010 -0800"
      },
      "message": "Re-add tethered notification to framework.\n\nAdd new artwork and string.\n\nChange-Id: I9c4b2b4bdbd10ee9355c3a7ca81b29fba3b5830c\n"
    },
    {
      "commit": "5b9bcda3a26e9b1f9b1eff28a2be8853d69614f0",
      "tree": "3c5f8d5c8f5d3f53dc0fd0d6a4b90eb8df30f53b",
      "parents": [
        "e8df25a9c6f9118e0136904883a777052c522cb0"
      ],
      "author": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Sun Mar 07 14:59:28 2010 -0800"
      },
      "committer": {
        "name": "Wu-cheng Li",
        "email": "wuchengli@google.com",
        "time": "Tue Mar 09 11:11:47 2010 -0800"
      },
      "message": "Unhide new preview callback methods.\n\nbug:2358064\nChange-Id: If9655ae8b7622ea6fc51e0054cfac7451962be66\n"
    },
    {
      "commit": "e8df25a9c6f9118e0136904883a777052c522cb0",
      "tree": "dfe75e9343c3feabe95b4f96977f40126fd45841",
      "parents": [
        "f4743a869d8ee74b55a5f6335a554b011cfa33ab",
        "b7af28e986f41e7d6f7b74aef5b79ce947ad5de8"
      ],
      "author": {
        "name": "Mike LeBeau",
        "email": "mlebeau@android.com",
        "time": "Tue Mar 09 10:43:47 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 10:43:47 2010 -0800"
      },
      "message": "Merge \"Add new LoggingEvents for more detailed text modification actions for voice input.\""
    },
    {
      "commit": "b7af28e986f41e7d6f7b74aef5b79ce947ad5de8",
      "tree": "6e4e9ed8af99f6bd9580b447e2b76162123e54a9",
      "parents": [
        "eba0f753b26bfc9a4a39b9296878581b5e6704a0"
      ],
      "author": {
        "name": "Mike LeBeau",
        "email": "mlebeau@android.com",
        "time": "Tue Mar 09 10:42:35 2010 -0800"
      },
      "committer": {
        "name": "Mike LeBeau",
        "email": "mlebeau@android.com",
        "time": "Tue Mar 09 10:42:35 2010 -0800"
      },
      "message": "Add new LoggingEvents for more detailed text modification actions for voice input.\n\nChange-Id: I70df3612067f1c8c512a7bbe6c02381724f76bbf\n"
    },
    {
      "commit": "f4743a869d8ee74b55a5f6335a554b011cfa33ab",
      "tree": "56f8dd9aae03714fbf95b26a665577d3996f99f4",
      "parents": [
        "6509662adb12a506f3d584630f78d0edc9a62922",
        "b21651c10ca833e073337ae6a0ee55fcc39c32f1"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Mar 09 10:31:30 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 10:31:30 2010 -0800"
      },
      "message": "Merge \"Fix bug 2481825 When TTS is synthesizing to a file, return an error if the file cannot be created.\""
    },
    {
      "commit": "2869e952c65548555a9fc197c1f8ceb5b7470462",
      "tree": "7056b2845dabd3fb54652337876d2a2113e50353",
      "parents": [
        "a9fb0a2497e563c2066e10a816ff1f7baaf8aa9b"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Mar 09 09:18:01 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Mar 09 10:26:13 2010 -0800"
      },
      "message": "Fix a typo in VideoView.java that disabled the seek-back button by default.\n\nChange-Id: I23a9423b20646529b652e23349266a3291981484\nrelated-to-bug: 2498317\n"
    },
    {
      "commit": "6509662adb12a506f3d584630f78d0edc9a62922",
      "tree": "5f7ba0cbab544e0f1df9d4d3c38f20f101991c34",
      "parents": [
        "1898a9dbc9bc7acbd9d39f6bca407862c4aadbad",
        "0409857f8ff1b140733537db4bf56ccc663318e7"
      ],
      "author": {
        "name": "Andrei Popescu",
        "email": "andreip@google.com",
        "time": "Tue Mar 09 10:06:23 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 10:06:23 2010 -0800"
      },
      "message": "Merge \"Make sure access to WebView::mWebViewCore is synchronized.\""
    },
    {
      "commit": "0409857f8ff1b140733537db4bf56ccc663318e7",
      "tree": "55d0c175ad42584cc7cbaff69ac53fd8b83571c8",
      "parents": [
        "abf19abe4808114cae3f274773a267603f18c923"
      ],
      "author": {
        "name": "Andrei Popescu",
        "email": "andreip@google.com",
        "time": "Tue Mar 09 12:23:19 2010 +0000"
      },
      "committer": {
        "name": "Andrei Popescu",
        "email": "andreip@google.com",
        "time": "Tue Mar 09 18:04:35 2010 +0000"
      },
      "message": "Make sure access to WebView::mWebViewCore is synchronized.\n\nFix bug: 2498784\n"
    },
    {
      "commit": "1898a9dbc9bc7acbd9d39f6bca407862c4aadbad",
      "tree": "71c334290d68926783300cf35fb4877000edd43c",
      "parents": [
        "abf19abe4808114cae3f274773a267603f18c923",
        "1a9c27c312ba20b2ceafcde18ce451724782d2a5"
      ],
      "author": {
        "name": "Ficus Kirkpatrick",
        "email": "ficus@android.com",
        "time": "Tue Mar 09 10:01:00 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 10:01:00 2010 -0800"
      },
      "message": "Merge \"Add a LOG_TAG for android.graphics.Graphics JNI.\""
    },
    {
      "commit": "1a9c27c312ba20b2ceafcde18ce451724782d2a5",
      "tree": "0e34b97f5a337e64c63b0d58afc3920ade882650",
      "parents": [
        "f0fd8436b3ec2aa47cd5de61072b8395bbe46765"
      ],
      "author": {
        "name": "Ficus Kirkpatrick",
        "email": "ficus@android.com",
        "time": "Fri Mar 05 17:05:08 2010 -0800"
      },
      "committer": {
        "name": "Ficus Kirkpatrick",
        "email": "ficus@android.com",
        "time": "Tue Mar 09 10:00:31 2010 -0800"
      },
      "message": "Add a LOG_TAG for android.graphics.Graphics JNI.\n\nIt occasionally logs when it fails an allocation but wasn\u0027t\ndefining one before.\n\nChange-Id: Ifc41addc870eb126616ad44465638423d51568d9\n"
    },
    {
      "commit": "abf19abe4808114cae3f274773a267603f18c923",
      "tree": "749cf35831951e302070385ea40183a5ca15772d",
      "parents": [
        "f0fd8436b3ec2aa47cd5de61072b8395bbe46765",
        "a2b6c3775ed6b8924232d6a01bae4a19740a15f8"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Tue Mar 09 09:58:40 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 09:58:40 2010 -0800"
      },
      "message": "Merge \"Add conditions to check for updated system applications. Restrict them to internal flash only even before we copy.\""
    },
    {
      "commit": "f0fd8436b3ec2aa47cd5de61072b8395bbe46765",
      "tree": "93c9b38f3c5401b63cd37b898e7c241559f15186",
      "parents": [
        "a9fb0a2497e563c2066e10a816ff1f7baaf8aa9b"
      ],
      "author": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Mon Mar 08 12:48:05 2010 -0800"
      },
      "committer": {
        "name": "Fred Quintana",
        "email": "fredq@google.com",
        "time": "Tue Mar 09 09:45:16 2010 -0800"
      },
      "message": "- add verbose logging to the authenticator\n- fix a bug in AccountManager.getAuthTokenByFeatures() where getAuthToken()\n  isn\u0027t called after adding the account when necessary\n"
    },
    {
      "commit": "a2b6c3775ed6b8924232d6a01bae4a19740a15f8",
      "tree": "f78953add86351bd04f2788c712b1285497e2016",
      "parents": [
        "a9fb0a2497e563c2066e10a816ff1f7baaf8aa9b"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Fri Mar 05 17:40:11 2010 -0800"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Tue Mar 09 09:24:35 2010 -0800"
      },
      "message": "Add conditions to check for updated system applications. Restrict them\nto internal flash only even before we copy.\n\nReturn error codes when install flag options mismatch.\nSome conditions for existings apps\n - install flags override existing location\n - explicity manifest option install location overrides previous location\n - if upgraded package\u0027s install location is unspecified or auto, fall\n   back to recommended install policy which considers user setting as well.\n\nCheck for sdcard status before finding available size on sdcard\nAdd light weight parsing for manifest attributes including package name and\ninstall location only\n\nChange-Id: I5143dda87c88c595f564b317326c926d0ec3ceb8\n"
    },
    {
      "commit": "a9fb0a2497e563c2066e10a816ff1f7baaf8aa9b",
      "tree": "ab2294c18c5fa507e0753fe0f7f3ca919fa2b530",
      "parents": [
        "15b3287994b92bb9bff10e65a56bc8a663d0e05d",
        "eabb6df2fac57134b82f90a63730b2371589bded"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Mar 09 09:17:45 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 09:17:45 2010 -0800"
      },
      "message": "Merge \"Unhide API additions to AudioManager for AudioFocus support.\""
    },
    {
      "commit": "eabb6df2fac57134b82f90a63730b2371589bded",
      "tree": "e0fa760856e1894134b8b7d4b1ffd165edf55147",
      "parents": [
        "3dc02fecbe87484133e3c07fe194d7d7327cfe39"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Mar 08 16:19:01 2010 -0800"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Mar 09 09:15:19 2010 -0800"
      },
      "message": "Unhide API additions to AudioManager for AudioFocus support.\n\nChange-Id: Ifc7d764703632eb91db11587675ae70ec14510e8\n"
    },
    {
      "commit": "15b3287994b92bb9bff10e65a56bc8a663d0e05d",
      "tree": "5b571e613b615f2d17772686bfea7ee8f22d6028",
      "parents": [
        "3dc02fecbe87484133e3c07fe194d7d7327cfe39",
        "29a02a95cb6b24da3aefc2c7df8b13caeec59b03"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Tue Mar 09 09:09:27 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 09:09:27 2010 -0800"
      },
      "message": "Merge \"Use a more descriptive user-agent string (similar to PV\u0027s before) in stagefright http requests.\""
    },
    {
      "commit": "3dc02fecbe87484133e3c07fe194d7d7327cfe39",
      "tree": "04543c5261c34777ee43699e4a220e5d2bf9cd3b",
      "parents": [
        "33d1fdd6aa9ac9b59295756f151a49f2cf520691"
      ],
      "author": {
        "name": "Leon Scroggins",
        "email": "scroggo@google.com",
        "time": "Tue Mar 09 11:27:34 2010 -0500"
      },
      "committer": {
        "name": "Leon Scroggins",
        "email": "scroggo@google.com",
        "time": "Tue Mar 09 11:27:34 2010 -0500"
      },
      "message": "For flash trackball, send several downs followed by a single up.\n\nChange-Id: I2ca892bc409372ab1389f2da8254f13b2d84351c\n"
    },
    {
      "commit": "33d1fdd6aa9ac9b59295756f151a49f2cf520691",
      "tree": "d0dfc7ec23ea639084932e3bca501a46b4d4e5ef",
      "parents": [
        "31b83675707a2439995583a12322c9a928b0d361",
        "5ac2a3bd697cb86022aa7d4dc0c8fbd6a10b8193"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Tue Mar 09 07:02:18 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 07:02:18 2010 -0800"
      },
      "message": "Merge \"Removes from DumpRenderTree the superfluous result file for tests that time out.\""
    },
    {
      "commit": "31b83675707a2439995583a12322c9a928b0d361",
      "tree": "f47594afd73dbd6419c17a037f0346148b1cf082",
      "parents": [
        "8e461c9add08ac8705c50aa0357304aea6a5dbe0"
      ],
      "author": {
        "name": "Cary Clark",
        "email": "cary@android.com",
        "time": "Tue Mar 09 09:20:34 2010 -0500"
      },
      "committer": {
        "name": "Cary Clark",
        "email": "cary@android.com",
        "time": "Tue Mar 09 10:00:30 2010 -0500"
      },
      "message": "requestChildRectangleOnScreen takes layers into account\n\nCall native LayerAndroid::subtractLayers so\nthe layers can be removed from the visible portion of the screen\nwhen computing how much to scroll.\n\ncompanion fix in external/webkit\n\nChange-Id: Ib441b826ab5b2baaba20f41f392848a28a9e09ee\nhttp://b/2453841\n"
    },
    {
      "commit": "5ac2a3bd697cb86022aa7d4dc0c8fbd6a10b8193",
      "tree": "4a9609a9cda731fa9f7af6ebab5bb25898dd2c9c",
      "parents": [
        "8e461c9add08ac8705c50aa0357304aea6a5dbe0"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Tue Mar 09 14:36:00 2010 +0000"
      },
      "committer": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Tue Mar 09 14:36:00 2010 +0000"
      },
      "message": "Removes from DumpRenderTree the superfluous result file for tests that time out.\n\nThis file is currently not used. Tests that time out are reported as failures.\n\nAlso fixes naming in code for tests that have no text results.\n\nChange-Id: I6412db4dcf9884abdc80f5cff525ef9431bad001\n"
    },
    {
      "commit": "8e461c9add08ac8705c50aa0357304aea6a5dbe0",
      "tree": "00f05e0d64b8181804181a31366dfb9101516115",
      "parents": [
        "9b90a7e842d81ac336f6e38bfd7811d076635875",
        "9902279abb999eb7b5c75f70ec1f714cf567793b"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Tue Mar 09 05:42:09 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 05:42:09 2010 -0800"
      },
      "message": "Merge \"Removes regex tests from the DumpRenderTree skipped list\""
    },
    {
      "commit": "46af6a8b1f270b86f4e4a53b2c80fd20d8981af8",
      "tree": "f859d052227633c7986ecfa80a54f484d885551c",
      "parents": [
        "2e2096fc08c29f55aae60093b2cd48f4edf4b88e"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Mar 09 08:28:22 2010 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Mar 09 08:31:30 2010 -0500"
      },
      "message": "Don\u0027t let hidden keyguard interfere with button and screen brightness overrides\n\nChange-Id: Ibdc115b8fb6900b0f859085c13a707750deeab57\nBUG: 2252317\n\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "9902279abb999eb7b5c75f70ec1f714cf567793b",
      "tree": "8bce978f593fe523fe74da678c6d6a3dfef6aad5",
      "parents": [
        "432e0eade76f64c36ae72d94c4f33d8e8ecc975a"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Tue Mar 09 12:23:57 2010 +0000"
      },
      "committer": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Tue Mar 09 12:29:59 2010 +0000"
      },
      "message": "Removes regex tests from the DumpRenderTree skipped list\n\nIt looks like these were previously exluded due to taking too long. However,\nthey run in a reasonable time on passion.\n\nAlso removes AppleScript from the skipped list, as this directory no longer exists.\n\nChange-Id: I98e3d0b3222dcd79287b15c512430341fab4f0f8\n"
    },
    {
      "commit": "9b90a7e842d81ac336f6e38bfd7811d076635875",
      "tree": "b44cf8e2c39443043a95efb5ca3db463326c9794",
      "parents": [
        "1bd62bd3ca4d098196e91b43799d4010c1d26623",
        "432e0eade76f64c36ae72d94c4f33d8e8ecc975a"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Tue Mar 09 04:25:13 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Mar 09 04:25:13 2010 -0800"
      },
      "message": "Merge \"Add shared workers tests to DumpRenderTree skipped list\""
    },
    {
      "commit": "432e0eade76f64c36ae72d94c4f33d8e8ecc975a",
      "tree": "c60460632f80e172cbde299b740da006d88f650a",
      "parents": [
        "68da044d3a7bfe77fdc0f6c447963a6018d030ed"
      ],
      "author": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Fri Mar 05 18:54:55 2010 +0000"
      },
      "committer": {
        "name": "Steve Block",
        "email": "steveblock@google.com",
        "time": "Tue Mar 09 12:20:48 2010 +0000"
      },
      "message": "Add shared workers tests to DumpRenderTree skipped list\n\nChange-Id: I307bf718253ad3e340d3a95b1056523f37d150be\n"
    },
    {
      "commit": "1bd62bd3ca4d098196e91b43799d4010c1d26623",
      "tree": "0100fd907399e541cf8b44a23f4112ce95de51d3",
      "parents": [
        "f19d43d8805948a85924706f76ef9b0eb5f80c9f"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Mon Mar 08 18:30:52 2010 -0800"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Mon Mar 08 22:20:43 2010 -0800"
      },
      "message": "Cache hot settings in-memory in the SettingsProvider.\n\nThis brings down Settings lookups to 0.5 ms on sholes.  (down from\n~10.5 ms originally, and ~2.5 ms after the ContentProvider.call()\ninterface)\n\nChange-Id: Ibde7c3d21e0b0e5714714a2075f314726edfc19d\n"
    },
    {
      "commit": "f19d43d8805948a85924706f76ef9b0eb5f80c9f",
      "tree": "0b7c4b3848fa32421dc2fadccdd0f3cc55a632cc",
      "parents": [
        "4a8a310aae4280cd54957e75fcece592601d6625",
        "dfb437e17c6ba3b29f9e636d064125668d706249"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Mon Mar 08 22:18:52 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 08 22:18:52 2010 -0800"
      },
      "message": "Merge \"Fix Parcel leak in ContentProvider.call()\""
    },
    {
      "commit": "dfb437e17c6ba3b29f9e636d064125668d706249",
      "tree": "d3a7639f3d6c3532b043b9e742227e0ae06b0fcb",
      "parents": [
        "68da044d3a7bfe77fdc0f6c447963a6018d030ed"
      ],
      "author": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Mon Mar 08 22:11:50 2010 -0800"
      },
      "committer": {
        "name": "Brad Fitzpatrick",
        "email": "bradfitz@android.com",
        "time": "Mon Mar 08 22:12:49 2010 -0800"
      },
      "message": "Fix Parcel leak in ContentProvider.call()\n\nThis manifested itself as memory allocation and Binder failures during\nmy load testing / benchmarking.\n\nBUG\u003d2498615\n\nChange-Id: I260fd916f97777fc98bee98d10474f12deb21dee\n"
    },
    {
      "commit": "4a8a310aae4280cd54957e75fcece592601d6625",
      "tree": "dbddfba5a5dc72c4ed3f0848005f9b34cb9695c4",
      "parents": [
        "85b8d12207c12531d736c7ec836f10d1e6f448e4"
      ],
      "author": {
        "name": "Dmitri Plotnikov",
        "email": "dplotnikov@google.com",
        "time": "Mon Mar 08 19:40:19 2010 -0800"
      },
      "committer": {
        "name": "Dmitri Plotnikov",
        "email": "dplotnikov@google.com",
        "time": "Mon Mar 08 19:43:21 2010 -0800"
      },
      "message": "New (hidden) API for ContactsProvider status.\n\nBug: 2498528\nChange-Id: I95ab8b68c3d3caa5698e79c60ccb9794091e8b8a\n"
    },
    {
      "commit": "85b8d12207c12531d736c7ec836f10d1e6f448e4",
      "tree": "80b6ffa465ebbc18a72a91beaab14e06045ed192",
      "parents": [
        "50ab63f5831fed5cfa888fb67f0a27eb4c0a86c4"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Mar 08 19:29:09 2010 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Mar 08 19:30:56 2010 -0800"
      },
      "message": "improve SF logging/debugging a little bit\n\nChange-Id: I6a57f89c25defc293fd748cc1fbd710031c02ec2\n"
    },
    {
      "commit": "50ab63f5831fed5cfa888fb67f0a27eb4c0a86c4",
      "tree": "156e3ff391ff48fa39a52ee16c10fe11961d8ca7",
      "parents": [
        "8d8a915a935378405fcf9978b83bd815ac5a265c"
      ],
      "author": {
        "name": "Dan Morrill",
        "email": "morrildl@google.com",
        "time": "Fri Mar 05 16:16:19 2010 -0800"
      },
      "committer": {
        "name": "Dan Morrill",
        "email": "morrildl@google.com",
        "time": "Mon Mar 08 19:28:28 2010 -0800"
      },
      "message": "Adding definitions \u0026 APIs for features that are newly-optional in FroYo.\nThis also refactors the files containing the features so that they are more\nmodular. Note that this also changes data/etc/Android.mk so that\nrequired_hardware.xml is NOT copied automatically for all devices\nanymore. Accordingly, that file is removed.\n"
    },
    {
      "commit": "8d8a915a935378405fcf9978b83bd815ac5a265c",
      "tree": "03c8c93c2ebce03a7100ea6c797ff5caac55b517",
      "parents": [
        "ca14320fa28b818d755cff8f0c2ff4c780d30105",
        "4119c543024b4ae647b22a2da1422f8848a6ef7a"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Mar 08 19:24:27 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 08 19:24:27 2010 -0800"
      },
      "message": "Merge \"Fix a small bug where we could compute SharedBufferStack\u0027s tail incorrectly.\""
    },
    {
      "commit": "4119c543024b4ae647b22a2da1422f8848a6ef7a",
      "tree": "259188a8db6b8d22d286ea14dd8fd989de5ae91e",
      "parents": [
        "0e0b0c9e3d2c2edf8deff1f02b7856ad47db3ff9"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Mar 08 19:23:26 2010 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Mar 08 19:23:26 2010 -0800"
      },
      "message": "Fix a small bug where we could compute SharedBufferStack\u0027s tail incorrectly.\n\nAlso add \"tail\" to the debug dump().\n\nChange-Id: I04b1ea375dfc9ddcc22f0c6b6cd01300e507572e\n"
    },
    {
      "commit": "ca14320fa28b818d755cff8f0c2ff4c780d30105",
      "tree": "c12dc28487f09261933b9e7e9188914219e81a05",
      "parents": [
        "eb6a592a283012fa3a93aad4a137b93ab9aa07ee",
        "efd13938013099e58f4dcbf818f508c585547817"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Mon Mar 08 19:23:01 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 08 19:23:01 2010 -0800"
      },
      "message": "Merge \"More consistent and clear traces.txt reporting.\""
    },
    {
      "commit": "efd13938013099e58f4dcbf818f508c585547817",
      "tree": "af0abf19e17bd334fdd2bf6a6a65110d4c403ade",
      "parents": [
        "823961a3191b365cabf3745ee2f5f0cff059cdff"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Mon Mar 08 13:04:13 2010 -0800"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Mon Mar 08 19:21:32 2010 -0800"
      },
      "message": "More consistent and clear traces.txt reporting.\n\nPrint ANR traces.txt even if it\u0027s old.\nPrint more detailed error messages about VM trace dumps.\n\nChange-Id: I067c90b8f3b3647b6136528eff3120e6cfea5715\n"
    },
    {
      "commit": "eb6a592a283012fa3a93aad4a137b93ab9aa07ee",
      "tree": "75eea241a837ed4d027628317162cefb0476f874",
      "parents": [
        "2e2096fc08c29f55aae60093b2cd48f4edf4b88e",
        "029cfbd6f28e1664e8ef77ea928560f20ac3fb8e"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Mon Mar 08 19:11:16 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 08 19:11:16 2010 -0800"
      },
      "message": "Merge \"Fix issues with ListView.smoothScrollBy\""
    },
    {
      "commit": "029cfbd6f28e1664e8ef77ea928560f20ac3fb8e",
      "tree": "d845aab18a8be7c67f1c94225691e41da45b765b",
      "parents": [
        "453e60db6e3946334acc48b05bc847cef49bc4d7"
      ],
      "author": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Mon Mar 08 19:03:54 2010 -0800"
      },
      "committer": {
        "name": "Adam Powell",
        "email": "adamp@google.com",
        "time": "Mon Mar 08 19:07:14 2010 -0800"
      },
      "message": "Fix issues with ListView.smoothScrollBy\n\nChange-Id: I4a2752c56a1d2ad3227644f764d6be7a02c9eb8d\n"
    },
    {
      "commit": "2e2096fc08c29f55aae60093b2cd48f4edf4b88e",
      "tree": "9c8c1aa33269a1d7a3861530d09b51d0ebc59b95",
      "parents": [
        "c4e26a5c99b261c956b9b47ab11217b20f539df8"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Mar 08 18:11:37 2010 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Mon Mar 08 18:11:37 2010 -0800"
      },
      "message": "Add comments in CleanSpec.mk\n\nChange-Id: Iaa1f9f38c0e621d2988e341a5fcff3164a62cf66\n"
    },
    {
      "commit": "c4e26a5c99b261c956b9b47ab11217b20f539df8",
      "tree": "4034f3412b6fb0ff15a003ec3913541dbb9fd9c2",
      "parents": [
        "3eeffc1857d4340f8f87ab57ede899b86cf11c54",
        "aeae357f6399aee68fb7a60e1a38b82c0062711c"
      ],
      "author": {
        "name": "Dmitri Plotnikov",
        "email": "dplotnikov@google.com",
        "time": "Mon Mar 08 18:04:24 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 08 18:04:24 2010 -0800"
      },
      "message": "Merge \"Showing phonetic name in the contact header.\""
    },
    {
      "commit": "3eeffc1857d4340f8f87ab57ede899b86cf11c54",
      "tree": "ea864671559527f15ae8faa82756ca10db50fa23",
      "parents": [
        "56ec3c888a19b16ef056c157ed63d94adef7f201",
        "4165dd21592c958bacc97043d56b1ea914ab94c9"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Mon Mar 08 17:50:56 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 08 17:50:56 2010 -0800"
      },
      "message": "Merge \"keystore: add AID_ROOT into the user table.\""
    },
    {
      "commit": "56ec3c888a19b16ef056c157ed63d94adef7f201",
      "tree": "3c9d61c71bd13e829de019f58cc27847c4924493",
      "parents": [
        "9161e202d18ff31946fcd320641bc53abdc61afe",
        "3e141685003939a9addce21ba2492ea3a8aebee6"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Mon Mar 08 17:46:36 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 08 17:46:36 2010 -0800"
      },
      "message": "Merge \"Fix scrolling bug in AutoCompleteTextView. Bug #2495033\""
    },
    {
      "commit": "3e141685003939a9addce21ba2492ea3a8aebee6",
      "tree": "94272f31a5f8eec7d80c6c91657ba69a26ac6bfe",
      "parents": [
        "31e78e07254d672797c5972beba39b0e6f154184"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Mon Mar 08 17:44:40 2010 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Mon Mar 08 17:44:40 2010 -0800"
      },
      "message": "Fix scrolling bug in AutoCompleteTextView.\nBug #2495033\n\nThis fixes various issues. ACTV would sometimes not update its popup to match\nits size/location.\n\nChange-Id: Ic662bddf40e49b09482b15ff91666be3709da1d5\n"
    },
    {
      "commit": "4165dd21592c958bacc97043d56b1ea914ab94c9",
      "tree": "a0be4daa704d767d32fe77e293479d96a009bbe8",
      "parents": [
        "c6120193efebf426186b24520d70ec3e4a4aeadf"
      ],
      "author": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Tue Mar 09 09:41:32 2010 +0800"
      },
      "committer": {
        "name": "Chia-chi Yeh",
        "email": "chiachi@android.com",
        "time": "Tue Mar 09 09:44:07 2010 +0800"
      },
      "message": "keystore: add AID_ROOT into the user table.\n\nChange-Id: I4b9cf24d75ca79583d7913bbb2c33745a2316cde\n"
    },
    {
      "commit": "9161e202d18ff31946fcd320641bc53abdc61afe",
      "tree": "2f12628bfdd8e973b41b0a0ba346f2c81a04c7e0",
      "parents": [
        "f1f90d4abac3f4561b166eb90701cc741cf29ce1",
        "e3491b6b5f1d3fb871074766597b275d9f682faa"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Mar 08 17:14:25 2010 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Mar 08 17:14:25 2010 -0800"
      },
      "message": "merge from open-source master\n\nChange-Id: I66d3db4c9ed3f54ce17a8d64ca0c6cce6941cdaa\n"
    },
    {
      "commit": "f1f90d4abac3f4561b166eb90701cc741cf29ce1",
      "tree": "343427e04324287224a92ace3936c9a89021fd6f",
      "parents": [
        "2ba1af34f95a89dc2b28d295bd0bf538d73ce0da",
        "b1b13711502ca4817b9afcf05c85b1b6b088d3ab"
      ],
      "author": {
        "name": "Daniel Lehmann",
        "email": "lehmannd@google.com",
        "time": "Mon Mar 08 17:10:03 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 08 17:10:03 2010 -0800"
      },
      "message": "Merge \"Expose the Uri of the newly created contact Bug: 2448065\""
    },
    {
      "commit": "2ba1af34f95a89dc2b28d295bd0bf538d73ce0da",
      "tree": "78f1a74cc519544de6dd7ad9541f0d8f784a5858",
      "parents": [
        "2509d3c11fa247d37d023e32411e6dad15d85b85",
        "1127895fd42111f95fdc5049141c512e60198292"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Mon Mar 08 16:59:48 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 08 16:59:48 2010 -0800"
      },
      "message": "Merge \"Guard against calls to getTextAfterCursor() in text that has no cursor.\""
    },
    {
      "commit": "29a02a95cb6b24da3aefc2c7df8b13caeec59b03",
      "tree": "5493ffe460d4d459f5388759375f63d2fe95fb27",
      "parents": [
        "147113ee54e18094d3a8829c37a1041ec0e9dd7c"
      ],
      "author": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Mar 08 16:50:44 2010 -0800"
      },
      "committer": {
        "name": "Andreas Huber",
        "email": "andih@google.com",
        "time": "Mon Mar 08 16:50:44 2010 -0800"
      },
      "message": "Use a more descriptive user-agent string (similar to PV\u0027s before) in stagefright http requests.\n\nChange-Id: I4e8ea856327bdb65989f75dab3673baeaf9637c8\n"
    }
  ],
  "next": "2509d3c11fa247d37d023e32411e6dad15d85b85"
}
