)]}'
{
  "log": [
    {
      "commit": "6034cb565c3b3ffb21057851cff179e2d5cb56a9",
      "tree": "22ef465a36dac93400180095844352828f1365ad",
      "parents": [
        "f6ff591decdea6299aab1a5b6f95917800571de4",
        "17a80081a42410f541a220ab7e6afc64fc6cc399"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 29 16:37:31 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 29 16:37:31 2009 -0700"
      },
      "message": "am 17a80081: Merge change 5544 into donut\n\nMerge commit \u002717a80081a42410f541a220ab7e6afc64fc6cc399\u0027\n\n* commit \u002717a80081a42410f541a220ab7e6afc64fc6cc399\u0027:\n  Pipe all the camera callbacks to Java to facilitate the addition\n"
    },
    {
      "commit": "f6ff591decdea6299aab1a5b6f95917800571de4",
      "tree": "dee211f3383b10360a61cb4194a1bcc2cc26bdd4",
      "parents": [
        "8c3fc63576c81139a8d16b608550568ad52237c6",
        "72eb0acad5cffc57ce5006f6deab29ee259e461e"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 29 16:37:17 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 29 16:37:17 2009 -0700"
      },
      "message": "am 72eb0aca: Merge change 5483 into donut\n\nMerge commit \u002772eb0acad5cffc57ce5006f6deab29ee259e461e\u0027\n\n* commit \u002772eb0acad5cffc57ce5006f6deab29ee259e461e\u0027:\n  Expand support for different screen sizes.\n"
    },
    {
      "commit": "17a80081a42410f541a220ab7e6afc64fc6cc399",
      "tree": "a4fe51dcf8e8caddc7cba9ebbc2c98606cf44950",
      "parents": [
        "72eb0acad5cffc57ce5006f6deab29ee259e461e",
        "c62f9bd13327937aa2d2f20b44215397120634c1"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 26 14:02:10 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 26 14:02:10 2009 -0700"
      },
      "message": "Merge change 5544 into donut\n\n* changes:\n  Pipe all the camera callbacks to Java to facilitate the addition of new features. This will make it easy to add things like zoom callbacks without modifying the entire camera stack. Bug 1837832.\n"
    },
    {
      "commit": "723738cfaec3dd7b0fe152c872c41bebf94074c4",
      "tree": "421ddeed166d0a4586c9460c4de581307bf08d44",
      "parents": [
        "77cb40a0b088b02357fbc7d5fad24886d607f0da"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 25 19:48:04 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 26 13:37:05 2009 -0700"
      },
      "message": "Expand support for different screen sizes.\n\nApplications can now declare that they support small, normal, or\nlarge screens.  Resource selection can also be done based on these\nsizes.  By default, pre-Donut apps are false for small and large,\nand Donut or later apps are assumed to support all sizes.  In either\ncase they can use \u003csupports-screens\u003e in their manifest to declare\nwhat they actually support.\n"
    },
    {
      "commit": "c62f9bd13327937aa2d2f20b44215397120634c1",
      "tree": "8bb2e7596e82588e9c4517f65209a174f809cc32",
      "parents": [
        "aae628b44518f0886a7f33b88c1131f47d853e70"
      ],
      "author": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Fri Jun 26 13:33:32 2009 -0700"
      },
      "committer": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Fri Jun 26 13:33:32 2009 -0700"
      },
      "message": "Pipe all the camera callbacks to Java to facilitate the addition\nof new features. This will make it easy to add things like zoom\ncallbacks without modifying the entire camera stack.\nBug 1837832.\n"
    },
    {
      "commit": "cf906decf11970bc55074383b20efc4f9756f509",
      "tree": "ac6c1d43209a8f3bbbf56737677b1d66b0712b1f",
      "parents": [
        "c3096829b7a89fa3928f765e3b79b600e2970624",
        "b65dba4560f7aff894ebcdbe8468daeaae3489c8"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 26 10:55:35 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Jun 26 10:55:35 2009 -0700"
      },
      "message": "am b65dba45: Merge change 5470 into donut\n\nMerge commit \u0027b65dba4560f7aff894ebcdbe8468daeaae3489c8\u0027\n\n* commit \u0027b65dba4560f7aff894ebcdbe8468daeaae3489c8\u0027:\n  Use the same interface in the TTS engine interface for setLanguage and loadLanguage.\n"
    },
    {
      "commit": "d6d03e05bed76a49b8badda98e471bf36304b6ef",
      "tree": "5fa6990b05198b111d51d60ef04b756296c2f918",
      "parents": [
        "ee513b600efeb55040030a3dc9c8e7ef74b36149"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu Jun 25 18:37:55 2009 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Jun 26 09:46:28 2009 -0700"
      },
      "message": "Use the same interface in the TTS engine interface for setLanguage and loadLanguage.\nAdding function to check the support level for a language in TTS engine interface.\n"
    },
    {
      "commit": "1f7300818fae32dcef5a5387b04c8f304b5e1cd5",
      "tree": "f06fe20bd46c2c57fa2fa78ef95f2737b4674f6f",
      "parents": [
        "98c600eb35dbb4449ebcfd00270092b2d0b34b27",
        "c44989d6c7bcc761fb37f54fd37aac2070ba8e5e"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 25 15:11:09 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jun 25 15:11:09 2009 -0700"
      },
      "message": "am c44989d6: Merge change 5350 into donut\n\nMerge commit \u0027c44989d6c7bcc761fb37f54fd37aac2070ba8e5e\u0027\n\n* commit \u0027c44989d6c7bcc761fb37f54fd37aac2070ba8e5e\u0027:\n  move ui/Time.cpp to core/jni, since this is the only place it is used\n"
    },
    {
      "commit": "864c0d50cda714d73fa70e3600ec36b5db8a835a",
      "tree": "6a4e6e481ef35565a3ce1d027537690bb91308f8",
      "parents": [
        "eb3ec64a6a962aa48a46753c6e69ce24f889a4cc"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jun 24 23:12:06 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Jun 25 14:39:56 2009 -0700"
      },
      "message": "move ui/Time.cpp to core/jni, since this is the only place it is used\n"
    },
    {
      "commit": "60965876d81bc7c327a6fd8360b46a85e3d9f4de",
      "tree": "baa34c2b76ce6c2d47ecc45d709819481f215c8d",
      "parents": [
        "c317703f6bec689adbf42a245c0ec75146343508",
        "df65b60ce33e5a56815864f8f0713e25378fa649"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 24 15:45:20 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Jun 24 15:45:20 2009 -0700"
      },
      "message": "am df65b60c: Merge change 5243 into donut\n\nMerge commit \u0027df65b60ce33e5a56815864f8f0713e25378fa649\u0027\n\n* commit \u0027df65b60ce33e5a56815864f8f0713e25378fa649\u0027:\n  Only report \"unknown metadata\" once per restore helper\n"
    },
    {
      "commit": "6f7e0dbdf6108e8f3664d1aa7ac72691f23a03d4",
      "tree": "73e057b644205f7aa512821fa1cf35ddb78b809f",
      "parents": [
        "9c73a336c121ae2a1f608700b45d84fed6c49eba",
        "a93466f5ca41c2ba6c3524c8d1edc2138bf753e3"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 24 15:44:45 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Jun 24 15:44:45 2009 -0700"
      },
      "message": "am a93466f5: Merge change 5220 into donut\n\nMerge commit \u0027a93466f5ca41c2ba6c3524c8d1edc2138bf753e3\u0027\n\n* commit \u0027a93466f5ca41c2ba6c3524c8d1edc2138bf753e3\u0027:\n  Cleanup header file. Disallow copy of Camera object by making copy\n"
    },
    {
      "commit": "df65b60ce33e5a56815864f8f0713e25378fa649",
      "tree": "6acc20d2790f5fe93bedf777c130d2b4e60b95aa",
      "parents": [
        "2cf6f5df59d466a729cc10b7688e17cd548a2fda",
        "63bcb79dd437e70593b63cc5a87baab3251c2183"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 24 13:58:52 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 24 13:58:52 2009 -0700"
      },
      "message": "Merge change 5243 into donut\n\n* changes:\n  Only report \"unknown metadata\" once per restore helper\n"
    },
    {
      "commit": "63bcb79dd437e70593b63cc5a87baab3251c2183",
      "tree": "97eab12039e80d6f16d64e2c3d7dac2073dfae54",
      "parents": [
        "54118adb3766fdf73a409102b88d7494bb6889a3"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jun 24 13:57:29 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jun 24 13:57:29 2009 -0700"
      },
      "message": "Only report \"unknown metadata\" once per restore helper\n\nAlso removes the auto-free object, replacing it with direct memory manipulation.\n"
    },
    {
      "commit": "e5b3607a0a7f3eebac82595624efe8d5b07f0a61",
      "tree": "849e956c53de45b1abac4517f5ba13d80fab7087",
      "parents": [
        "2387208c9ecb5dba01bd933312c80c5133bd3c41",
        "eaa89f74c04c0f10d5f3f8190b457087537bff2e"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 24 13:54:13 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Jun 24 13:54:13 2009 -0700"
      },
      "message": "am eaa89f74: Merge change 5172 into donut\n\nMerge commit \u0027eaa89f74c04c0f10d5f3f8190b457087537bff2e\u0027\n\n* commit \u0027eaa89f74c04c0f10d5f3f8190b457087537bff2e\u0027:\n  Remove deprecated callback function support.\n"
    },
    {
      "commit": "2387208c9ecb5dba01bd933312c80c5133bd3c41",
      "tree": "cc2b5de61934f318bcb3806d5a3705527b18c947",
      "parents": [
        "ffcdad9faaa03c116bacc5ac88a5aa2e015dc6d1",
        "3d7b8d1aa6a362292f56defbe8fb2d5653f79282"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 24 13:54:09 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Jun 24 13:54:09 2009 -0700"
      },
      "message": "am 3d7b8d1a: Merge change 5158 into donut\n\nMerge commit \u00273d7b8d1aa6a362292f56defbe8fb2d5653f79282\u0027\n\n* commit \u00273d7b8d1aa6a362292f56defbe8fb2d5653f79282\u0027:\n  Use a ref-counted callback interface for Camera.\n"
    },
    {
      "commit": "6f0602e84a0387fe9239a57f44785de40feb051c",
      "tree": "c4f588848a7caa95565131374fa6419732aeaa63",
      "parents": [
        "b1dffc48ca8aec61d99391495b3f436d0e8b16dd"
      ],
      "author": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Wed Jun 24 10:42:53 2009 -0700"
      },
      "committer": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Wed Jun 24 10:42:53 2009 -0700"
      },
      "message": "Cleanup header file. Disallow copy of Camera object by making copy\nconstructor and operator\u003d private.\n"
    },
    {
      "commit": "20cb94eeb5b9672573fc86bf51e09bd66a774581",
      "tree": "138919c0c2fd32e1c0185e726be3d6b5debee065",
      "parents": [
        "5a12373277f6ce14101f08580bc4f08f9a3d7c50"
      ],
      "author": {
        "name": "Nicolas Catania",
        "email": "niko@google.com",
        "time": "Tue May 12 23:25:55 2009 -0700"
      },
      "committer": {
        "name": "niko",
        "email": "niko@google.com",
        "time": "Wed Jun 24 08:22:52 2009 -0700"
      },
      "message": "Direct api to the native media player.\n\nMediaPlayer.java has 3 new methods:\n* newRequest creates a Parcel that can be used to send data to the\n  native player using invoke.\n* invoke issues synchronous calls to the native player using opaque\n  parcels for the request and reply.\n\nIMediaPlayer.h has 1 new abstract method:\n* invoke\n\nThe Midi and Vorbis players have a stub for these. So far only PV\nmakes use of that new feature.\n\nTo avoid any copy overhead, the JNI interface uses Parcel as a java\nobject (no serialization/copy happens at the JNI layer).\n\nThe remote interface token is inserted when the Parcel is constructed\nin java. That way the parcel is already routable when it reaches\n IMediaPlayer.cpp (proxy). No extra copy is needed there.\n"
    },
    {
      "commit": "b1dffc48ca8aec61d99391495b3f436d0e8b16dd",
      "tree": "0ed71e91e20db61d993388d4ee1bfad3f866cd10",
      "parents": [
        "5e27115995c4506dddf4f1271effd4fb4c935ad3"
      ],
      "author": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Tue Jun 23 19:09:05 2009 -0700"
      },
      "committer": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Wed Jun 24 07:58:27 2009 -0700"
      },
      "message": "Remove deprecated callback function support.\nThis is the last of a 3-part change to modify the camera to use\na more streamlined callback interface. This change removes the\nold code.\nBug 1884362\n"
    },
    {
      "commit": "5e27115995c4506dddf4f1271effd4fb4c935ad3",
      "tree": "dd67833f50a64768b2bf25ec4d9dd5daa3a2dd78",
      "parents": [
        "5f80605a0b866f34c74955e190909bd6ab5d992e"
      ],
      "author": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Tue Jun 23 17:30:11 2009 -0700"
      },
      "committer": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Wed Jun 24 07:58:27 2009 -0700"
      },
      "message": "Use a ref-counted callback interface for Camera.\nThis allows the camera service to hang onto the callback interface\nuntil all callbacks have been processed. This prevents problems\nwhere pending callbacks in binder worker threads are processed\nafter the Java camera object and its associated native resources\nhave been released.\nBug 1884362\n"
    },
    {
      "commit": "cf01aa3cfff321a774139c054e7cfc262ee27921",
      "tree": "619f366c12cba494aa66f1b8d45c1ad6a88da885",
      "parents": [
        "9bfd5f495bdc0d704d85fa95b67845099d9b9f48",
        "1bee98af6532eba3c6cda636eee890530c95a2a7"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 23 13:42:41 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Jun 23 13:42:41 2009 -0700"
      },
      "message": "am 1bee98af: Merge change 5100 into donut\n\nMerge commit \u00271bee98af6532eba3c6cda636eee890530c95a2a7\u0027\n\n* commit \u00271bee98af6532eba3c6cda636eee890530c95a2a7\u0027:\n  Fill in CDMA gaps and clean up ToneGenerator code\n"
    },
    {
      "commit": "1bee98af6532eba3c6cda636eee890530c95a2a7",
      "tree": "331751ef706fab0d35586cc6751aa8e132a80560",
      "parents": [
        "11b157790234d3d2f116ce4c7ed1d3d00fb78bc3",
        "b6d90ca1292ffab015d5068f9e184b1dc84b7233"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 23 13:38:34 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 23 13:38:34 2009 -0700"
      },
      "message": "Merge change 5100 into donut\n\n* changes:\n  Fill in CDMA gaps and clean up ToneGenerator code\n"
    },
    {
      "commit": "9bfd5f495bdc0d704d85fa95b67845099d9b9f48",
      "tree": "ffd74c5f107276683565d95c2ee406b2722937de",
      "parents": [
        "3618160a1a10ab7574f14e0e5a45fe79ec660a64",
        "11b157790234d3d2f116ce4c7ed1d3d00fb78bc3"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Tue Jun 23 13:28:41 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Jun 23 13:28:41 2009 -0700"
      },
      "message": "am 11b15779: Add file mode to the file-backup saved state blobs\n\nMerge commit \u002711b157790234d3d2f116ce4c7ed1d3d00fb78bc3\u0027\n\n* commit \u002711b157790234d3d2f116ce4c7ed1d3d00fb78bc3\u0027:\n  Add file mode to the file-backup saved state blobs\n"
    },
    {
      "commit": "11b157790234d3d2f116ce4c7ed1d3d00fb78bc3",
      "tree": "1db558751d0c942f0c231a0de9de5965aa1d50ba",
      "parents": [
        "2e418428987132ea66533cbc05f9c526eb59519a"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Tue Jun 23 13:03:00 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Tue Jun 23 13:07:47 2009 -0700"
      },
      "message": "Add file mode to the file-backup saved state blobs\n\nThis change puts the file\u0027s access mode into the saved-state blob used by the\nfile backup helpers.  The tests have been updated for the new blob content\nformat.\n\nWhat this change *doesn\u0027t* do is actually backup/restore the file mode.  This\nchange is a prerequisite for that, but mode preservation in backup/restore will\nrequire adding metadata to the backup data stream itself, so will be approached\na bit more carefully.\n\n(Also fixed one outright bug in the test program: ReadEntityData() had been\nchanged to return a ssize_t union of either a byte-count or a negative number\nindicating error, but the test program was still assuming that nonzero \u003d\u003d error,\nand was spuriously failing.)\n"
    },
    {
      "commit": "b6d90ca1292ffab015d5068f9e184b1dc84b7233",
      "tree": "4713ca5d25092a8c630af7af79598ee5bb335208",
      "parents": [
        "b0ae27f4e10a9e5fe56b9ca549718051fe342bba"
      ],
      "author": {
        "name": "David Krause",
        "email": "david.krause@motorola.com",
        "time": "Wed Jun 17 15:46:13 2009 -0500"
      },
      "committer": {
        "name": "Wink Saville",
        "email": "wink@google.com",
        "time": "Tue Jun 23 12:32:12 2009 -0700"
      },
      "message": "Fill in CDMA gaps and clean up ToneGenerator code\n"
    },
    {
      "commit": "ffa5a5a3dbef79dc6958c629080b1a6438a7b637",
      "tree": "6f55b73c1d1f654914b17f9b9243fd8734f135c4",
      "parents": [
        "949070dd74be18ee3dcc87dd32f47f65374e3d53",
        "5277103db9033226814edc8fcba6f4ba4e846678"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 22 22:04:12 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 22 22:04:12 2009 -0700"
      },
      "message": "am 5277103d: Merge change 5035 into donut\n\nMerge commit \u00275277103db9033226814edc8fcba6f4ba4e846678\u0027\n\n* commit \u00275277103db9033226814edc8fcba6f4ba4e846678\u0027:\n  add glTexParameteri() and fix glTexParameteriv()\n"
    },
    {
      "commit": "aaf4b6b3315fc546396a4b82c8c5cab0c2d2cb85",
      "tree": "a0f381ad14b9f85f6ed6a9d23d55a09eab7727c6",
      "parents": [
        "72be40490951d3f9d0ada16fcf5288d0c3306d88"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jun 22 18:04:45 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jun 22 18:09:09 2009 -0700"
      },
      "message": "add glTexParameteri() and fix glTexParameteriv()\n"
    },
    {
      "commit": "69d13f6680c19a39a849484403495daf388416ea",
      "tree": "f0f525551f3abf7501c704d5dfa65789872bc2bc",
      "parents": [
        "4f5753dbeebe1523a020f7d39b519d99177d9fd2",
        "72be40490951d3f9d0ada16fcf5288d0c3306d88"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 22 14:03:17 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 22 14:03:17 2009 -0700"
      },
      "message": "am 72be4049: Merge change 4910 into donut\n\nMerge commit \u002772be40490951d3f9d0ada16fcf5288d0c3306d88\u0027\n\n* commit \u002772be40490951d3f9d0ada16fcf5288d0c3306d88\u0027:\n  fix warnings that will show up with GCC 4.4 (in master)\n"
    },
    {
      "commit": "72be40490951d3f9d0ada16fcf5288d0c3306d88",
      "tree": "c03ccfb9727e67dee8a9106e61a49dff3784ada6",
      "parents": [
        "bbf781379b134812458591722c986cb29c396a5b",
        "5f91097b26f036a45e32f4e4cae3e9e135a6042d"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 22 14:01:25 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 22 14:01:25 2009 -0700"
      },
      "message": "Merge change 4910 into donut\n\n* changes:\n  fix warnings that will show up with GCC 4.4 (in master)\n"
    },
    {
      "commit": "4527acb0c39258792ae55604cb4d71006bf8d938",
      "tree": "f1e2b09db0abc31c15d56ec7e718a09aabd00861",
      "parents": [
        "ffe4ddfe95e8b31e0cb579ab537a1373f6208bcc",
        "856dd8a60a70a5b7dca2bf2114872ce063e2ad60"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 22 13:20:31 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 22 13:20:31 2009 -0700"
      },
      "message": "am 856dd8a6: Merge change 4952 into donut\n\nMerge commit \u0027856dd8a60a70a5b7dca2bf2114872ce063e2ad60\u0027\n\n* commit \u0027856dd8a60a70a5b7dca2bf2114872ce063e2ad60\u0027:\n  Helper API cleanup.  Allows multiple helpers to function,\n"
    },
    {
      "commit": "06290a4bb9b280fa14a2bbeb2d3ceb09396a78c3",
      "tree": "15fccf5ce4e9c42bba3fc7581ac2ddc0d8363dc9",
      "parents": [
        "eed76b2a8ddc41af01cd3ae87c4722f3784c975c"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Thu Jun 18 20:10:37 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Mon Jun 22 13:02:24 2009 -0700"
      },
      "message": "Helper API cleanup.  Allows multiple helpers to function,\nbecause they\u0027ll always go in the same order, and this lets\nus not have to write headers to keep them paired.\n"
    },
    {
      "commit": "5f91097b26f036a45e32f4e4cae3e9e135a6042d",
      "tree": "f8b6ddcb19437b86fdfce765ffa236e12ccccd2a",
      "parents": [
        "4da7dff5e79e57494b58a97b285c53c111b18c82"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jun 22 02:35:32 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jun 22 02:35:32 2009 -0700"
      },
      "message": "fix warnings that will show up with GCC 4.4 (in master)\n"
    },
    {
      "commit": "fc68623c03439db95401a18a435dbc491cd7f6fd",
      "tree": "318e9310cdb3fd31b912cc11b5f3b65d3d349f3f",
      "parents": [
        "b0774438ea90ce379ac3f20895f95302248a3844",
        "1585bd24c10d16351f89e32dddbfa799f18db6bd"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 19 16:44:07 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Jun 19 16:44:07 2009 -0700"
      },
      "message": "am 1585bd24: Merge change 4828 into donut\n\nMerge commit \u00271585bd24c10d16351f89e32dddbfa799f18db6bd\u0027\n\n* commit \u00271585bd24c10d16351f89e32dddbfa799f18db6bd\u0027:\n  Report densities in badging, debugging for nine patch bug.\n"
    },
    {
      "commit": "e17086ba346009a26cc2299b133a0fe602acb6ec",
      "tree": "4fbc5d71e2eab364edf88f3d9aa0a28611fb4efc",
      "parents": [
        "03255de32d127d17504b6d475e6e79190dd637f8"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 19 15:13:28 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 19 15:13:28 2009 -0700"
      },
      "message": "Report densities in badging, debugging for nine patch bug.\n\nThe aapt tool now reports all available densities like it already did\nfor locales.  Also this includes more resource data output, which I\nwas using to examine bug #1867049 (which at this point I am unable to\nreproduce).\n"
    },
    {
      "commit": "f923ed6ff76a0fd022bcc83e748e82266ba4ed1b",
      "tree": "43cf39771f98ee89b714ddd9bb791d43addf8aa8",
      "parents": [
        "1c14776a13546fc2642baa251c8f1b7c545b0272",
        "5502f04c1dcf2b1918858bacb99fb0480a711707"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 18 19:04:56 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jun 18 19:04:56 2009 -0700"
      },
      "message": "am 5502f04c: Merge change 4709 into donut\n\nMerge commit \u00275502f04c1dcf2b1918858bacb99fb0480a711707\u0027\n\n* commit \u00275502f04c1dcf2b1918858bacb99fb0480a711707\u0027:\n  backup stuff\n"
    },
    {
      "commit": "1c14776a13546fc2642baa251c8f1b7c545b0272",
      "tree": "0834ce3d68bee3d92d1c1042b36832aa28ce9543",
      "parents": [
        "81a2a3931f61a7fdd178ab8d56c3d132c68a7afe",
        "16ce3504c5bf98d95d5c36001f755bb4b15253c9"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 18 19:04:50 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jun 18 19:04:50 2009 -0700"
      },
      "message": "am 16ce3504: Merge change 4708 into donut\n\nMerge commit \u002716ce3504c5bf98d95d5c36001f755bb4b15253c9\u0027\n\n* commit \u002716ce3504c5bf98d95d5c36001f755bb4b15253c9\u0027:\n  Make RestoreHelper and friends also write out the snapshot state.\n"
    },
    {
      "commit": "5d605dc56b036232e885f6ec36b888b729673060",
      "tree": "8a29f6a2feb495cbac08bb43b08e0ca9b8cf7dce",
      "parents": [
        "d2d9ceb7305d593c1b767bbb05de0082a9af4109"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Thu Jun 18 18:23:43 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Thu Jun 18 18:41:11 2009 -0700"
      },
      "message": "backup stuff\n"
    },
    {
      "commit": "d2d9ceb7305d593c1b767bbb05de0082a9af4109",
      "tree": "1ba39c3c5901d65a18855286e240f177820a6ec6",
      "parents": [
        "abce4e8714bed26a2b37b20ad3f02cf619d71c9a"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Thu Jun 18 13:11:18 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Thu Jun 18 18:41:11 2009 -0700"
      },
      "message": "Make RestoreHelper and friends also write out the snapshot state.\n"
    },
    {
      "commit": "6f8b5c12d3a3a02c5d38e3f54117cb6d65e0d4a6",
      "tree": "51a0be24e50459515d454f77d1ae8552fe957479",
      "parents": [
        "eae311c78be5125d722f50263a4a47c5deff2939",
        "de72697b771d33738c5f9d6c28087504e0796622"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 17 21:49:21 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Jun 17 21:49:21 2009 -0700"
      },
      "message": "am de72697b: Merge change 4524 into donut\n\nMerge commit \u0027de72697b771d33738c5f9d6c28087504e0796622\u0027\n\n* commit \u0027de72697b771d33738c5f9d6c28087504e0796622\u0027:\n  FileRestoreHelper and RestoreHelperDispatcher work.\n"
    },
    {
      "commit": "efd0fab04b96d7ab0c1d8bf3b79397c8621e31c5",
      "tree": "f4b5afd53736822e9dc9e4c0f08140cd6fac8d60",
      "parents": [
        "2cf3971ea4d22f8981ae71e6ba358f19e1628d09"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Wed Jun 17 16:20:55 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Wed Jun 17 16:20:55 2009 -0700"
      },
      "message": "FileRestoreHelper and RestoreHelperDispatcher work.\n"
    },
    {
      "commit": "251c89c0a7502f4286f2484a77b685ddfe2b39d2",
      "tree": "9b8f8dd5d56b1ef2d295b986f54b8c55f757f3cc",
      "parents": [
        "1bd88ca88f8b89dbf09697b8eddc4703e266a654",
        "5f15d151b5101fadfe6cba1e8f4aa6367e8c603e"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Wed Jun 17 15:38:08 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Jun 17 15:38:08 2009 -0700"
      },
      "message": "am 5f15d151: checkpoint BackupDatAInput / RestoreHelper\n\nMerge commit \u00275f15d151b5101fadfe6cba1e8f4aa6367e8c603e\u0027\n\n* commit \u00275f15d151b5101fadfe6cba1e8f4aa6367e8c603e\u0027:\n  checkpoint BackupDatAInput / RestoreHelper\n"
    },
    {
      "commit": "5f15d151b5101fadfe6cba1e8f4aa6367e8c603e",
      "tree": "3a94295ffc2935c7ca1550c01a6e793766bf415f",
      "parents": [
        "aa088447baadd2e0bbcfd18cc529645610c13ddc"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Tue Jun 16 16:31:35 2009 -0400"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Tue Jun 16 18:46:50 2009 -0700"
      },
      "message": "checkpoint BackupDatAInput / RestoreHelper\n"
    },
    {
      "commit": "c1760fa84c1ac59793f8a23bb5a311ef9b5fc469",
      "tree": "f90b1f8f764e065bbc0dfc8b7ac5ec3e6a742b79",
      "parents": [
        "dfd0363adac842340650d0c535e1da201815c32b",
        "f1170fb5386ea86d704480d321ee9d1ee4858244"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 16 16:43:11 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Jun 16 16:43:11 2009 -0700"
      },
      "message": "am f1170fb5: Merge change 4251 into donut\n\nMerge commit \u0027f1170fb5386ea86d704480d321ee9d1ee4858244\u0027\n\n* commit \u0027f1170fb5386ea86d704480d321ee9d1ee4858244\u0027:\n  Updating TTS engine interface for setting the language based on language, country and variant codes\n"
    },
    {
      "commit": "35a8e80bf8cbe3c64fdf59a4a8b7d33bb1cfbb2d",
      "tree": "af67a0ec08ccb97df0cb7de39b618ad874dfad4a",
      "parents": [
        "9908b3d820f7574ef432f22d280c7f1f5065f67f"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Mon Jun 15 15:14:49 2009 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Tue Jun 16 13:25:15 2009 -0700"
      },
      "message": "Updating TTS engine interface for setting the language based on language, country and variant codes\ncoming from a java.util.Locale instance.\n"
    },
    {
      "commit": "5f80742306d6d66b1641f96b57ad819c3667b18e",
      "tree": "1099d5cc505cdf8f9d75b405213feb0042a34d4e",
      "parents": [
        "451a37ed2d4dca5aed13c4b10bf25590cd41a462",
        "d670b8c61ebd13324ac21bdbc08d8a02fc0a765a"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 11:43:55 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Jun 12 11:43:55 2009 -0700"
      },
      "message": "am d670b8c6: Merge change 3981 into donut\n\nMerge commit \u0027d670b8c61ebd13324ac21bdbc08d8a02fc0a765a\u0027\n\n* commit \u0027d670b8c61ebd13324ac21bdbc08d8a02fc0a765a\u0027:\n  Removed trailing whitespaces.\n"
    },
    {
      "commit": "d670b8c61ebd13324ac21bdbc08d8a02fc0a765a",
      "tree": "c24961f49c83ed6db9784ac9972d683f380f4555",
      "parents": [
        "83bb56c389d003162093eef0aaee251cefc1deed",
        "32f82774884bdd709789ab9f3ccdf5b972ff7681"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 08:32:09 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 08:32:09 2009 -0700"
      },
      "message": "Merge change 3981 into donut\n\n* changes:\n  Removed trailing whitespaces.\n"
    },
    {
      "commit": "bf85d63cb8858432ff845250fdaffdb556d2ef1b",
      "tree": "bccd2a36cb6534bbb9fc75cdf3ff550fce35e8e7",
      "parents": [
        "32c79898c0020637b2f8e536c8208519801eb9cb",
        "78f0f8cb2efe9410127c39201e240f6d438eb53c"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 12 08:26:05 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Jun 12 08:26:05 2009 -0700"
      },
      "message": "am 78f0f8cb: Merge changes 3953,3954 into donut\n\nMerge commit \u002778f0f8cb2efe9410127c39201e240f6d438eb53c\u0027\n\n* commit \u002778f0f8cb2efe9410127c39201e240f6d438eb53c\u0027:\n  Make the file backup helper not crash if a file you requested\n  Fix SharedPrefsBackupHelper so it doesn\u0027t hard code the paths to the files.\n"
    },
    {
      "commit": "32f82774884bdd709789ab9f3ccdf5b972ff7681",
      "tree": "ef2b6af8c2d2c68838b1e10496f3b8cff2e644e0",
      "parents": [
        "cb9534f92007b47d86cccc306dc75ca2d64bd197"
      ],
      "author": {
        "name": "Nicolas Catania",
        "email": "niko@google.com",
        "time": "Thu Jun 11 16:33:49 2009 -0700"
      },
      "committer": {
        "name": "Nicolas Catania",
        "email": "niko@google.com",
        "time": "Thu Jun 11 16:54:48 2009 -0700"
      },
      "message": "Removed trailing whitespaces.\n"
    },
    {
      "commit": "ce88cb15b52998e16c3ba548a4ec49117a835e21",
      "tree": "dc02e85657a63858b45a5eef8f99cbf5efae6339",
      "parents": [
        "23ecae3bbb60c5af940f3a22170d75eb6ac05b69"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Thu Jun 11 11:27:16 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Thu Jun 11 14:51:45 2009 -0700"
      },
      "message": "Make the file backup helper not crash if a file you requested\ncan\u0027t be stated.  This means you don\u0027t need to know if the files\nyou are backing up exist or not -- we\u0027ll figure it out for you.\n"
    },
    {
      "commit": "23ecae3bbb60c5af940f3a22170d75eb6ac05b69",
      "tree": "1138102ba856743cffd931121409a71c2bae37c3",
      "parents": [
        "0b77453076a22569f24318d194b378b68f11a63e"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Wed Jun 10 17:07:15 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Thu Jun 11 11:29:57 2009 -0700"
      },
      "message": "Fix SharedPrefsBackupHelper so it doesn\u0027t hard code the paths to the files.\n\nThis took quite a bit of refactoring.\n"
    },
    {
      "commit": "f5b746e15708bea6a8ef5bb7f7cfea03d7415a7f",
      "tree": "96d747ee29f5b79c494a2463080031cbbb2e3e1c",
      "parents": [
        "5519185292a3733744794bd3c31ce1a2fdf817e4",
        "b2df1699c996e62baa78877978cd2c5607ea4194"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 08 16:00:19 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 08 16:00:19 2009 -0700"
      },
      "message": "am b2df1699: Merge change 1548 into donut\n\nMerge commit \u0027b2df1699c996e62baa78877978cd2c5607ea4194\u0027\n\n* commit \u0027b2df1699c996e62baa78877978cd2c5607ea4194\u0027:\n  NJ-1409: (frameworks/base) Support new audio encoding types(AMR and AAC).\n"
    },
    {
      "commit": "b2df1699c996e62baa78877978cd2c5607ea4194",
      "tree": "442c0e288e853fbf2b0978bad6db676fe59e619f",
      "parents": [
        "bad927a987d30fc63e0b280b3a99a9ba4a9520ea",
        "2bcda90c0234f67f210a96f195b355493ca7d1ff"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 08 15:58:21 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 08 15:58:21 2009 -0700"
      },
      "message": "Merge change 1548 into donut\n\n* changes:\n  NJ-1409: (frameworks/base) Support new audio encoding types(AMR and AAC).\n"
    },
    {
      "commit": "2bcda90c0234f67f210a96f195b355493ca7d1ff",
      "tree": "ccc9334fe1faca406e67d4bb1822d8195dba5c35",
      "parents": [
        "be512bff60626efc9a4b85d271d6210b9115e5fc"
      ],
      "author": {
        "name": "Jianhong Jiang",
        "email": "jianhong@google.com",
        "time": "Mon Jun 08 08:50:42 2009 -0700"
      },
      "committer": {
        "name": "Jianhong Jiang",
        "email": "jianhong@google.com",
        "time": "Mon Jun 08 08:50:42 2009 -0700"
      },
      "message": "NJ-1409: (frameworks/base) Support new audio encoding types(AMR and AAC).\n"
    },
    {
      "commit": "ffa3ddfb706ffdd54ae525aa74c0a62d206b61b5",
      "tree": "a10bc2450c4fc640c99331f447d13c8ebaa29f43",
      "parents": [
        "4bfa86011a1ede22ae84921332bd1bf35a1695d7",
        "e3523054ded8c6e86935a978aa136c3ed2c0ba12"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 05 21:17:31 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Jun 05 21:17:31 2009 -0700"
      },
      "message": "am e3523054: Merge change 3356 into donut\n\nMerge commit \u0027e3523054ded8c6e86935a978aa136c3ed2c0ba12\u0027\n\n* commit \u0027e3523054ded8c6e86935a978aa136c3ed2c0ba12\u0027:\n  Cleaning up comments in interface for TTS engines.\n"
    },
    {
      "commit": "7ab512096ac84c2fe2ffc31305ca5c1ea39aadaf",
      "tree": "bdfb40c5ffc9568604d6fc54ec88f912bdb4e8e5",
      "parents": [
        "76ff31b201da1e4b0b9cfe21bf5a877cc9d645fe",
        "327da854e8fbc444150b40941668b3c9187c34b9"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 05 21:17:19 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Jun 05 21:17:19 2009 -0700"
      },
      "message": "am 327da854: Merge change 3344 into donut\n\nMerge commit \u0027327da854e8fbc444150b40941668b3c9187c34b9\u0027\n\n* commit \u0027327da854e8fbc444150b40941668b3c9187c34b9\u0027:\n  Updating TtsEngine.h and SynthProxy.cpp so that buffer memory\n"
    },
    {
      "commit": "6270d6100e8fa1a986794bfcd61166f2715b6d21",
      "tree": "623b2de4fa99bb6f0be36f6eb2afde0aaa2c3be5",
      "parents": [
        "327da854e8fbc444150b40941668b3c9187c34b9"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Jun 05 15:01:33 2009 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Fri Jun 05 15:49:28 2009 -0700"
      },
      "message": "Cleaning up comments in interface for TTS engines.\n"
    },
    {
      "commit": "e583a4ea8c90105eee9b408d39bca3a4af6a2569",
      "tree": "f393a548bd02e31e3221be0757cd3104f84a4977",
      "parents": [
        "bb8505e7fd0e2b6e68078dbf6729221961a7bd63"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jun 05 15:11:23 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jun 05 15:11:23 2009 -0700"
      },
      "message": "get rid of LogSocket which wasn\u0027t even implemented (enabled)\n"
    },
    {
      "commit": "55e3d60da5626752ffe1d15150d35ccb8fa644e7",
      "tree": "cdc453d4fbec7bed47110ab54f4fe2d2f6fe3b41",
      "parents": [
        "5e23cbc660e33c5e176f89ecdc6a1f81352e292e"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jun 05 14:56:35 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jun 05 14:56:35 2009 -0700"
      },
      "message": "break dependency on utils/ZipEntry.h and utils/ZipFile.h, get rid of inet_address.h and Socket.h which were not used\n"
    },
    {
      "commit": "83e712a1420adf035f66bc7656ddd8a87069f6a7",
      "tree": "35f709c6101318bb93788cb9b272585763d87cda",
      "parents": [
        "716b56817aee1c0b584266a686b18a1c02ea0116"
      ],
      "author": {
        "name": "Charles Chen",
        "email": "clchen@google.com",
        "time": "Fri Jun 05 13:58:33 2009 -0700"
      },
      "committer": {
        "name": "Charles Chen",
        "email": "clchen@google.com",
        "time": "Fri Jun 05 13:58:33 2009 -0700"
      },
      "message": "Updating TtsEngine.h and SynthProxy.cpp so that buffer memory\nmanagement is handled on the system side.\n"
    },
    {
      "commit": "8ed6beb515460001a0f5ee91b874289fbb053768",
      "tree": "fe645b214341ec68150c1ea2677f314065f9b4a2",
      "parents": [
        "49f372210b09c461f7c32dddd9170f9e8dad076f"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jun 05 01:26:23 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri Jun 05 01:26:23 2009 -0700"
      },
      "message": "rename string_array.h to StringArray.h and move the implementation from the header file to a new cpp file.\n\nStringArray is used in two places in framework/base and in the Sim. Ideally we should get rid of it and use Vector\u003cString8\u003e instead of creating new code.\n"
    },
    {
      "commit": "1b6aee15157f0236ac1fc7885735609bf27171d3",
      "tree": "d26d76ee11b8c0300e977627196265961dbd03c0",
      "parents": [
        "f43572978783aacc1babade274992cb171d1c1f0",
        "2a3188672ab2b65c0ce7c9c598a463e382c47696"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 04 22:44:18 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jun 04 22:44:18 2009 -0700"
      },
      "message": "am 2a318867: Merge change 3203 into donut\n\nMerge commit \u00272a3188672ab2b65c0ce7c9c598a463e382c47696\u0027\n\n* commit \u00272a3188672ab2b65c0ce7c9c598a463e382c47696\u0027:\n  rename a few files to camel-case, add copyright notices\n"
    },
    {
      "commit": "8ae2335a3c93d0c00e998fdec18f64dfe43b94cb",
      "tree": "e4233d7c7c87d76cab05ebe98a6330f9b4731155",
      "parents": [
        "85dfec8c35d4e3216591bd2e534bbebd6338b969"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Jun 04 13:53:57 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Jun 04 13:53:57 2009 -0700"
      },
      "message": "rename a few files to camel-case, add copyright notices\n"
    },
    {
      "commit": "ee01b1cab5ae8ea90de15a6a4ca7332f87361bbb",
      "tree": "85783073e91569b906c0b1151946d6c02aef09b0",
      "parents": [
        "cd97bd889e156584e1fd4e762bbb0e917671a3ea"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jun 01 13:59:42 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jun 01 14:06:02 2009 -0700"
      },
      "message": "move utils/Pipe.h to the simulator\n"
    },
    {
      "commit": "696959c7b6c5d8d1d1fbccdc5c1e9ae09363c064",
      "tree": "6ebd59cd388495649382c32fd98e9234cee79976",
      "parents": [
        "8c07afd3d8c4cbb8e35a74ce3dd70427a43da58d"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jun 01 13:55:28 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jun 01 13:55:28 2009 -0700"
      },
      "message": "get rid of TimerProbe which is never used\n"
    },
    {
      "commit": "14f955b5d76233668f6bb0e9642daa8a59fa42cc",
      "tree": "c1eab66f92765b5c5f76996ec434ded9684cd5be",
      "parents": [
        "16275c36f0cfda26ffa32221dd720f7a685da819"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sun May 31 23:29:06 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sun May 31 23:45:01 2009 -0700"
      },
      "message": "get rid of sleepForInterval() which didn\u0027t seem to be used anywhere in the source tree. Also get rid of ported.h which seem to be used only (possibly) in the sim. moved the implementation there.\n"
    },
    {
      "commit": "3b4062eeb01be33951ba214e027da523cf09f8b1",
      "tree": "ee621c2fa8a23e61e41626c7bcf79884f0d7555e",
      "parents": [
        "abe00fdee08577eb0fa2e5d220e91317b8f883a8"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sun May 31 19:13:00 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sun May 31 19:13:00 2009 -0700"
      },
      "message": "get rid of utils.h\n"
    },
    {
      "commit": "abe00fdee08577eb0fa2e5d220e91317b8f883a8",
      "tree": "23ad2877192196f4dc84e06b1a333a3501d3a52b",
      "parents": [
        "6ec711f4b17dbdccffa3a50b4dad7a1cb9b53aad"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sun May 31 18:49:44 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sun May 31 18:49:44 2009 -0700"
      },
      "message": "get rid of utils/executablepath.h, which now lives in the simulator\n"
    },
    {
      "commit": "6ec711f4b17dbdccffa3a50b4dad7a1cb9b53aad",
      "tree": "ab59e13743f2fea63addce325017b3736525d92c",
      "parents": [
        "969a74ae5e63b164edc1d18877c35e30bf8b3723",
        "11b1675a9348adabd9370ac01ae9c614ca4af384"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 29 17:19:25 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 29 17:19:25 2009 -0700"
      },
      "message": "am 11b1675a: Merge change 2626 into donut\n\nMerge commit \u002711b1675a9348adabd9370ac01ae9c614ca4af384\u0027\n\n* commit \u002711b1675a9348adabd9370ac01ae9c614ca4af384\u0027:\n  Adding TTS error code to signal missing resources (for instance missing language files).\n"
    },
    {
      "commit": "14f861a24af316ec6d60ef8f17c954b50a7f6fec",
      "tree": "4bb70c798dcf7ad14f84b540189e43f925080f7c",
      "parents": [
        "b0ded43d3844d9d97c5d554e8ca4ec3ee2c7bbe1"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu May 28 11:11:25 2009 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu May 28 11:11:25 2009 -0700"
      },
      "message": "Adding TTS error code to signal missing resources (for instance missing language files).\n"
    },
    {
      "commit": "09d00f705be5dbc1766e12e47c0a743abbad360e",
      "tree": "73355a7084fea382f8fd4f423d339cde5f26b191",
      "parents": [
        "602aa9748284c05ea8c7ae2679e210c23d18dcee",
        "0c0ad39cd8eaa6de6b7f99cec3971bcc953461e0"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 26 18:15:53 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue May 26 18:15:53 2009 -0700"
      },
      "message": "am 0c0ad39c: Merge change 2502 into donut\n\nMerge commit \u00270c0ad39cd8eaa6de6b7f99cec3971bcc953461e0\u0027\n\n* commit \u00270c0ad39cd8eaa6de6b7f99cec3971bcc953461e0\u0027:\n  minor clean-up to Rect and Point.\n"
    },
    {
      "commit": "f1472a79728324f4f6b5d66af986e9e9db24d0aa",
      "tree": "a2564a0aa4ee3ebb7ff4980ca86dbac09ecbec7e",
      "parents": [
        "c29df57e5abb09c7e1ceed153e8f2b906f522d7b"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue May 26 17:44:57 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue May 26 17:47:39 2009 -0700"
      },
      "message": "minor clean-up to Rect and Point.\n\n- return \"const\" objects for overloaded operators to disallow constructs like: (a+b) \u003d c;\n- don\u0027t return references to non-static members, it\u0027s not always safe.\n- Point.cpp was empty, so get rid of it\n"
    },
    {
      "commit": "aaf834a284a025cedd8ec1cf01d09e1790c1dcf8",
      "tree": "6314488c2ccaa1ab96923a1c771593ee65e7a726",
      "parents": [
        "7f36a5729f17fcb37a7b65a13fd86b0d922caca9"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri May 22 19:00:22 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Tue May 26 16:12:20 2009 -0700"
      },
      "message": "some work to try to reduce the code size of some native libraries\n\n- make sure that all binder Bn classes define a ctor and dtor in their respective library.\n  This avoids duplication of the ctor/dtor in libraries where these objects are instantiated.\n  This is also cleaner, should we want these ctor/dtor to do something one day.\n\n- same change as above for some Bp classes and various other non-binder classes\n\n- moved the definition of CHECK_INTERFACE() in IInterface.h instead of having it everywhere.\n\n- improved the CHECK_INTERFACE() macro so it calls a single method in Parcel, instead of inlining its code everywhere\n\n- IBinder::getInterfaceDescriptor() now returns a \"const String16\u0026\" instead of String16, which saves calls to String16 and ~String16\n\n- implemented a cache for BpBinder::getInterfaceDescriptor(), since this does an IPC. HOWEVER, this method never seems to be called.\n  The cache makes BpBinder bigger, so we need to figure out if we need this method at all.\n"
    },
    {
      "commit": "c5d0343b677d5ddc2d69fd15b81b084a40ab12ac",
      "tree": "d2709457029d8b4cc581bba22aa13e4fa8fabd42",
      "parents": [
        "620ad3dcf1e966bbcca3d6280fdd16f09441a733",
        "de8268d6d1cd168510c490b17e93154d2eab767c"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue May 26 10:11:44 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue May 26 10:11:44 2009 -0700"
      },
      "message": "am de8268d6: Merge change 2331 into donut\n\nMerge commit \u0027de8268d6d1cd168510c490b17e93154d2eab767c\u0027\n\n* commit \u0027de8268d6d1cd168510c490b17e93154d2eab767c\u0027:\n  Fix issue 1846343 - part 1\n"
    },
    {
      "commit": "4bc035a65cac177be9294e69f110497e3b6e34e6",
      "tree": "634b5bde8fc4cae5a7b77ee3cde01f04bc9ae7fc",
      "parents": [
        "a5f158bdde77f8d173d1f1c95d0f92405c519b0f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri May 22 09:18:15 2009 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue May 26 07:44:28 2009 -0700"
      },
      "message": "Fix issue 1846343 - part 1\n\nThis change is the first part of a fix for issue 1846343, :\n- Added new enum values for input sources in AudioRecord and MediaRecorder for voice uplink, downlink and uplink+downlink sources.\n- renamed streamType to inputSource in all native functions handling audio record.\n\nA second change is required in opencore author driver and android audio input to completely fix the issue.\n"
    },
    {
      "commit": "bca8ecf8054f81f1908b7b876803c08bbb3e8ec2",
      "tree": "c4e4fcaaab3b17e49a2f2dfeb3b794be8ae4c124",
      "parents": [
        "547a397f9bd86e5383ec68d96fb15bfa9bfcec77",
        "dfece80c790934e4413def863070ac0dd21f6e29"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 21 16:32:55 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 21 16:32:55 2009 -0700"
      },
      "message": "Merge change 2260\n\n* changes:\n  change 2115 wasn\u0027t merged properly into master. this fixes that.\n"
    },
    {
      "commit": "dfece80c790934e4413def863070ac0dd21f6e29",
      "tree": "8e9e2d17e5ecd6086bf02416f3a700c0d09247d7",
      "parents": [
        "8f80eef228cfd01b938ca48202d6a264f7689154"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu May 21 16:29:38 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu May 21 16:29:38 2009 -0700"
      },
      "message": "change 2115 wasn\u0027t merged properly into master. this fixes that.\n\nMerge change 2115 into donut\n\n* changes:\n  bring the native_handle stuff back from master_gl\n\nConflicts:\n\n\tlibs/binder/Parcel.cpp\n"
    },
    {
      "commit": "547a397f9bd86e5383ec68d96fb15bfa9bfcec77",
      "tree": "20677fd4a28392764107e1d1a44a9da93eead5b3",
      "parents": [
        "6d71ac3adb0357fe57e6eb4863d5fed708be4205",
        "384bfa270cdcb5dc3bc9ec396b783e25eb2d9b4d"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 21 16:18:48 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu May 21 16:18:48 2009 -0700"
      },
      "message": "am 384bfa27: Merge change 2227 into donut\n\nMerge commit \u0027384bfa270cdcb5dc3bc9ec396b783e25eb2d9b4d\u0027\n\n* commit \u0027384bfa270cdcb5dc3bc9ec396b783e25eb2d9b4d\u0027:\n  Add header declaring the interface for TTS engines to implement.\n"
    },
    {
      "commit": "895fb8e5f332b565c42b2131387f2b3412e9123a",
      "tree": "9c188988c16b97224a761f2f6c1ddeefdec5efae",
      "parents": [
        "aeed1816b7bbf8948c1daed48db6fe7567f338af"
      ],
      "author": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu May 21 15:32:11 2009 -0700"
      },
      "committer": {
        "name": "Jean-Michel Trivi",
        "email": "jmtrivi@google.com",
        "time": "Thu May 21 15:32:11 2009 -0700"
      },
      "message": "Add header declaring the interface for TTS engines to implement.\n"
    },
    {
      "commit": "9890815e427c49192efd738a8ae07ce038da92be",
      "tree": "646c4fae7b60c45fe8b43a91397ab47749efe1ef",
      "parents": [
        "2d10ba33190c2ff1b24d6c48dd621c55a25bf2cc"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed May 20 14:33:23 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed May 20 14:33:23 2009 -0700"
      },
      "message": "bring the native_handle stuff back from master_gl\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": "25ba5b6564224dceefa086b5c439ef28dad530ca",
      "tree": "af3c9fa40d27425c37cf6492589cb86854b08f8a",
      "parents": [
        "6b961bb54bfb44abd1bcee46924ca38c2d10dd72"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon May 18 15:08:03 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed May 20 12:55:02 2009 -0700"
      },
      "message": "checkpoint: split libutils into libutils + libbinder\n"
    },
    {
      "commit": "bad962bf407bbb7a7ce296fb75f1883375afa832",
      "tree": "38b353af4f5c334ecadfe8296c21c37b5e8c5f68",
      "parents": [
        "a39a67f3ad282298b750ea80038a1abf878d9ec1",
        "e29146158b6048936671decc060d398a68333fc0"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 20 11:58:08 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed May 20 11:58:08 2009 -0700"
      },
      "message": "am e2914615: Merge change 2099 into donut\n\nMerge commit \u0027e29146158b6048936671decc060d398a68333fc0\u0027\n\n* commit \u0027e29146158b6048936671decc060d398a68333fc0\u0027:\n  Hook up the backup data writer, and add a utility to read the backup data files.\n"
    },
    {
      "commit": "d2110dbce071a236b6176de344ca797b737542eb",
      "tree": "996e044c8c7bf49463394bc911f0277d969bde5d",
      "parents": [
        "40f5a4ea3bc90e43a442ab336f2342020bba86b3"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Tue May 19 13:41:21 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Wed May 20 11:24:20 2009 -0700"
      },
      "message": "Hook up the backup data writer, and add a utility to read the backup data files.\n"
    },
    {
      "commit": "f1f12f8cfcc99bb9a50ae5b555b5ce050726a1fa",
      "tree": "d680b09d862079111788479b37ded86255e197d7",
      "parents": [
        "da8e33a57f4ecb20505f3de494873f10ea10c8bb",
        "656a2726ad977be194c3b8f4bf4ec3068bf3e1c9"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 18 23:56:07 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon May 18 23:56:07 2009 -0700"
      },
      "message": "am 656a2726: Merge change 1910 into donut\n\nMerge commit \u0027656a2726ad977be194c3b8f4bf4ec3068bf3e1c9\u0027\n\n* commit \u0027656a2726ad977be194c3b8f4bf4ec3068bf3e1c9\u0027:\n  Update aapt badging for native code, configs, density, etc.\n"
    },
    {
      "commit": "bb9ea30ea9e390e69602935571795d2c80dc7b91",
      "tree": "49aa4e0e04f5c3d906149eff4ef6c1b93f3aa9c6",
      "parents": [
        "ce2372de58ad018623748f63e61ffc70c9eb8895"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon May 18 15:22:00 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon May 18 15:22:00 2009 -0700"
      },
      "message": "Update aapt badging for native code, configs, density, etc.\n"
    },
    {
      "commit": "28a6f667c2c668f5b388a54bcfafc27d2d9cb299",
      "tree": "0e6254d3e428e8f5fb24aefb08ebc35ccf8aadb6",
      "parents": [
        "b16a8df65ba145f6ce49a54301642ff1ed71a1a3",
        "e85bb9ebcce85b8c7a0e0ccb5116cd25bf684727"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 15 16:25:41 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 15 16:25:41 2009 -0700"
      },
      "message": "am e85bb9eb: Merge change 1823 into donut\n\nMerge commit \u0027e85bb9ebcce85b8c7a0e0ccb5116cd25bf684727\u0027\n\n* commit \u0027e85bb9ebcce85b8c7a0e0ccb5116cd25bf684727\u0027:\n  Add the backup data file writer C++ class.\n"
    },
    {
      "commit": "2e1da32203b7f6df76023f25a7382a31fad6b19d",
      "tree": "4595241ae1e0e2207fc2285774f6fef86320e6b6",
      "parents": [
        "4535e40544aeb957d44fad75fbe5676effe03689"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Fri May 15 18:20:19 2009 -0400"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Fri May 15 18:20:19 2009 -0400"
      },
      "message": "Add the backup data file writer C++ class.\n"
    },
    {
      "commit": "55051ebdd1ebf043f9d0e3dcf025c8c8930cf567",
      "tree": "e2e51e5c9fa3bcba1dabf7e770b6c2b85e4e6cd7",
      "parents": [
        "dd6face5a66ed6c9ac24b2754ec046b82881182c",
        "4535e40544aeb957d44fad75fbe5676effe03689"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Fri May 15 07:55:51 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 15 07:55:51 2009 -0700"
      },
      "message": "am 4535e405: Implement the C++ class to write the backed up file data.\n\nMerge commit \u00274535e40544aeb957d44fad75fbe5676effe03689\u0027\n\n* commit \u00274535e40544aeb957d44fad75fbe5676effe03689\u0027:\n  Implement the C++ class to write the backed up file data.\n"
    },
    {
      "commit": "4535e40544aeb957d44fad75fbe5676effe03689",
      "tree": "6861c7e610cd7061338b361ecab09d6b19ac3ca6",
      "parents": [
        "eae850cefe7e149f396c9e8ca1f34ec02b20a3f0"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Fri May 15 09:07:06 2009 -0400"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Fri May 15 10:37:10 2009 -0400"
      },
      "message": "Implement the C++ class to write the backed up file data.\n"
    },
    {
      "commit": "a64b860749ad7e5f9e887013d87b56b928c5d405",
      "tree": "f291ddd4fc94619955703f4d55f34c6d814df6c0",
      "parents": [
        "8f9ff7e77f73b2712f775245113ea53614485317",
        "aa642c0cc20293137376d44f8221876c121e5be9"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 14 14:53:27 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu May 14 14:53:27 2009 -0700"
      },
      "message": "am aa642c0c: Merge changes 1591,1596 into donut\n\nMerge commit \u0027aa642c0cc20293137376d44f8221876c121e5be9\u0027\n\n* commit \u0027aa642c0cc20293137376d44f8221876c121e5be9\u0027:\n  Get the backup calling through to the file backup helper.\n  Fix typos.\n  Add a new feature to android.os.Debug to add the ability to inject only specific fields when calling setFieldsOn().\n  Fixes #1836075. Adds consistency checks for the View hierarchy. To enable them, you need a debug build and ViewDebug.sConsistencyCheckEnabled set to true in debug.prop. This change also lets you easily enable drawing and layout profiling in ViewRoot by setting ViewRoot.sProfileDrawing, ViewRoot.sProfileLayout and ViewRoot.sShowFps in debug.prop with a debug build.\n  Add Intent.ACTION_APP_ERROR\n"
    },
    {
      "commit": "290bb011c5c1a9ba1f2116810b06cf52a9c36b3e",
      "tree": "cfb9ce077d79021e86c1b8d7951f3655520f368d",
      "parents": [
        "ec2d74d40f9b7a8bf96feeb45a5d054d8b0ce0dd"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Wed May 13 18:57:29 2009 -0400"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Thu May 14 09:39:32 2009 -0400"
      },
      "message": "Get the backup calling through to the file backup helper.\n\nThis includes some cleanup to make the parameters match\nbetween BackupService.onBackup and FileBackupHelper.performBackup.\n"
    },
    {
      "commit": "70a16b408442ad1e665ee37ccdb8c88c8d3d74d6",
      "tree": "034ca892743cc233ef50bdc88b9f1f3bff9f4912",
      "parents": [
        "f37b96299f62ab4e28e97eead72de2418de2cdf8",
        "3022a11c4c41afa9d39b4d0d9abd7e6bcb6b8472"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon May 11 10:00:49 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon May 11 10:00:49 2009 -0700"
      },
      "message": "am 3022a11: Merge change 1239 into donut\n\nMerge commit \u00273022a11c4c41afa9d39b4d0d9abd7e6bcb6b8472\u0027\n\n* commit \u00273022a11c4c41afa9d39b4d0d9abd7e6bcb6b8472\u0027:\n  Modify camera framework to use new streamlined binder interface.\n"
    },
    {
      "commit": "d6289b1b03d209219c2dd3126ee8839a45682b33",
      "tree": "1c7d73bff30577aaf680aea9f72df5a219a1ca2d",
      "parents": [
        "b4735b6c04c6bca3219115395748a1b5ef02ff6c"
      ],
      "author": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Thu May 07 19:27:32 2009 -0700"
      },
      "committer": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Mon May 11 07:36:58 2009 -0700"
      },
      "message": "Modify camera framework to use new streamlined binder interface.\nThis is the second half of bug 1837832. Modifies the camera client\nand camera service to use the new binder interface. Removes the\nold binder interface. There will be one more part to this change\nto surface the undefined callbacks to the Java layer so that\npartners can implement new features without having to touch the\nstack.\n"
    },
    {
      "commit": "c825d3ebd6ca66e65e63fdc76f032e08aa2a8e22",
      "tree": "dd9eca8ae68aaab8ed8d692ccf425a76541e9972",
      "parents": [
        "1e09a72a75f5e6236acffe84f2758dd042b1c8c0"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Wed May 06 12:55:46 2009 -0400"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Fri May 08 09:33:19 2009 -0700"
      },
      "message": "fix the sim build.  disables the tests for now.\n"
    },
    {
      "commit": "ec91aab3beba91633de26e80f75e731cec213b50",
      "tree": "b25b29a93b2f664292f4c37e1cc559c74f210bfc",
      "parents": [
        "3d73eeb7b3c1f83a7286f4dba40530088d21323e",
        "3fd7e13960c2763225c5c8bc187bd15da04820dd"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 08 07:22:45 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 08 07:22:45 2009 -0700"
      },
      "message": "am 3fd7e13: Merge branch \\\u0027donut\\\u0027 of ssh://android-git.corp.google.com:29\n\nMerge commit \u00273fd7e13960c2763225c5c8bc187bd15da04820dd\u0027\n\n* commit \u00273fd7e13960c2763225c5c8bc187bd15da04820dd\u0027:\n  Add new binder methods to camera client to support generic callbacks\n"
    },
    {
      "commit": "2a04aefdf03abbdabb035f89c8a1df636c168de0",
      "tree": "af1373ffe5244655f868c9145fdf3813fe82e66a",
      "parents": [
        "50396063c2fbb1f427cf31e0b8a56567fb5a069c"
      ],
      "author": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Thu May 07 12:25:25 2009 -0700"
      },
      "committer": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Thu May 07 12:25:25 2009 -0700"
      },
      "message": "Add new binder methods to camera client to support generic callbacks\nThis is the first step in a multi-step change to move from the old\nspecific callbacks to a generic callback. This will allow future\nflexibility in the interface without requiring binder rewrites.\nBug 1837832\n"
    },
    {
      "commit": "56b7eeaa01fa34de1dad1b113f5355e999ee1d10",
      "tree": "56a8306e9e23f0abf2a730fb78c4d0c2b43c6ec0",
      "parents": [
        "761daf7550c256258886824fdb939b352c5fd08c",
        "f3af740bdfc261b1cb25c0799af780d3753d4518"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed May 06 15:48:33 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed May 06 15:48:33 2009 -0700"
      },
      "message": "manual merge f3af740bdfc261b1cb25c0799af780d3753d4518\n\nMerge commit \u0027f3af740bdfc261b1cb25c0799af780d3753d4518\u0027\n"
    },
    {
      "commit": "f3af740bdfc261b1cb25c0799af780d3753d4518",
      "tree": "f33c3453caf03db8c4b7a358ddc8a8d3945076ae",
      "parents": [
        "b9c9d260f21b321527c4622a123af9767630d94d"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue May 05 00:49:01 2009 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Wed May 06 11:35:46 2009 -0700"
      },
      "message": "Fixed issue 1709450: Requirements for CDMA Tone Generator\n\nAdded new tone types for CDMA IS-95 specific tones.\nAutomatic selection between IS-95, CEPT and JAPAN version base on operator\ncountry code for call supervisory tones.\nAlso improved tone generator capabilities:\n- Each tone segment can now generate its own set of frequencies\n- A tone does not have to be a succession of alternating ON/OFF segments\n- The sequence repetition does not have to start from first segment\n"
    },
    {
      "commit": "7fca56513587bbf899d4d281a43d7eb0819da9af",
      "tree": "883305feda8332604e58c311f5d948858cc4cb49",
      "parents": [
        "f431b4b3ee636a0ba62f462fa51fc3e5ce09c734"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Wed May 06 12:55:46 2009 -0400"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Wed May 06 12:55:46 2009 -0400"
      },
      "message": "fix the sim build.  disables the tests for now.\n"
    },
    {
      "commit": "b61381bc942a2cd60fcdced888ede76cd0711f00",
      "tree": "b6e9243cb85daa355a7a8c638de414aeaf7d550f",
      "parents": [
        "0d8f5a3f4fd37bb70437e29e0abe28906f2edaf2",
        "4488b11c51ad8f5b8330279a9405e5a0f8586aa4"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 06 01:31:32 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed May 06 01:31:32 2009 -0700"
      },
      "message": "am 4488b11: Merge change 1039 into donut\n\nMerge commit \u00274488b11c51ad8f5b8330279a9405e5a0f8586aa4\u0027\n\n* commit \u00274488b11c51ad8f5b8330279a9405e5a0f8586aa4\u0027:\n  Add some C++ code to do raw files for backup\n"
    },
    {
      "commit": "3ad977b41c6e4ef30c2f4f316b909b742ffc04aa",
      "tree": "0b3c7a5263817709bc31c19e02f9fbc19b63de82",
      "parents": [
        "06d96020c35dac2bf1651cb8bd4cfced911f1142"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Tue May 05 11:50:51 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Tue May 05 13:45:25 2009 -0700"
      },
      "message": "Add some C++ code to do raw files for backup\n"
    }
  ],
  "next": "8e644062271b4082c6348a5061a75148e0086177"
}
