)]}'
{
  "log": [
    {
      "commit": "90f77218a24ac66bea52faef79c30d45420ce135",
      "tree": "d2925354575662d31307cb4affd52f5d5c97ee80",
      "parents": [
        "0914e0c1015e0331467d50622c1fe3d2557473bf",
        "b8546001701405a76dad7e6235046e592296fac2"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Aug 12 12:36:12 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Aug 12 12:36:12 2009 -0700"
      },
      "message": "am b8546001: Merge change 20878 into donut\n\nMerge commit \u0027b8546001701405a76dad7e6235046e592296fac2\u0027\n\n* commit \u0027b8546001701405a76dad7e6235046e592296fac2\u0027:\n  Fix issue #2048263: More debugging information\n"
    },
    {
      "commit": "82e1ee93eece8fb0aec6acc3ef4ee7b1c86feec7",
      "tree": "b7b376fc569f6d6fde7c69c8f832f3c52152f408",
      "parents": [
        "b3fa1084ba31698fa5c58150a713d7abbadb1cd2"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Aug 11 18:56:41 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Aug 11 18:56:41 2009 -0700"
      },
      "message": "Fix issue #2048263: More debugging information\n\nWe now hopefully do better about generating the anr reports, and include\ninformation about the malloc loaded assets in meminfo.\n"
    },
    {
      "commit": "078a2757847dcdd50a254d973d2c9a0556e98d75",
      "tree": "47999cb47222e0e086df3d647ceaa85a0d0c8b86",
      "parents": [
        "d3c6d54de9b9a599eb33f343fb1e0639fed02094"
      ],
      "author": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Sat Aug 01 00:20:17 2009 +0200"
      },
      "committer": {
        "name": "David \u0027Digit\u0027 Turner",
        "email": "digit@google.com",
        "time": "Sat Aug 01 10:53:29 2009 +0200"
      },
      "message": "Fix Win32 libutils to get a working SDK build.\n"
    },
    {
      "commit": "afcf686cb070313ae5ce6c54ac381a3a86a60ed2",
      "tree": "4a7c1fa186ad4b1a7d37ea4d97aa0b0411b50d85",
      "parents": [
        "8845ea0592e3bffc726febb66de48646b0398e70",
        "25dff70f153529b87f5ad4a92f4de21e8950b1de"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 30 16:05:27 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 30 16:05:27 2009 -0700"
      },
      "message": "am 25dff70f: Merge change 9039 into donut\n\nMerge commit \u002725dff70f153529b87f5ad4a92f4de21e8950b1de\u0027\n\n* commit \u002725dff70f153529b87f5ad4a92f4de21e8950b1de\u0027:\n  Fix #2018814: System cannot correctly render assets with \"wrap_content\" attribute in QVGA\n"
    },
    {
      "commit": "0d221012ff5fd314711c00ed30e9b807b9c454c1",
      "tree": "328d42900c9765e3bde9ad98a936a9122c679e5e",
      "parents": [
        "c6eb5ac988518f41938c4f021003d6c202d84819"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jul 29 15:41:19 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Jul 29 19:44:01 2009 -0700"
      },
      "message": "Fix #2018814: System cannot correctly render assets with \"wrap_content\" attribute in QVGA\n\nIt turns out we were not returning the density for anything retrieved from a\nTypedArray...  which basically means any bitmap references from a layout or style...!!!\n\nThis is now fixed.\n\nAlso fiddle with the density compatibility mode to turn on smoothing in certain situations,\nhelping the look of things when they need to scale and we couldn\u0027t do the scaling at\nload time.\n"
    },
    {
      "commit": "9bb8fd77c8dc177aab9ac96bed4f55972dcda70a",
      "tree": "65f29284d166ac676ef052df99ed8bcfb237ccbb",
      "parents": [
        "0ac031b3d29c6de90895c875991585812dc7388f"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Tue Jul 28 18:24:51 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Wed Jul 29 12:05:36 2009 -0700"
      },
      "message": "Only restore the bits for wallpapers that aren\u0027t built in.\n"
    },
    {
      "commit": "8d72569e3b85a352afe0fe1125b784d2ac13cde1",
      "tree": "e90602cb7d6dddaf452e9df0bae4016ec85aafda",
      "parents": [
        "a7e4cf9b5c9dd7d733e1ee7109ecb0e58996fe06"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Tue Jul 28 18:23:05 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Tue Jul 28 18:30:15 2009 -0700"
      },
      "message": "Fix the IOException in wallpaper restore -- the padding isn\u0027t required at the end.\n"
    },
    {
      "commit": "a8339dfec9d1b2c6d6fd2f8268f8075d184f64c0",
      "tree": "40345158a2aa1084b21de121e5eb8b0d8f8f36a3",
      "parents": [
        "9822d2b27330793ea4ba9c3316ef35f402f35fb4",
        "9fc20b0e381b5fe00b7049ef357c839cd05a33bf"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 21 19:03:53 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jul 21 19:03:53 2009 -0700"
      },
      "message": "am 9fc20b0e: Merge change 8126 into donut\n\nMerge commit \u00279fc20b0e381b5fe00b7049ef357c839cd05a33bf\u0027\n\n* commit \u00279fc20b0e381b5fe00b7049ef357c839cd05a33bf\u0027:\n  First pass at reworking screen density/size APIs.\n"
    },
    {
      "commit": "c4db95c077f826585d20be2f3db4043c53d30cf5",
      "tree": "9176baa673f97b27150f862485fd492cb3ec7e88",
      "parents": [
        "fe6f45c81463d2d28e11ac6083f2653e1286c5ef"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jul 21 17:46:02 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jul 21 18:28:42 2009 -0700"
      },
      "message": "First pass at reworking screen density/size APIs.\n\nThis changes the names of the directories in aapt, to what you see\nin the list of DpiTest resources.  Also adds a new \"long\" configuration\nfor wide screens, which the platform sets appropriate, and introduces\na new kind of resizeability for not large but significantly larger\nthan normal screens which may have compatibility issues.\n"
    },
    {
      "commit": "469b4c67adc77a87eb2c9ed9217edf1778002828",
      "tree": "f6ca01c85c85a27ecd6f54ae1193f30e1cc67501",
      "parents": [
        "b933dc7f47ec9a9609d0775fc469849f066bfcd7",
        "aad0fcc9619eb72c18a6afff48ebc9d4011f0f54"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Jul 19 20:28:49 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Jul 19 20:28:49 2009 -0700"
      },
      "message": "am aad0fcc9: Merge change 7783 into donut\n\nMerge commit \u0027aad0fcc9619eb72c18a6afff48ebc9d4011f0f54\u0027\n\n* commit \u0027aad0fcc9619eb72c18a6afff48ebc9d4011f0f54\u0027:\n  Add \"nodpi\" density, and expose a bunch of density-related APIs.\n"
    },
    {
      "commit": "a53b828635fce8b6b2d3e3377d74d72070056623",
      "tree": "42f4ba9bbf7d8656a4761d6fe5dcd4976cf19369",
      "parents": [
        "09a903ab5b8d940605783ae4ee591c0f090a31d1"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jul 17 11:13:48 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jul 17 16:59:08 2009 -0700"
      },
      "message": "Add \"nodpi\" density, and expose a bunch of density-related APIs.\n\nAlso update the DpiTest app to use nodpi images, and try to have a mode\nwhere it turns off compatibility though it\u0027s not quite working.\n"
    },
    {
      "commit": "3d88fc00b32cc4c093dd5ef3f8f349966df948ad",
      "tree": "da4b25083bf09b01b0b62a4e1017b38c5eea000d",
      "parents": [
        "53245df9c1c2ec52f8d39db77dae890b63b51aa2",
        "3e1663a2539ff0b939193304cfb601f6b134af7d"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 16 17:54:01 2009 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 16 17:54:01 2009 -0700"
      },
      "message": "am 3e1663a2: Merge change 7536 into donut\n\nMerge commit \u00273e1663a2539ff0b939193304cfb601f6b134af7d\u0027\n\n* commit \u00273e1663a2539ff0b939193304cfb601f6b134af7d\u0027:\n  fix FILE* version of ZipUtils::inflateToBuffer\n"
    },
    {
      "commit": "d2792e3768d41c4b366fccf9c8b415c61761f4af",
      "tree": "616763fa940c72e0743f5882edc2caf3a19fbe75",
      "parents": [
        "6ce4236d70c8543021bb521731ac9f05d22b3002"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Thu Jul 16 11:27:13 2009 -0700"
      },
      "committer": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Thu Jul 16 11:27:13 2009 -0700"
      },
      "message": "fix FILE* version of ZipUtils::inflateToBuffer\n\nThis can\u0027t have ever worked; a successful fread() was returning 1\ninstead of getSize.\n"
    },
    {
      "commit": "ee5bbb7f6304c4930899d069c82fe02e49f050aa",
      "tree": "276c5b62ca57168e4e1c29770dd2edca68ae55fa",
      "parents": [
        "85d1f158267d64b5660e86fab0baf0432c1dcfbd"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Mon Jul 13 14:44:07 2009 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Wed Jul 15 09:58:07 2009 -0700"
      },
      "message": "Need to skip the padding after reading.\n\nm_dataEndPos points to the end of the data, not the beginning\nof the next entity.\n"
    },
    {
      "commit": "b1c4ca5ad21ae63cd5af2cfc1be82ba176d25195",
      "tree": "5a70f426d9b4cd75638a1b17ae2abd264c59eb55",
      "parents": [
        "56e7c2d6ebbde59555041e3550cbba6824486db1"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Sun Jul 12 23:11:20 2009 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Mon Jul 13 15:14:23 2009 -0700"
      },
      "message": "implement Mutex and Condition with pthread instead of calling futex directly.\n\ninternally pthread uses futex. the implementation consists of simple inlines\nthere are no implementation files anymore.\n"
    },
    {
      "commit": "58e8131631b4598d445303183ee6ea80b7e63038",
      "tree": "8a03eaa3f3c33a668ba1f01458a1fd5c5bacc56a",
      "parents": [
        "191c12d33fe33c938beb421004c55fb827208f48",
        "be91fdbc5c4f2de3a2bb574a98fdfeef44d8cdb5"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 09 14:12:52 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jul 09 14:12:52 2009 -0700"
      },
      "message": "am be91fdbc: Merge change 6665 into donut\n\nMerge commit \u0027be91fdbc5c4f2de3a2bb574a98fdfeef44d8cdb5\u0027\n\n* commit \u0027be91fdbc5c4f2de3a2bb574a98fdfeef44d8cdb5\u0027:\n  Fix resources not being set correctly.\n"
    },
    {
      "commit": "c916e0616468e74a87cec71cefd26150a108edf1",
      "tree": "acf3d694080b65bcc28ac51d4a80ce3d121cfe83",
      "parents": [
        "e2bf80fb0bfd944ef45d60bdc469d85734527363",
        "fe811d8bd0da15f14702968a9c7deb02db7eec9f"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 09 12:49:07 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jul 09 12:49:07 2009 -0700"
      },
      "message": "am fe811d8b: Merge change 6603 into donut\n\nMerge commit \u0027fe811d8bd0da15f14702968a9c7deb02db7eec9f\u0027\n\n* commit \u0027fe811d8bd0da15f14702968a9c7deb02db7eec9f\u0027:\n  quick fix; utf8_codepoint_count must be utf8_length\n"
    },
    {
      "commit": "e2bf80fb0bfd944ef45d60bdc469d85734527363",
      "tree": "82c0b1944a438852d41e3632dbb42f9150e9cdd6",
      "parents": [
        "e3f054411b9f025848f68389c4e2c325e76b3826",
        "8a715b4b791db4390d12e0ded02280592634a424"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 09 12:48:56 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Jul 09 12:48:56 2009 -0700"
      },
      "message": "am 8a715b4b: Merge change 5510 into donut\n\nMerge commit \u00278a715b4b791db4390d12e0ded02280592634a424\u0027\n\n* commit \u00278a715b4b791db4390d12e0ded02280592634a424\u0027:\n  Add useful functions to String8, which enables users to convert between UTF-8 and UTF-32\n"
    },
    {
      "commit": "6c11e73f678a46b0a74c6f1936eebd51dc60f0af",
      "tree": "6f3b223440a234d9daf48bef51ad7267e0b2e03b",
      "parents": [
        "d1e5e3ffc22478bad8525dec4f1c6d57fe0ad368"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jul 09 11:36:32 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jul 09 12:41:06 2009 -0700"
      },
      "message": "Fix resources not being set correctly.\n"
    },
    {
      "commit": "361d477957feb07454b93509da0bfd05e9c718a8",
      "tree": "cec212a66a309ea588bd16f37bdb84ebf19150b7",
      "parents": [
        "f05b33b3a1cff40972a735ff1fb4ed6e8bfeaf2a"
      ],
      "author": {
        "name": "Daisuke Miyakawa",
        "email": "dmiyakawa@google.com",
        "time": "Thu Jul 09 13:05:24 2009 +0900"
      },
      "committer": {
        "name": "Daisuke Miyakawa",
        "email": "dmiyakawa@google.com",
        "time": "Thu Jul 09 13:05:24 2009 +0900"
      },
      "message": "quick fix; utf8_codepoint_count must be utf8_length\n"
    },
    {
      "commit": "f05b33b3a1cff40972a735ff1fb4ed6e8bfeaf2a",
      "tree": "0ba45f189f1a8568697a1b4dc9e7b083a76d732d",
      "parents": [
        "1ecf5d28817f0a051e77488380dcd5bc622ea169"
      ],
      "author": {
        "name": "Daisuke Miyakawa",
        "email": "dmiyakawa@google.com",
        "time": "Tue Jun 30 20:40:42 2009 +0900"
      },
      "committer": {
        "name": "Daisuke Miyakawa",
        "email": "dmiyakawa@google.com",
        "time": "Thu Jul 09 09:06:13 2009 +0900"
      },
      "message": "Add useful functions to String8, which enables users to convert between UTF-8 and UTF-32\nIt will be used in SQL functions in external/sqlite/android.\nSee https://android-git.corp.google.com/g/Gerrit#change,5511 for example.\n\nRelated internal bug id: 1707173\n"
    },
    {
      "commit": "17ffe1018c506272da45be6b35caf859bc2582f1",
      "tree": "76fb5291e8524712e9978cc3b76e46337b7453bd",
      "parents": [
        "005ae544f93494eb7d315b2e34aae0ac3c922728",
        "991eec03a73f8803d0f8c80b418480ea25293cfb"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 06 14:10:36 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jul 06 14:10:36 2009 -0700"
      },
      "message": "am 991eec03: Merge change 6252 into donut\n\nMerge commit \u0027991eec03a73f8803d0f8c80b418480ea25293cfb\u0027\n\n* commit \u0027991eec03a73f8803d0f8c80b418480ea25293cfb\u0027:\n  Don\u0027t re-parse the framework resources all the time.\n"
    },
    {
      "commit": "78c405178c57bb45e40f1e2839d6a18d91f7f02c",
      "tree": "6e7137f628b8fff1f72c59e5e42f3f4878e0bb39",
      "parents": [
        "ef1f21b34f5624adb7436d3da927660ed16c97c7"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jul 06 11:07:40 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jul 06 11:12:37 2009 -0700"
      },
      "message": "Don\u0027t re-parse the framework resources all the time.\n\nA small optimization to the resource code, to not re-parse the framework\nresources every time we build a new AssetManager.  Instead, you can now\nconstruct a ResTable from a previously created one...  of course, like the\nexisting code for using the data in-place, you can\u0027t delete the original\nResTable until you have deleted the one that has been constructed from it.\n"
    },
    {
      "commit": "d96e0b0cf14f159d96502a4caf8aa2a33c334a99",
      "tree": "c444ad326a6e2ae5b48508f78cdac7d12c2f7fd1",
      "parents": [
        "74ab31598bb65b17f84411d11d09269f1291d78a",
        "6e1647a212317f4ee8bcc23948b6621a59172954"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 01 22:43:58 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Jul 01 22:43:58 2009 -0700"
      },
      "message": "am 6e1647a2: Merge change 5829 into donut\n\nMerge commit \u00276e1647a212317f4ee8bcc23948b6621a59172954\u0027\n\n* commit \u00276e1647a212317f4ee8bcc23948b6621a59172954\u0027:\n  Fix issue #1673793: Theme styles don\u0027t apply.\n"
    },
    {
      "commit": "de7faf658cd40d34c08a98b39477055da8e19172",
      "tree": "8450b4d75fbe22a3fed25867c1d53a059c10d664",
      "parents": [
        "bd9aa793b19f7aa529ca4123492f8940b96486b8"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jun 30 13:27:30 2009 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jun 30 13:27:30 2009 -0700"
      },
      "message": "Fix issue #1673793: Theme styles don\u0027t apply.\n\nIt turns out this was not a problem in the resource code at all.  Rather,\nthe system process has a cache of pre-loaded attributes it uses to avoid\ncontinually reloading things as it needs them.  Well it turns out this\ncache wasn\u0027t flushed after a package was uninstalled or a configuration\nchanged, so you could re-install an app where you change its style resources\nso its theme now points to one that is inconsistent in the cache.\n\nThis is mostly a problem for developers, where they continually install\nnew versions of an app where resources have changed.  This could possibly\nshow up when updating an app on a normal phone, although the problem would\neventually correct itself since this cache uses weak references.\n\nAnyway, the cache is now reworked to be flushed appropriately.\n\nThis change also includes an update to aapt to be able to dump the\ncontents of bags in resources.\n"
    },
    {
      "commit": "bacc51026e8c95f34830defdfc1be4b359abf664",
      "tree": "fb8492e6c8de174b4e830e33cfac21bfd243b149",
      "parents": [
        "6034cb565c3b3ffb21057851cff179e2d5cb56a9",
        "d09f86ce175fad6ddbd446363f327dfa0575a1d2"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jun 29 16:37:39 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 29 16:37:39 2009 -0700"
      },
      "message": "am d09f86ce: Merge changes 5548,5549 into donut\n\nMerge commit \u0027d09f86ce175fad6ddbd446363f327dfa0575a1d2\u0027\n\n* commit \u0027d09f86ce175fad6ddbd446363f327dfa0575a1d2\u0027:\n  Better (and less) logging from backup.\n  Add an extra null terminator.  String8::unlockBuffer is\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": "d09f86ce175fad6ddbd446363f327dfa0575a1d2",
      "tree": "1402e4c2472e7e4ec6e09e51d608d29e4f40f7d9",
      "parents": [
        "17a80081a42410f541a220ab7e6afc64fc6cc399",
        "568bc32344dce841c8f6958f1a65ff839a1b64c0"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 26 14:19:59 2009 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jun 26 14:19:59 2009 -0700"
      },
      "message": "Merge changes 5548,5549 into donut\n\n* changes:\n  Better (and less) logging from backup.\n  Add an extra null terminator.  String8::unlockBuffer is supposed to be doing this, but it\u0027s not and I can\u0027t figure out why.  This makes BackupHelperDispatcher able to read the keys correctly.\n"
    },
    {
      "commit": "568bc32344dce841c8f6958f1a65ff839a1b64c0",
      "tree": "6c7f946386e088900b9cda0c66c2e22b1b987dc0",
      "parents": [
        "12a4da328a234b171b78cc341544817e9a074057"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Fri Jun 26 17:19:11 2009 -0400"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Fri Jun 26 17:19:11 2009 -0400"
      },
      "message": "Better (and less) logging from backup.\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": "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": "9c73a336c121ae2a1f608700b45d84fed6c49eba",
      "tree": "3ecee4df9d3b60866381791e97883dd1465fa488",
      "parents": [
        "95cb30d2e99393023e0df8f804b5856513d315aa",
        "54118adb3766fdf73a409102b88d7494bb6889a3"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jun 24 15:44:40 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Jun 24 15:44:40 2009 -0700"
      },
      "message": "am 54118adb: Put back LOGP -\u003e printf in the backup helper code\n\nMerge commit \u002754118adb3766fdf73a409102b88d7494bb6889a3\u0027\n\n* commit \u002754118adb3766fdf73a409102b88d7494bb6889a3\u0027:\n  Put back LOGP -\u003e printf in the backup helper code\n"
    },
    {
      "commit": "95cb30d2e99393023e0df8f804b5856513d315aa",
      "tree": "f2424f5a52ef3b91d4d949c662e4950b03e1b729",
      "parents": [
        "f364595d443f92c5bd340cfcf442934df3ecd071",
        "0e034e5a9a71e5e196baff630dca796a0e3ed3e2"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jun 24 15:44:37 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Jun 24 15:44:37 2009 -0700"
      },
      "message": "am 0e034e5a: Merge change 5162 into donut\n\nMerge commit \u00270e034e5a9a71e5e196baff630dca796a0e3ed3e2\u0027\n\n* commit \u00270e034e5a9a71e5e196baff630dca796a0e3ed3e2\u0027:\n  Preserve file access mode when backing up / restoring files\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": "54118adb3766fdf73a409102b88d7494bb6889a3",
      "tree": "0cc282e2f39bf2ac885173caef1d31f22c087401",
      "parents": [
        "0e034e5a9a71e5e196baff630dca796a0e3ed3e2"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jun 24 11:20:51 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Jun 24 11:20:51 2009 -0700"
      },
      "message": "Put back LOGP -\u003e printf in the backup helper code\n"
    },
    {
      "commit": "fbb92385f2fb0ae1146bb8f3d73547d90bda6db1",
      "tree": "3c02712ab875ae1889d3b0a2df244ef3cc205410",
      "parents": [
        "3fbd946bacdc202dc23c84887d2ad47402b5015b"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Tue Jun 23 17:35:11 2009 -0700"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Tue Jun 23 17:40:44 2009 -0700"
      },
      "message": "Preserve file access mode when backing up / restoring files\n\nThis change adds a fixed-size metadata block at the head of each file\u0027s content\nentity.  The block is versioned, and fixed-size on the theory that it might be\nnice to be able to recover the content (if not the full metadata) of the files\nif we\u0027re ever confronted with data backed up some hypothetical future helper\nthat stored expanded metadata.\n\nThe net effect is that now on restore, we assign the same access mode to the\nfile that it originally had when backed up.\n\nAlso, some of the code was failing to properly free transient heap-based buffers\nwhen it encountered errors.  This has been fixed with the addition of a tiny\nstack-based object whose job it is to free() its designated pointer from its\ndestructor.\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": "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": "daf701fa6250ae89ad93e2e41127e0f676a322a5",
      "tree": "5b816f0e72d4bd2b0b2040242799c4008abf3a59",
      "parents": [
        "aa73f17201481f943345253328071118abc02933",
        "2fdd428e0f18384160f7c38ce3a2cd9ba7e7b2c2"
      ],
      "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": "1cf587496fcb1d652bab9fc6792fb106b6fefaa4",
      "tree": "96e989c088b0e2fb8560d5b2e24562188a128e19",
      "parents": [
        "6599426f74371c823fcfe570f61577262eb0df44"
      ],
      "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": "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": "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": "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": "79525264e5a594f9d99ef7ca0b6ac8e8f47a6ac6",
      "tree": "df0d6476e30820d28ae2368565e42f4b8cc7df31",
      "parents": [
        "7805835e0fb58a8f20be37099e8fd3c93631c76f",
        "8ed6beb515460001a0f5ee91b874289fbb053768"
      ],
      "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": "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": "3f0c72ab4b3b950ecb29995c07b7af4f71582a7a",
      "tree": "1afebc4682663e4778cb43a3028b580884575564",
      "parents": [
        "9c4125e268d10eb2c4f26ce5c1ac32bf90181c51",
        "0032ce80ac127e6bfb25d727162eee4af208dc77"
      ],
      "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": "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": "0032ce80ac127e6bfb25d727162eee4af208dc77",
      "tree": "c867a73a9f4fac2e025864c3dd506334c68d6f60",
      "parents": [
        "54de90635e1d0628c396d65e6c948bf4a1529229"
      ],
      "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": "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": "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": "7fea935590ad5629a1c8fe004f57ce79cf1c7a5a",
      "tree": "65eb2eff1d578caa5ab7a81693e1307750f94dc0",
      "parents": [
        "b53bfd25f5f8801c14a516eae8ccb6ff0db7e40a"
      ],
      "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": "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": "6a3a2b9d20212d8496744ebdc47a52bd6c670cbb",
      "tree": "2d805bc94c4f4d9c06bee497e81ee0130afeb526",
      "parents": [
        "fa02f9216267330c0df39cf361ef7441264f0a44",
        "04561a55df693e7bd8d3047ccc4fbef504ac07cf"
      ],
      "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": "04561a55df693e7bd8d3047ccc4fbef504ac07cf",
      "tree": "4fb238ecb264416a6c806283da7c5addc5733b9d",
      "parents": [
        "d9a874a4cb8e82ae64c1698bd71ced8d87bbc5cd",
        "f4c46b94b867f6a01bf7d0be18f667819338072f"
      ],
      "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": "f4c46b94b867f6a01bf7d0be18f667819338072f",
      "tree": "43b19e5afb0031c6e21982ce5c1ab2e97aee6699",
      "parents": [
        "9d892a8e3037fd2f6d692137cd5d91acc46ddf5a"
      ],
      "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": "d50a458bb291801ab9fdc119301bc7b84b42a6e3",
      "tree": "cf9d282af5fe0be5ee6fd594442315883b4feb88",
      "parents": [
        "4e1afc1a569d05cc6a1ee213c65ffb49513600ca",
        "6aff905048ba3b03724f17e2aba9089872e14cd2"
      ],
      "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": "6aff905048ba3b03724f17e2aba9089872e14cd2",
      "tree": "2e9887f1d73e0783595ea629dd606737171b2387",
      "parents": [
        "9681a5e06badbd817342e8f6be4ffbe9102c1e98"
      ],
      "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": "fc5095f44ba46b57f4ef6179ee4d69ce3a7fe69a",
      "tree": "ae53f0a15341222a8ec4ffa88f269c3d97316df5",
      "parents": [
        "c518080c116b5c9a498c25ff3c76b778cd3d6598",
        "7198030fce4b54820a65a10d54fae18a1ab5df84"
      ],
      "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": "7198030fce4b54820a65a10d54fae18a1ab5df84",
      "tree": "13d938adf9b2849faa85c222b68caf7d8c6b2533",
      "parents": [
        "9d892a8e3037fd2f6d692137cd5d91acc46ddf5a"
      ],
      "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": "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": "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": "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": "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"
    },
    {
      "commit": "5c685a948e9eed5f02c4e961d2d928e1f60e2e62",
      "tree": "6506142176a29091e84b6fe20f86f648fa79a4ce",
      "parents": [
        "1e89ef82b1cb06034c30f9772f936a8a0cf4a7df",
        "9c5651390056cd9c2f68d5df057739528bd4128b"
      ],
      "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": "96e20409afc720f61d0cd49bf1441f62069bd6bb",
      "tree": "8088015f1763a454848ad35d4f5dc8f64ebcf6f4",
      "parents": [
        "644cf62660c87a9b8d5bcb22412cc2ad2aeea291"
      ],
      "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": "e7c71d3a8cfb0c9c3637e0956fee3abc5a1fb094",
      "tree": "97ae5b00053739df732772475531211ee2eb79a2",
      "parents": [
        "e796cfaef8f73d3f1da8fe07990b2e94f17da1e4",
        "e38e90bf222515538281cc73c5e4a9f3c269c875"
      ],
      "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": "e38e90bf222515538281cc73c5e4a9f3c269c875",
      "tree": "1cc74af62c42d2df8ce28bac24a6b3344dfe51d8",
      "parents": [
        "954bbe9fa356175f9019d51227c47cd48a077fb9"
      ],
      "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": "2a73de7b21a89aa2ba4c254d28658b49793425b2",
      "tree": "ded5bcd581464b4174d81c373044b6d36eee58d2",
      "parents": [
        "42e48026b21a962e5bf40344d738665ecbd9d74d",
        "ba87e3e6c985e7175152993b5efcc7dd2f0e1c93"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Mar 18 11:33:14 2009 -0700"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Wed Mar 18 11:33:14 2009 -0700"
      },
      "message": "Merge commit \u0027remotes/korg/cupcake\u0027 into merge\n\nConflicts:\n\tcore/java/android/view/animation/TranslateAnimation.java\n\tcore/jni/Android.mk\n\tcore/res/res/values-en-rGB/strings.xml\n\tlibs/audioflinger/AudioFlinger.cpp\n\tlibs/surfaceflinger/LayerScreenshot.cpp\n\tpackages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java\n"
    },
    {
      "commit": "c39a6e0c51e182338deb8b63d07933b585134929",
      "tree": "e55fc5bd38b1eb8fb4851a0fe1cc264a7fe2f245",
      "parents": [
        "b2a3dd88a53cc8c6d19f6dc8ec4f3d6c4abd9b54"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Mar 11 12:11:56 2009 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Wed Mar 11 12:11:56 2009 -0700"
      },
      "message": "auto import from //branches/cupcake/...@137873\n"
    },
    {
      "commit": "4df2423a947bcd3f024cc3d3a1a315a8dc428598",
      "tree": "e7dac2c5a367b169e7f05a36058cf470e93f003b",
      "parents": [
        "c474dec3ffa1c0fe37edb3e701684188f7e8e7bc"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Mar 05 14:34:35 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Mar 05 14:34:35 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@136594\n"
    }
  ],
  "next": "9066cfe9886ac131c34d59ed0e2d287b0e3c0087"
}
