)]}'
{
  "log": [
    {
      "commit": "03428fcc8bfb43968f9e9cbd3c6c1fd23290439b",
      "tree": "09daf4c8be976298969439ab8c987d4641ead3b4",
      "parents": [
        "f5702d01b9a7ded2e935374b27002ac2a32fb502",
        "4018f35e274e5c8c005623ac3f724686dc8299d3"
      ],
      "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": "be1bc0a1f969dd874d4a4d10c70f8d585b21a214",
      "tree": "b6e168923feee89f7e50bc16d2d0683d418ea1f7",
      "parents": [
        "03868d319572696939368207d7caec014feaf38f"
      ],
      "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": "05915a4d9d4a9ffc9a8fe36a3079762ca7b847d5",
      "tree": "386115392cef0eb33bf8fc8e193655f045c796c3",
      "parents": [
        "c5e321700d9f7385de595a3ce248aa5db404d689",
        "4182cf630895f8c607958c536098b5cfb743ecb4"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 18 19:46:59 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jun 18 19:46:59 2009 -0700"
      },
      "message": "am c6282977: Merge change 4718 into donut\n\nMerge commit \u0027c6282977180c220b1a68c23a328e7d75a11963ab\u0027\n\n* commit \u0027c6282977180c220b1a68c23a328e7d75a11963ab\u0027:\n  Fix sim-eng build and simplify previous lcd-density related patch\n"
    },
    {
      "commit": "ae71accf63add81ec3d3cd0269536c24db112cab",
      "tree": "b89b1cc2e1ba38d0737f24ad9cb1a25457027997",
      "parents": [
        "c62834b9faafdccc56439bdb62a63ffcdfbcb4c4"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Fri Jun 19 04:41:12 2009 +0200"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Fri Jun 19 04:41:12 2009 +0200"
      },
      "message": "Fix sim-eng build and simplify previous lcd-density related patch\n"
    },
    {
      "commit": "4910dc62561c90c75d953a04f75b31f16e0c0e9c",
      "tree": "4244157c729b78b8900cf455a2f274905fa317e2",
      "parents": [
        "0388b513418f0e1eb45bcb554f866e160cd475da",
        "c62834b9faafdccc56439bdb62a63ffcdfbcb4c4"
      ],
      "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": "0388b513418f0e1eb45bcb554f866e160cd475da",
      "tree": "eb5e1caf7ffc8478dc0d2de23e8993f1cb71613b",
      "parents": [
        "bb4818d155a2797a34f2a557a6bc21794ebcf5fc",
        "1c5550974f75ff455175e390b8b3b7f49ac7ff75"
      ],
      "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": "6bda7fd5564a1a88daef7a00890b3eaa191b8854",
      "tree": "0bdda15863c0e050672738f8acb819ef7fb2e2c1",
      "parents": [
        "da1430be269b2b20920b6cb27616f54e2b83a973"
      ],
      "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": "da1430be269b2b20920b6cb27616f54e2b83a973",
      "tree": "a262f22df1bf4797e25bfe2209416dbcfe465f1b",
      "parents": [
        "fa1cf39b803d71ac22af606ce0dd9dd81d512325"
      ],
      "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": "e2095d0a1c4cf65562213bc54eb880cd6dd8c82a",
      "tree": "aad9e7393807f410bc45103b229ca9bc12031954",
      "parents": [
        "b041606d8f8490a6a6a0c767eb62cff795aee088",
        "bcb14286cc3f38701b0a28991694e4bbdaff10fc"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 18 15:43:28 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jun 18 15:43:28 2009 -0700"
      },
      "message": "am b1cdb648: Merge change 4565 into donut\n\nMerge commit \u0027b1cdb64877ebd3b8c5182913ff02edd8b54a6982\u0027\n\n* commit \u0027b1cdb64877ebd3b8c5182913ff02edd8b54a6982\u0027:\n  Allow the qemu.sf.lcd_density property to override the value of ro.sf.lcd_density\n"
    },
    {
      "commit": "bcb14286cc3f38701b0a28991694e4bbdaff10fc",
      "tree": "ff5a60708d2963de62d54c089209ed314e723bba",
      "parents": [
        "0491cda63bd88f64b2f845349e811ad46f61c09a",
        "694e10ba8778dbb3cda9abe106f73ec0f45c8800"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 18 15:41:34 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 18 15:41:34 2009 -0700"
      },
      "message": "Merge change 4565 into donut\n\n* changes:\n  Allow the qemu.sf.lcd_density property to override the value of ro.sf.lcd_density\n"
    },
    {
      "commit": "694e10ba8778dbb3cda9abe106f73ec0f45c8800",
      "tree": "5a40bf218a32b7c98c3f060558cb91f154349ec8",
      "parents": [
        "55a72ba8eb43cd4423dff606cb8aefc3a1a23aa4"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Thu Jun 18 04:30:32 2009 +0200"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Fri Jun 19 00:17:31 2009 +0200"
      },
      "message": "Allow the qemu.sf.lcd_density property to override the value of ro.sf.lcd_density\n\nro.sf.lcd_density is usually defined in the build.prop file which is parsed by init\nbefore anything else. Since its name begins with \"ro.\", this property is write-once\nand cannot later be modified, e.g. in /system/etc/init.goldfish.sh.\n\nIn other words, you cannot use \"emulator -prop ro.sf.lcd_density\u003d\u003cvalue\u003e\", since\nit is impossible to override the value defined in build.prop\n\nThis patch modifies the system to recognize \"qemu.sf.lcd_density\" as an override\nvalue, which can be set with \"emulator -prop qemu.sf.lcd_density\u003d\u003cvalue\u003e\", forcing\na specific density.\n\nA later patch will allow the emulator to automatically set this property depending\non AVD hardware configuration settings.\n"
    },
    {
      "commit": "00ea06792b76f30b7e1ee450f0915edb5df75e42",
      "tree": "be4ebf3ab853ee4af8dbc003607f1f779459c740",
      "parents": [
        "14b8f4ccc671a5cbac4a91b9f167f9ccaffb5eba",
        "e272cd8e4cd7f695c1f368e6cd995f37efa3e3c3"
      ],
      "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": "f509f669cfde367b4591b027d95512accbd2ccef",
      "tree": "62ca6fc3dcb6c4e2f005d95422ec32a59cb1cca5",
      "parents": [
        "74b00231cc0ecca02a76cf7d2ee20db05fa2309e"
      ],
      "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": "f757bd07108267d37a7944353d2cf2a40d68e115",
      "tree": "93f20b722f646402831336429999e8603aed6afb",
      "parents": [
        "ae13d759db51d5d31cffc632570fb262ae56508d",
        "03aa8d7d04428b9c7981f9bada5acf1e808b0056"
      ],
      "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": "03aa8d7d04428b9c7981f9bada5acf1e808b0056",
      "tree": "a1a5e71e6912eb35a5cf10d1a0fe5b156bcd82da",
      "parents": [
        "4d86bc379151050bf6b76da54b683cab7afff00e"
      ],
      "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": "fcb97fcc43844d53a7d9e986dcb35119a72ca431",
      "tree": "d5ec015e9035c9d5775e2f979efb7d55f0094caf",
      "parents": [
        "b067d5589be1b5065e5c473099f3d3664330885c",
        "fd5212ed227c14b6fb5b876727bba7a9a536f7ab"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Sun Jun 14 21:13:03 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Sun Jun 14 21:13:03 2009 -0700"
      },
      "message": "am 2fdd428e: Fix some backup reader/writer issues; make local transport do backup\n\nMerge commit \u00272fdd428e0f18384160f7c38ce3a2cd9ba7e7b2c2\u0027\n\n* commit \u00272fdd428e0f18384160f7c38ce3a2cd9ba7e7b2c2\u0027:\n  Fix some backup reader/writer issues; make local transport do backup\n  Fix the jni initializer.\n  Add RestoreFileHelper, BackupDataInput, and add java wrappers for the methods on BackupDataOutput.\n  Fix bug #1812041: activity manager crash with bad args.\n  Journal backup requests so that they won\u0027t be lost in a crash\n  Fix data connection issues.\n"
    },
    {
      "commit": "7bdc440894ead2dc3f0eafee903782c9eb584ecd",
      "tree": "77bac1f903717b3f88276e947aea228d4f831536",
      "parents": [
        "d15085f31ee1a315d25897dbf6984494205921d7"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Fri Jun 12 11:06:24 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Fri Jun 12 16:21:24 2009 -0700"
      },
      "message": "Add RestoreFileHelper, BackupDataInput, and add java wrappers for the methods on BackupDataOutput.\n"
    },
    {
      "commit": "a08c7b6759075c3076e6f2c52df71dd7da894c15",
      "tree": "d722056a833b931e1c63195cd552c3d83f1db078",
      "parents": [
        "854e909cac151233d254d2389a2d0fe488eff717",
        "fcff1ffa541e0076df6adeb437ba79bb4c3fa35d"
      ],
      "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": "1a9e19a73e12f5e4891557de64cab5b9b7ae1ac5",
      "tree": "a8ac144dc38834a992ff8a07fed46a51755ba8a1",
      "parents": [
        "0ad6120dadc1665f394e73330d30e949066c77e1"
      ],
      "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": "0ad6120dadc1665f394e73330d30e949066c77e1",
      "tree": "2bdfbd1b67328716af81e2dd8ec37cc41690c249",
      "parents": [
        "67182a34f0268dcda9442f0a211f88e12626aa3b"
      ],
      "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": "e3408b8e029f575e2edfce4a30decdc5db473d37",
      "tree": "f8e699fa23cf8e3c0c6c73146ce3bda87f5e0e16",
      "parents": [
        "8ba1e7f7cac0d1b4afe691f8a4b0c1b26bef6a4f"
      ],
      "author": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Tue May 05 22:26:12 2009 -0700"
      },
      "committer": {
        "name": "Jaikumar Ganesh",
        "email": "jaikumar@google.com",
        "time": "Tue Jun 09 17:21:08 2009 -0700"
      },
      "message": "Framework changes for bluez4.\n\nChanges in the Bluetooth JNI calls and framework functions\nfor Bluez4.\n"
    },
    {
      "commit": "4fcd9c700368f08117aa1e2264f56eeb6b8af832",
      "tree": "210a453c29ea11b03a0e1b08850cb3c1ac83785d",
      "parents": [
        "32ca56e23b8f14748421dcd678da244b4a05aef7"
      ],
      "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": "7e83f043d9c7afc42b632aa9567ecc17e901068c",
      "tree": "dd7065f0a211813617e7d392f3b17af2030082c3",
      "parents": [
        "25cf68b1f8d79192e6ce08ad73ac4e561860a96c"
      ],
      "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": "c5992f071d1a0c89db0ff78dfca7bc81b9265fc3",
      "tree": "d57a85663e29a3d497ebeed8562344380fc851bd",
      "parents": [
        "31ff12b53de8accf0c24b6df36ad118ada232c19",
        "861aa2f0c9136298380496bd78d6a18e69331c53"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 05 01:29:08 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 05 01:29:08 2009 -0700"
      },
      "message": "Merge change 3284\n\n* changes:\n  rename string_array.h to StringArray.h and move the implementation from the header file to a new cpp file.\n"
    },
    {
      "commit": "861aa2f0c9136298380496bd78d6a18e69331c53",
      "tree": "27e1508d0451bc6c93d191cb81d8910836a3c4b0",
      "parents": [
        "6fb4be4f76e2c784d1fab76eca742d2f90507540"
      ],
      "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": "1ba244fb656b452e3e4239e01f117cf8af336158",
      "tree": "950a5b302d3e3ed063d9450e8bba4cc4c58837ab",
      "parents": [
        "4fb7b9dba30ceeb1d4740b4d5966459c2bf61cd2",
        "173e38d47c0c1f2407fe2741700b8bdc3c6035cc"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Jun 05 00:29:50 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Jun 05 00:29:50 2009 -0700"
      },
      "message": "am 0032ce80: Fix back_up_files() error detection when opening/CRCing the file\n\nMerge commit \u00270032ce80ac127e6bfb25d727162eee4af208dc77\u0027\n\n* commit \u00270032ce80ac127e6bfb25d727162eee4af208dc77\u0027:\n  Fix back_up_files() error detection when opening/CRCing the file\n"
    },
    {
      "commit": "6d2bc14d2420689d9789fadc3058bfc1191a8e72",
      "tree": "c369a5ee2db4cf277eab898bfd1322c7fe886583",
      "parents": [
        "cd1a14fdfb5e7cd736e346229727081c45c59d0f",
        "e0074ad3cea369497f9a8a5b1ad2a81a293f1169"
      ],
      "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": "173e38d47c0c1f2407fe2741700b8bdc3c6035cc",
      "tree": "651c4afeda36110fc3e42006fd58626ae971e3e0",
      "parents": [
        "e9f4934470d09028bf3a92a2ed96c56d0a00662c"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Jun 04 17:01:06 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Thu Jun 04 17:02:56 2009 -0700"
      },
      "message": "Fix back_up_files() error detection when opening/CRCing the file\n"
    },
    {
      "commit": "f446ba9dcb7df59f886be2f15d83ed3814a556f7",
      "tree": "56fef80823c51f03029cf3cf154ec431fa951443",
      "parents": [
        "b2d4ba5bb25c7cfe5c81ebd16b124db328d0d735"
      ],
      "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": "294423e148c62b413788945be00cedde3cb3acec",
      "tree": "1f4cc3035a7ee6aa1c73b12d440aa5568f800638",
      "parents": [
        "3b7294521fae1a3075a112e0e3bd315cfe0155df"
      ],
      "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": "1bc9c93faff43eeffe61fc371674159da83f1690",
      "tree": "f997ea48f9a576dd9e61b8ad98c420694147a96c",
      "parents": [
        "ad736fb1658b2a96530c518ade7cf44ee6f088f9"
      ],
      "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": "e0c322049ab2be291c1fc40f79702543d4e77934",
      "tree": "e3e672f4f4fdd72b465cc0f39fb95c7711814122",
      "parents": [
        "d07f2a523f43051a681683657f7c0da2c49f46a4"
      ],
      "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": "c20e4ebef258f243447b95349bb2664ac0b8013b",
      "tree": "ae7b62e213251f7ab364e9fbcc4fe68de1e3d81a",
      "parents": [
        "c61218f33f8c01a96bf495739d60561a2ff5a06f",
        "489d3953f01b3d71774dd76fc2dbe985bb0dfa06"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 29 14:57:33 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 29 14:57:33 2009 -0700"
      },
      "message": "am b61ae351: Merge change 2747 into donut\n\nMerge commit \u0027b61ae351256518add7bcb40e0bf18337dd87195c\u0027\n\n* commit \u0027b61ae351256518add7bcb40e0bf18337dd87195c\u0027:\n  log the geomerty of surfaces causing an out of memory in SurfaceFlinger.\n"
    },
    {
      "commit": "489d3953f01b3d71774dd76fc2dbe985bb0dfa06",
      "tree": "b6e64e28834fa7911fd87ee97fd3c30569028cf4",
      "parents": [
        "811eeff5778a3990a5488e6a31ab330a4b1e5328",
        "3c4d8c83da33bdd740afd683af42eca1a6bd6500"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 29 14:55:48 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 29 14:55:48 2009 -0700"
      },
      "message": "Merge change 2747 into donut\n\n* changes:\n  log the geomerty of surfaces causing an out of memory in SurfaceFlinger.\n"
    },
    {
      "commit": "3c4d8c83da33bdd740afd683af42eca1a6bd6500",
      "tree": "0dc5130f7eb8ad6df976263aaf4899db8ced0ba3",
      "parents": [
        "253dd5cb262d5b49e692a428398dfc9284b34495"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri May 29 14:55:06 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Fri May 29 14:55:06 2009 -0700"
      },
      "message": "log the geomerty of surfaces causing an out of memory in SurfaceFlinger.\n"
    },
    {
      "commit": "e5eb06d98bc4759e3a248e2ece034cca9d103e28",
      "tree": "171eadda1b903980d9040c248ba62d0392a9dba5",
      "parents": [
        "d87acc22284078acc7077b8c833a1b36a377ad6a",
        "52192700a7a00c44c9737b8f991a3d266b72a278"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 29 09:42:26 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 29 09:42:26 2009 -0700"
      },
      "message": "am d9cc7659: Merge change 2706 into donut\n\nMerge commit \u0027d9cc7659fa9b8544e2a3ca7b7040fbd79afdf7ea\u0027\n\n* commit \u0027d9cc7659fa9b8544e2a3ca7b7040fbd79afdf7ea\u0027:\n  Fix issue 1883666: Audio coming from the music player stopped suddenly\n"
    },
    {
      "commit": "01c4ba35637e1c3fbddcb80ce619345812f23c3f",
      "tree": "7be144bfbcbc6c7a8d8e327a2aa45e22669561d7",
      "parents": [
        "ce3647052d06127dc1996391a7d5fdeec6c88b20"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri May 29 02:03:21 2009 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Fri May 29 02:03:21 2009 -0700"
      },
      "message": "Fix issue 1883666: Audio coming from the music player stopped suddenly\n\nThe problem comes from the code handling the automatic change of audio routing to speaker when notifications are played. The music is also muted while the sound is forced to speaker.\nTo avoid truncating the end of the notification, a delay is inserted between the end of the notification and the restoration of the audio routing.  If a new notification starts during this delay, the current music mute state read and saved before muting music corresponds to the forced mute due to previous notification. When the new notification ends, the mute state restored is muted and music stream stays muted for ever.\n\nThe fix consists in reading and saving music mute state only if the audio routing has been restored (check that mForcedRoute is back to 0).\n"
    },
    {
      "commit": "da416411e0598adbf180c187eb0c2bc08a4df283",
      "tree": "b59d59b32398ae96d876500125a81435f85eaba6",
      "parents": [
        "75cb9e7a51ce6081f399a508f485405bbaa0b70a"
      ],
      "author": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed May 27 16:01:39 2009 -0700"
      },
      "committer": {
        "name": "Andy McFadden",
        "email": "fadden@android.com",
        "time": "Wed May 27 16:01:39 2009 -0700"
      },
      "message": "Sim-only files move, part 2/2.\n\nMove Pipe and executablepath from libutils to the simulator, since nothing\nelse uses them.\n"
    },
    {
      "commit": "2787dddcd0a814aa4a90b9e8cc72c9c258c94854",
      "tree": "7fb2c22a1938e7825397bf0100404d3608d46df9",
      "parents": [
        "ea44d9ab96a26cd85116b6ec0dc5639be38db034",
        "5208ec29db756f8c875a121e8134e22f4aa4d23c"
      ],
      "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": "35801cea5f301c0e1d7a93b15a8f73f98e6b1033",
      "tree": "2cad208ad6212d912b6f3476c98c0873f8d56fd4",
      "parents": [
        "7419ebc96fa5ae665dd4426dc5a4277c9ae1f325"
      ],
      "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": "83c0446f27b9542d6c2e724817b2b2d8d1f55085",
      "tree": "a5a1a310070cad89ee8aaa86d3b1b874f9d29610",
      "parents": [
        "5f2397488ab700674d059a001e917de28a1b0a0c"
      ],
      "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": "a26299d276452ccf04f9b9625eadc49c0bf1650b",
      "tree": "14cda48fb18392b4dc08a607283bd75af4289e3a",
      "parents": [
        "192c1dc653009e2c39ee4eb386f2644989857913",
        "55be03e18975a211121ac6c3440f63872721f74e"
      ],
      "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": "570dd0b4da533032ba4ec6214eeebb1c90f6d512",
      "tree": "a8b8a21035b6c977ed330022082e9098dfb0ebeb",
      "parents": [
        "dd9d5f68ebd53a307477231c43a53b8870f47a3a"
      ],
      "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": "0180a05fda0bee586d031942a80076feeff27171",
      "tree": "37b5b547bfbb15a47b7a5050012fdf82b9f8cbf8",
      "parents": [
        "666dce10e27d158a60fa9b43ecba292de93f21f7",
        "ca7b80e431fe8c742d396e84722eaf2f6b70a4d8"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat May 23 14:07:35 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Sat May 23 14:07:35 2009 -0700"
      },
      "message": "am 04561a55: Merge change 2359 into donut\n\nMerge commit \u002704561a55df693e7bd8d3047ccc4fbef504ac07cf\u0027\n\n* commit \u002704561a55df693e7bd8d3047ccc4fbef504ac07cf\u0027:\n  Fix for the simultor build breakage.\n"
    },
    {
      "commit": "ca7b80e431fe8c742d396e84722eaf2f6b70a4d8",
      "tree": "34413b864be0be643126826258030449e10f0b18",
      "parents": [
        "7cd5339b1100ebcaf5bf05e44e0d0adeba4f261c",
        "b4c4265f9e532fb18c2d7097b1b2dd82d90f6b99"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat May 23 14:05:50 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat May 23 14:05:50 2009 -0700"
      },
      "message": "Merge change 2359 into donut\n\n* changes:\n  Fix for the simultor build breakage.\n"
    },
    {
      "commit": "b4c4265f9e532fb18c2d7097b1b2dd82d90f6b99",
      "tree": "ebbcf147e1d70fc7bfd0a9a1a6475a5e2bb4a3ec",
      "parents": [
        "610de0974e0b02c1e4fa9b381eca725c563411fb"
      ],
      "author": {
        "name": "Nicolas Catania",
        "email": "niko@google.com",
        "time": "Fri May 22 13:41:38 2009 -0700"
      },
      "committer": {
        "name": "Nicolas Catania",
        "email": "niko@google.com",
        "time": "Fri May 22 15:54:26 2009 -0700"
      },
      "message": "Fix for the simultor build breakage.\n\nAdded missing include sys/time.h for utimes.\n\nDetects when stat64 uses a timespec for the modif and access times\nand work around the missing st_*time_nsec.\n\nApologies for the whitespace changes, emacs removed them automatically.\n"
    },
    {
      "commit": "4e97f8c62f3eb3c51343e9f4bbd898992a13903d",
      "tree": "20a0c65ae3db8898fb6328aeacf1212a63a6ecac",
      "parents": [
        "19fbae088ea8063346c0aff687a07a9fca61bab2",
        "b6333b34a2d6e265edf2a052646b07c0b1456ab6"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 22 14:53:18 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 22 14:53:18 2009 -0700"
      },
      "message": "am d50a458b: Merge change 2351 into donut\n\nMerge commit \u0027d50a458bb291801ab9fdc119301bc7b84b42a6e3\u0027\n\n* commit \u0027d50a458bb291801ab9fdc119301bc7b84b42a6e3\u0027:\n  Fix a major bug in Bundle when unparcelling from AIDL.\n"
    },
    {
      "commit": "b6333b34a2d6e265edf2a052646b07c0b1456ab6",
      "tree": "03327f50b97f4dbd0235eb729d076cdb4c92b73a",
      "parents": [
        "3f256f34e2beffce263aed4ccf1d77d155ff37a0",
        "8af0f82d89b029edf7e104a36a9a6e48a92f9e93"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 22 14:51:22 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri May 22 14:51:22 2009 -0700"
      },
      "message": "Merge change 2351 into donut\n\n* changes:\n  Fix a major bug in Bundle when unparcelling from AIDL.\n"
    },
    {
      "commit": "8af0f82d89b029edf7e104a36a9a6e48a92f9e93",
      "tree": "e21a3591ddc59e2aa74b194e96f007f1be75c124",
      "parents": [
        "454a6255884c0899b1402a0d5f67547e47528739"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri May 22 13:20:23 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri May 22 13:51:47 2009 -0700"
      },
      "message": "Fix a major bug in Bundle when unparcelling from AIDL.\n\nThere was a serious problem in the Bundle(Parcel) and readFromParcel() methods,\nwhere it wasn\u0027t doing the copying of the Parcel that Parcel.readBundle() does\nand is a basic requirement for it to work correctly.\n\nThis re-arranges the code to make all of these functions (hopefully) correct.\n\nAlso fix a problem in Parcel where we were not duping fds when copying data from\none Parcel to another.\n"
    },
    {
      "commit": "8f9ede0f6daef5bdb7327a17f22a4d4d545395f3",
      "tree": "87f8fd55264c8332fe00dcc7a3c2a51d6b47e0c1",
      "parents": [
        "ece3e3b231fe00b6bc0730ae4390b601f3d29ea8",
        "d95aabc9eb117803ee784777fc4ffd22c55ddf43"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri May 22 12:30:07 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri May 22 12:30:07 2009 -0700"
      },
      "message": "am 7198030f: This should fix the simulator build.\n\nMerge commit \u00277198030fce4b54820a65a10d54fae18a1ab5df84\u0027\n\n* commit \u00277198030fce4b54820a65a10d54fae18a1ab5df84\u0027:\n  This should fix the simulator build.\n"
    },
    {
      "commit": "d95aabc9eb117803ee784777fc4ffd22c55ddf43",
      "tree": "cc5c1903dc9bf9f22d2cc049338d77b3d761cd6a",
      "parents": [
        "610de0974e0b02c1e4fa9b381eca725c563411fb"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri May 22 12:25:56 2009 -0700"
      },
      "committer": {
        "name": "Marco Nelissen",
        "email": "marcone@google.com",
        "time": "Fri May 22 12:25:56 2009 -0700"
      },
      "message": "This should fix the simulator build.\n"
    },
    {
      "commit": "bdbf6b094d61f694f162a5a5279caededcb1f0a5",
      "tree": "b7a3cd2bd1a437237e71598d05b88be3f681c610",
      "parents": [
        "3cf34f1345eca75c5282b65dc4bda5f1e4f23d0d",
        "1131392281cebcf958bbf5981203b1a34eef6ba2"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu May 21 19:36:53 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu May 21 19:36:53 2009 -0700"
      },
      "message": "am 69a6c3eb: Merge change 2292 into donut\n\nMerge commit \u002769a6c3ebd46a8de0e896747757f364322c12608d\u0027\n\n* commit \u002769a6c3ebd46a8de0e896747757f364322c12608d\u0027:\n  split boot animation out of SurfaceFlinger\n"
    },
    {
      "commit": "a1ecca920e15ce04fe56ebf4f1b52ba711f9eb2d",
      "tree": "d5eca56524292b41940347ddbe5387fbf136c141",
      "parents": [
        "1bdc51faa8ecddf4ab34769bfc50becb454c5e79"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu May 21 19:21:59 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu May 21 19:21:59 2009 -0700"
      },
      "message": "split boot animation out of SurfaceFlinger\n\nConflicts:\n\n\tdata/etc/platform.xml\n"
    },
    {
      "commit": "a47f02afb1e1f2c4abd9379c13903a5dde89d354",
      "tree": "8a0f2d2172c27aa2dba4eae77a4420433af84294",
      "parents": [
        "a498449e2b11ed5f15e8c8fda9a429850f891434"
      ],
      "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": "53f6f3c7998fca1a7e1eb277d0ee0fc556be3f35",
      "tree": "6c724b8ae809dd67cc52262441562c84aaec016a",
      "parents": [
        "e55a957bdf9e8cd0968d5652378b74cfb9625cd9"
      ],
      "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": "c5b2c0bf8007562536b822eb060fc54a01f8e08b",
      "tree": "da6084f542177972cf72a985b5d2c10330f87de3",
      "parents": [
        "208059f67ed2dd9fa025e07fcb6954d3cb61c79e"
      ],
      "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": "208059f67ed2dd9fa025e07fcb6954d3cb61c79e",
      "tree": "b2fde632a7c9abf4137751ffe779318c0a89bd96",
      "parents": [
        "501c6179e158b2d5bfc67cb8b7180c02ac301f97"
      ],
      "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": "416acf8b32e32043908303b56dc3f29d242ab7f4",
      "tree": "abdde446880bebc1cc4c991c67b194ee395963b2",
      "parents": [
        "ebb31d0089c56f632cf8b48de21c0349cf1209a4",
        "2d3ff5b0cf53faeea7a5c2106003bd948c9172d4"
      ],
      "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": "473b6e2d2de9f204e020c87b63a4e9b665641f45",
      "tree": "6509039f5cea6ff967a424672004b3be64742c32",
      "parents": [
        "307738da27d460cadaf9e8e3c8dfc3e77e169009"
      ],
      "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": "8c28eab6e267e3dd36df277a3d0ba314341a148b",
      "tree": "dee56e6e6d25c1cdafbc8707df8043e6e26307ee",
      "parents": [
        "1e26a818e561c3640bf13b6e645077d5b95bb3a9",
        "2cccd133124e57016bf7ea4d746bf20aa3848a2c"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 20 08:54:45 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed May 20 08:54:45 2009 -0700"
      },
      "message": "am eb2c314b: Merge change 2042 into donut\n\nMerge commit \u0027eb2c314b4d31c44af8a27ef51120b33290e65837\u0027\n\n* commit \u0027eb2c314b4d31c44af8a27ef51120b33290e65837\u0027:\n  Remove deprecated openInputStream factory method\n"
    },
    {
      "commit": "1e26a818e561c3640bf13b6e645077d5b95bb3a9",
      "tree": "aecdafc06c659f1fbeff75ce3c2931056242eb3c",
      "parents": [
        "d0945865cc03d1a31281e97e86c09bada73e7d2d",
        "1afd622be1b213f74731e2dc4b6ea8bab4e36302"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 20 08:54:45 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed May 20 08:54:45 2009 -0700"
      },
      "message": "am a59aba8c: Merge changes 2023,2036 into donut\n\nMerge commit \u0027a59aba8cd88b8f98fa4de2a903899bc6ac9f73e8\u0027\n\n* commit \u0027a59aba8cd88b8f98fa4de2a903899bc6ac9f73e8\u0027:\n  Update more references to openInputStream in support classes.\n  Modify AudioFlinger to use updated openInputStream factory method.\n"
    },
    {
      "commit": "d0945865cc03d1a31281e97e86c09bada73e7d2d",
      "tree": "b957afeccd7ce83e899ba5138c307fc463c8f11a",
      "parents": [
        "00ef09e5c37b27836dd6b4d180cd261836530127",
        "6b566aff08081c4cd4b78019e956d9ce734d5797"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed May 20 08:54:44 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed May 20 08:54:44 2009 -0700"
      },
      "message": "am f6382011: Merge change 1998 into donut\n\nMerge commit \u0027f638201182818f9e4041c6a862a297c6723240c0\u0027\n\n* commit \u0027f638201182818f9e4041c6a862a297c6723240c0\u0027:\n  Add inputSource to openInputStream\n"
    },
    {
      "commit": "6c41033c47646e72467d523e8526f54c35bba19b",
      "tree": "49901de33e7108068825d6cd5f83dcc46fcc7e88",
      "parents": [
        "6554773d629a474df613946847a0225dca486155"
      ],
      "author": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Tue May 19 18:56:13 2009 -0700"
      },
      "committer": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Tue May 19 18:56:13 2009 -0700"
      },
      "message": "Remove deprecated openInputStream factory method\n"
    },
    {
      "commit": "6554773d629a474df613946847a0225dca486155",
      "tree": "8b31a2406ee7c92d5a82ad6e0dfeecc46d525e1d",
      "parents": [
        "0e06d21a227a0991474b572e4416f14e98118c6c"
      ],
      "author": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Tue May 19 18:28:20 2009 -0700"
      },
      "committer": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Tue May 19 18:28:20 2009 -0700"
      },
      "message": "Update more references to openInputStream in support classes.\nContinuation of bug 1846343\n"
    },
    {
      "commit": "0e06d21a227a0991474b572e4416f14e98118c6c",
      "tree": "8f042ecfc5ca62f4acf41bcd0cdbd96a2cb6b864",
      "parents": [
        "a5a11d47e9cfec8b504e625aa5c3eb0db96854f5"
      ],
      "author": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Tue May 19 16:41:29 2009 -0700"
      },
      "committer": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Tue May 19 16:41:29 2009 -0700"
      },
      "message": "Modify AudioFlinger to use updated openInputStream factory method.\nContinuation of bug 1846343\n"
    },
    {
      "commit": "a5a11d47e9cfec8b504e625aa5c3eb0db96854f5",
      "tree": "12647439a0f0ec3a7815510c938f3b29252a0c16",
      "parents": [
        "d03e95a9602d13dbdd10f54e3a2e7c60fc629a94"
      ],
      "author": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Tue May 19 14:38:46 2009 -0700"
      },
      "committer": {
        "name": "Dave Sparks",
        "email": "davidsparks@android.com",
        "time": "Tue May 19 14:38:46 2009 -0700"
      },
      "message": "Add inputSource to openInputStream\nContinuation of bug 1846343\n"
    },
    {
      "commit": "00875599646db9b32ddce85db3844e21071b0548",
      "tree": "c81cea214934a4d2c01be53bb686bd8c2994de94",
      "parents": [
        "9578ca1480a1357653c7d3376b4a08a3f2fa36bb",
        "f57bf2f9d172445bbfd39a6e6a59e089f8609174"
      ],
      "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": "7a5798596271cfe43a2cb8383ba9abda55ea9a7f",
      "tree": "8bc72118144386053c3551a02db29141f3abda63",
      "parents": [
        "7754d161d22d507f19b5b4d2e599acd63c331f73"
      ],
      "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": "5e3877f43fe6d8d33f70b4e9d2f39f77347cf151",
      "tree": "f563a334da30a8c0f2990474ba061852b7b168ea",
      "parents": [
        "814fa2d913f0edcc89a90c30d0fe009cfb74bf2e",
        "434c0b06627e50c8ca9b3dea7bce6cb07d0e189b"
      ],
      "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": "d502f05c6b355a0520781e6609dc8a2a5ce89f9e",
      "tree": "3577384dd6228cbbba95566f5a9b463c400cbb9f",
      "parents": [
        "8d626d6a48871fdb62b8adeea98e1299eca61184"
      ],
      "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": "26a87a8e823221d8b12a7af0f8f22305ef02c787",
      "tree": "f75d013e1a900eb2e05fb03554bfdf249ce673b8",
      "parents": [
        "5fab5c255fe1a334cb154a52261d41a270c5e401",
        "8d626d6a48871fdb62b8adeea98e1299eca61184"
      ],
      "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": "8d626d6a48871fdb62b8adeea98e1299eca61184",
      "tree": "bd7acdb12c4c33debf1e579be311b524713cce59",
      "parents": [
        "dff73b85fef1000571f558314ca5161ed1b67ac0"
      ],
      "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": "1d0ec01729f23e991243acf1b481f8cd9b7d27ef",
      "tree": "7c412e77bff1f37ceb3140afb70607df3be538ea",
      "parents": [
        "89be15596ce6a360cdbeb16683ac6232934d59db",
        "f910bd971257a89e4ff2e8baf041197d72f24e04"
      ],
      "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": "c7bbc69ed501a7d194c1cbb9c41e2681d3004bd9",
      "tree": "2db88e9f1a42bf5dfbbe01580a6e8071666179e9",
      "parents": [
        "289ab2c5d17d0d4214ee4f274d411b086116b7d6"
      ],
      "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": "fa1df1c64490212001737afc205854a6b2e55a35",
      "tree": "b5095e53aaa3c76c0e04a05f6e08ae607b987cd4",
      "parents": [
        "bbb94372ccba9b07fc6121399b8c258b1143d595",
        "5e7366f81df7c0211283b252cdcf80f6e59c41d2"
      ],
      "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": "93b94584edb1c59037319d9bbf84881ccff9f66a",
      "tree": "7397a7b18c5731e1350f15ff9e9855443261b8d5",
      "parents": [
        "acbd84df864a26d2a928dcc9975001f6f7fb42d7"
      ],
      "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": "2a98fb9fb1eda1f18cf1555634a7c33f3147234c",
      "tree": "9bc7f08736492bedcd162cd85c4c8dae7335ce2a",
      "parents": [
        "bed158f1def27bf7f5b89cf6f98dff365cf4660a"
      ],
      "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": "031af5ad8642782876630984b7cb29a548fec180",
      "tree": "5ae80989aa7d07fb313588b2a665cde65a987165",
      "parents": [
        "14a4c67dbbe6f8f919d9ec639b38222b11de03e0",
        "e5752df54bb03f98eb23e39d3975d9b48302a2ca"
      ],
      "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": "9b35233ea511eab24aa15de5dc2e94b6f8ed081d",
      "tree": "31e1e46ec081d441165e2f478560901b76192b55",
      "parents": [
        "2594c71c1c537fd204b5d1730437f151d31cc343"
      ],
      "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": "081b070f6ffc938ec1582916edf3e019eac36ebf",
      "tree": "d86b393c81582c96de28810a84ae4e6b36aa47b8",
      "parents": [
        "703b1bb1252c32f4d9a4bc1e9a262f2cb834b862"
      ],
      "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": "a1bc294cf4dd8dd504e4a47dda60b02d58e17d7b",
      "tree": "4d7731b21342b21d2ac6a8ac11333584cd1112b6",
      "parents": [
        "359cfdc27083f9066a8f374d538511fafc271740",
        "63f0227872e9c4f8a4516f734da5dd760435e886"
      ],
      "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": "0c4863b2669867cfc76ea9b50ea3f9b1fecfb9a4",
      "tree": "4944927123cae9802b2dc08962144db681a31c83",
      "parents": [
        "512ec5aae12c9c5c2f0ad64e8b467a33217e835c"
      ],
      "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"
    },
    {
      "commit": "3f54b2ae7ee5248aa87749f151130af5480e043c",
      "tree": "cfb2b2459fca772ec78ef18954d63b096cb50a14",
      "parents": [
        "20ab0ad25e00f6fea2094ec10a9609e2105cd7db",
        "75088b0a7a01bcffcd5f37361b7a29f33da6280c"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 29 13:35:37 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Apr 29 13:35:37 2009 -0700"
      },
      "message": "am 0124a15: Merge change 626 into donut\n\nMerge commit \u00270124a150157d69a9f0ea109be2390afb5399b8a7\u0027\n\n* commit \u00270124a150157d69a9f0ea109be2390afb5399b8a7\u0027:\n  fix 1803886 android15 Translucent GLSurfaceView demo does not display properly\n"
    },
    {
      "commit": "7f0d4f52ea5728972944bc1565432c7cb90a1e7e",
      "tree": "ae88f4ca375fb5da4f6f109e3263c5d75773151e",
      "parents": [
        "f1fee0234e615bdd58c47bdd87b905b42403c07f",
        "4c9ff468c94ff90f768ad933c50ffd9d9586f01c"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 29 13:35:33 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Apr 29 13:35:33 2009 -0700"
      },
      "message": "am 17f213b: Merge change 602 into donut\n\nMerge commit \u002717f213bc528cf296e133e9ec9c9e0ce5dce41781\u0027\n\n* commit \u002717f213bc528cf296e133e9ec9c9e0ce5dce41781\u0027:\n  Bug fix(1807910): media recorder crash due to the use of locked camera object (last part)\n"
    },
    {
      "commit": "abbab9ba2fda075b6038a1699a93c2c869e24ee7",
      "tree": "5505f0a4bd040395c2d8941c351af02d132e52f2",
      "parents": [
        "d1ae69b5711efe8e9eb6e34bff70bbf4293a9675",
        "972d985b7f72f870a11ce3ae46ed9a26162f4064"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 29 13:11:33 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Apr 29 13:11:33 2009 -0700"
      },
      "message": "am 0a9b5bb: Merge change 509 into donut\n\nMerge commit \u00270a9b5bbb47a965238ca0e1e699d61d7ddd054742\u0027\n\n* commit \u00270a9b5bbb47a965238ca0e1e699d61d7ddd054742\u0027:\n  Fix a media server crash (bug 1807910): part one\n"
    },
    {
      "commit": "e54a9e05f9de902ffd6d83a4c9b377379e6e3def",
      "tree": "d923ce168b585e203a5a4b5741cf0478b0590b02",
      "parents": [
        "58685aad1deec825c4a2235e7fdc8e21131d1b24",
        "5390ff2efc688d0348746d2653f6c09959e583c4"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Apr 29 13:11:32 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Apr 29 13:11:32 2009 -0700"
      },
      "message": "am 9c56513: Merge change 165 into donut\n\nMerge commit \u00279c5651390056cd9c2f68d5df057739528bd4128b\u0027\n\n* commit \u00279c5651390056cd9c2f68d5df057739528bd4128b\u0027:\n  Squashed commit of the following:\n"
    },
    {
      "commit": "2b42fa7fddafdfe27732813d79ca47a409a3b9c1",
      "tree": "fd60fb886045a715ba88f0b3dcf3f367fb8ceb6e",
      "parents": [
        "4c9ff468c94ff90f768ad933c50ffd9d9586f01c"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Apr 27 18:50:06 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Apr 27 18:50:06 2009 -0700"
      },
      "message": "fix 1803886 android15 Translucent GLSurfaceView demo does not display properly\n"
    },
    {
      "commit": "d2dc9ac87bbdbbe465a0a07b63843282fb28eee7",
      "tree": "81353fd56e648c945020fd67bdb770d9a5edcba4",
      "parents": [
        "9d206fa56f77ae6c32bf5144db4f95b0a6cfcb62"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Apr 27 12:01:59 2009 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Mon Apr 27 12:01:59 2009 -0700"
      },
      "message": "Bug fix(1807910): media recorder crash due to the use of locked camera object (last part)\n- remove an unused Camera constructor\n- add a check on the argument in Camera::create() method\n"
    },
    {
      "commit": "972d985b7f72f870a11ce3ae46ed9a26162f4064",
      "tree": "af6bbfa20b3daa657368797f9913ef6e170cf13f",
      "parents": [
        "e0c499153b8a2319ebe10748fd2a7966c257f318",
        "f1a5314076248a352915ae1a987725ae76cc8a22"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 23 15:58:38 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Apr 23 15:58:38 2009 -0700"
      },
      "message": "Merge change 509 into donut\n\n* changes:\n  Fix a media server crash (bug 1807910): part one Add a factory method that creates a Camera object from a remote client\n"
    },
    {
      "commit": "f1a5314076248a352915ae1a987725ae76cc8a22",
      "tree": "ce596b09ec5c09f07123be99ec05f2cc3eec9163",
      "parents": [
        "7f9857743dd001e89b8103bf7ecf2dfa3f65b996"
      ],
      "author": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Apr 23 14:07:23 2009 -0700"
      },
      "committer": {
        "name": "James Dong",
        "email": "jdong@google.com",
        "time": "Thu Apr 23 14:07:23 2009 -0700"
      },
      "message": "Fix a media server crash (bug 1807910): part one\nAdd a factory method that creates a Camera object from a remote client\n\nNext:\nThe changes in authordriver.cpp and android_camera_input.cpp will come.\nand the constructor for Camera object will be removed.\n"
    },
    {
      "commit": "2bcce3696e2fbb2f54f9e0fd18c40a83b2ba11fc",
      "tree": "0057538044583548295d59f7e7c31bc8f5635f48",
      "parents": [
        "37cb461e21c3328bbd6567696a13dfba14136ac6",
        "91a678088520abf63c1484d284629833877ff938"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Apr 22 17:12:34 2009 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Apr 22 17:12:34 2009 -0700"
      },
      "message": "Merge donut into master\n"
    },
    {
      "commit": "fd392958eac8813575c29aa733a5a1ec4f655279",
      "tree": "76fdfa29eff4d10bd9097e91da41071b808053d3",
      "parents": [
        "91a678088520abf63c1484d284629833877ff938"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Wed Apr 22 14:35:11 2009 -0700"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Wed Apr 22 14:35:11 2009 -0700"
      },
      "message": "Squashed commit of the following:\n\ncommit 012b56fc607cf243cf4b29cb2a5f172bcbe0aecd\nAuthor: Robert Greenwalt \u003crobdroid@android.com\u003e\nDate:   Wed Apr 22 14:31:26 2009 -0700\n\n    Additional fixes and tests for density.\n\ncommit 91fdc8e187551ae69e0029a4325fb3ad38fe411b\nAuthor: Robert Greenwalt \u003crobdroid@android.com\u003e\nDate:   Tue Apr 14 14:39:00 2009 -0700\n\n    Fix runtime resource selection logic.\n\n    Fix isBetterThan so that o or this may be supperior at any stage.\n    Used to only handle this-better or tie at each stage, biasing against o.\n    Also allows reset of unit test to succeed.  Fixes bug 1709202.\n"
    },
    {
      "commit": "4dd495b72cbe8cf8df03f862e8e600ac14fdf30d",
      "tree": "d97cea1e77ee59dab375fed7e4efcb56b007028a",
      "parents": [
        "ecb28b3021825c7eb2ff65d7d5528e6acf9fc249"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Apr 21 07:56:33 2009 -0700"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Tue Apr 21 07:56:33 2009 -0700"
      },
      "message": "Fix issue 1745312: Various cleanups in media framework\n\nAudioTrack, AudioRecord:\n  - remove useless mAudioFlinger member of AudioTrack and AudioRecord.\n  - signal cblk.cv condition in stop() method to speed up stop completion.\n  - extend wait condition timeout in obtainBuffer() when waitCount is -1 to avoid waking up callback thread unnecessarily\n\nAudioFlinger:\n  - remove some warnings in AudioFlinger.cpp.\n  - remove function AudioFlinger::MixerThread::removetrack_l()  as its content is never executed.\n  - remove useless call to setMasterVolume in AudioFlinger::handleForcedSpeakerRoute().\n  - Offset VOICE_CALL stream volume to reflect actual volume that is never 0 in hardware (this fix has been made in the open source): 0.01 + v * 0.99.\n\nAudioSystem.java:\n  - correct typo in comment\n\nIAudioflinger, IAudioFlingerClient:\n  - make AudioFlinger binder interfaces used for callbacks ONEWAY.\n\nAudioHardwareInterface:\n  - correct routeStrings[] table in AudioHardwareInteface.cpp\n"
    },
    {
      "commit": "4ab7abd7963f837c39e743ebe6bac1d351a56394",
      "tree": "16238417ae6ffcd00c756748485f568d2487051c",
      "parents": [
        "adbb2fa003b604f68e76207f34a6dcd8a67471a5",
        "760b67af397f416e2c463855d376df2a0b2d95bf"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "",
        "time": "Mon Apr 20 12:49:56 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Apr 20 12:49:56 2009 -0700"
      },
      "message": "Merge branch \u0027readonly-p4-master\u0027\n"
    },
    {
      "commit": "760b67af397f416e2c463855d376df2a0b2d95bf",
      "tree": "285d510c8111445569da76423078686b51712ac6",
      "parents": [
        "2f6d8816871519a88cb0ed3bf4861e153f5031e0"
      ],
      "author": {
        "name": "Marco Nelissen",
        "email": "",
        "time": "Mon Apr 20 12:48:39 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Apr 20 12:48:39 2009 -0700"
      },
      "message": "AI 146964: tabs -\u003e spaces\n\nAutomated import of CL 146964\n"
    },
    {
      "commit": "40b304e574b5774509192de85f4087cb4ecbd8cd",
      "tree": "50f2e6755d460101cead3664d253a8265fdc205b",
      "parents": [
        "6d197e1e5182393dbc316e0eaab3c8952c1dca21",
        "42781c76fc8174a5c64218d69542a98082d6a552"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "",
        "time": "Thu Apr 02 10:31:50 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Apr 02 10:31:50 2009 -0700"
      },
      "message": "Merge branch \u0027readonly-p4-master\u0027\n"
    },
    {
      "commit": "42781c76fc8174a5c64218d69542a98082d6a552",
      "tree": "eed38adee604f8bf650e92df9dba0c1778137cab",
      "parents": [
        "c828f6ae9775149fc579827c3841a63b99fbd2a9"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "",
        "time": "Thu Apr 02 10:30:39 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Apr 02 10:30:39 2009 -0700"
      },
      "message": "AI 144205: am: CL 144151 am: CL 144150 Fix heap corruption.\n  Take mutex in close(), and skip write path after turning bluetooth off.\n  Original author: npelly\n  Merged from: //branches/cupcake/...\n  Original author: android-build\n  Merged from: //branches/donutburger/...\n\nAutomated import of CL 144205\n"
    },
    {
      "commit": "819aa237a578c365481f44a380d8301926fca10c",
      "tree": "eed38adee604f8bf650e92df9dba0c1778137cab",
      "parents": [
        "34c594bde98a3fa8491b22deaed0493f5183c738"
      ],
      "author": {
        "name": "Nick Pelly",
        "email": "",
        "time": "Thu Apr 02 01:21:13 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Apr 02 01:21:13 2009 -0700"
      },
      "message": "AI 144151: am: CL 144150 Fix heap corruption.\n  Take mutex in close(), and skip write path after turning bluetooth off.\n  Original author: npelly\n  Merged from: //branches/cupcake/...\n\nAutomated import of CL 144151\n"
    },
    {
      "commit": "bdf653f3a4fa8f7c91891e080e8386f490964a48",
      "tree": "765fcdcdb0b79ac79347e1b3694486350134b8fa",
      "parents": [
        "cd3c19ae1542707bdb859a54b925e4b9c5acaef1",
        "c828f6ae9775149fc579827c3841a63b99fbd2a9"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 31 21:34:25 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 31 21:34:25 2009 -0700"
      },
      "message": "Merge commit \u0027goog/readonly-p4-master\u0027\n"
    },
    {
      "commit": "c828f6ae9775149fc579827c3841a63b99fbd2a9",
      "tree": "323ceeb7aa45e73045eb49f781b1b02e4bd58710",
      "parents": [
        "933a9418d95f871c66a3202a71d1815b3b0d24f9"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "",
        "time": "Tue Mar 31 14:34:35 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 31 14:34:35 2009 -0700"
      },
      "message": "AI 143785: am: CL 143775 am: CL 143620 Attempt for fixing crash in AudioFlinger::MixerThread::dumpTracks() seen in bug report for issue 1747119.\n  AudioFlinger::MixerThread::dumpTracks() was reading mTracks[] vector instead of mActiveTracks[] when dumping active tracks.\n  Original author: elaurent\n  Merged from: //branches/cupcake/...\n  Original author: android-build\n  Merged from: //branches/donutburger/...\n\nAutomated import of CL 143785\n"
    }
  ],
  "next": "34c594bde98a3fa8491b22deaed0493f5183c738"
}
