)]}'
{
  "log": [
    {
      "commit": "9dba709d4439d8cdb464a3dcccbddffdbe4b10ff",
      "tree": "07b08f8bee730d8ec59604d6e29287f7cb0f7b88",
      "parents": [
        "5fbf4094f5857ab15801c65a260a5c4b6866d655"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Mon Jan 18 06:47:41 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Mon Jan 18 06:49:19 2010 -0800"
      },
      "message": "MountService: Add new \u0027unmountSecureContainer\u0027 API call\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "5fbf4094f5857ab15801c65a260a5c4b6866d655",
      "tree": "16ff4a03f8a332156610d3e6809515e18825ebf2",
      "parents": [
        "ff58b5770514521ebdd48f500d8dc121a42d7eb2"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 15 10:13:59 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Sat Jan 16 06:11:27 2010 -0800"
      },
      "message": "MountService: Suppress media removed notification when enabling UMS\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "462f0378280f2c9717ad3bcafd8b9d1827b840b6",
      "tree": "3a2e8dd3dbb4e6ecff86321fe54cef07255769d5",
      "parents": [
        "3fe3ebfaa671d940f9cd571d782c8c95ce5eaec1"
      ],
      "author": {
        "name": "Oscar Montemayor",
        "email": "oam@google.com",
        "time": "Thu Jan 14 16:38:40 2010 -0800"
      },
      "committer": {
        "name": "Oscar Montemayor",
        "email": "oam@google.com",
        "time": "Fri Jan 15 16:34:11 2010 -0800"
      },
      "message": "Apps on SD card.\nAdded support for retrieving and generating keys as Hex Strings.\nUsing keys to mount encrypted FS.\n"
    },
    {
      "commit": "d02546b4151214abb2db1c88bf7debfc70bd2421",
      "tree": "706596caff37b2f9ba6c04da64bf3b98172da00e",
      "parents": [
        "851b2e75e600a7e3f557b46c4c48c11da025d1f4"
      ],
      "author": {
        "name": "Oscar Montemayor",
        "email": "oam@google.com",
        "time": "Thu Jan 14 16:38:40 2010 -0800"
      },
      "committer": {
        "name": "Oscar Montemayor",
        "email": "oam@google.com",
        "time": "Fri Jan 15 15:08:06 2010 -0800"
      },
      "message": "Apps on SD card.\nAdded support for retrieving and generating keys as Hex Strings.\nUsing keys to mount encrypted FS.\n"
    },
    {
      "commit": "7c44220d0b57bd3bbb87f5db00454f9ea9faed9a",
      "tree": "7727834b30e2d7276198d7723c5e67e91b65f060",
      "parents": [
        "3084a6f80180506ce26fe4773d9a19f004b7f625",
        "36e136c2c86f39f03cdd4275f07deb30dc2c95aa"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Fri Jan 15 11:23:00 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 15 11:23:00 2010 -0800"
      },
      "message": "Merge \"Make the \"AM\" or \"PM\" in the status bar clock be in a smaller font size.\""
    },
    {
      "commit": "40bbaaac5f0b93de8d8b8164ac8b59583bc0113a",
      "tree": "b3eb1bf2b147b408e4a712a35412a90f99d3866b",
      "parents": [
        "0894498712de1f15b6491fa5fe111b2da7fb7038",
        "90528645ad7d40634737075dc49a9f60bc7a1748"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Fri Jan 15 10:45:11 2010 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Fri Jan 15 10:45:11 2010 -0800"
      },
      "message": "resolved conflicts for merge of 90528645 to master\n"
    },
    {
      "commit": "0894498712de1f15b6491fa5fe111b2da7fb7038",
      "tree": "380c74d989140d60d3395a06869c04d90ab88a10",
      "parents": [
        "c5dfa70410121c63079ecd7e4945d774562c8998",
        "de8383ca312c03fa8e935ac1549ae31ce668652c"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Fri Jan 15 10:20:18 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 15 10:20:18 2010 -0800"
      },
      "message": "Merge \"Set net.hostname sys property to our unique ID.\""
    },
    {
      "commit": "48c0273eb978d44ee093f514545d4332f034e473",
      "tree": "04b0fcc39e15672a8d29526818ab82d81f7cd5ed",
      "parents": [
        "daec1722fae57a042c176664ec1e89c95095e926"
      ],
      "author": {
        "name": "Andrew Stadler",
        "email": "stadler@android.com",
        "time": "Fri Jan 15 00:03:41 2010 -0800"
      },
      "committer": {
        "name": "Andrew Stadler",
        "email": "stadler@android.com",
        "time": "Fri Jan 15 00:03:41 2010 -0800"
      },
      "message": "Fix to set package path properly after \u0027adb sync\u0027\n\nThis is a followup to daec1722fae57a042c176664ec1e89c95095e926\n"
    },
    {
      "commit": "daec1722fae57a042c176664ec1e89c95095e926",
      "tree": "cc31f06dd3413649d1611a125e7977042ec46de2",
      "parents": [
        "ba7eb9a1d044ee11268f0ced0af333e5f87ba7a8"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Thu Jan 14 21:25:16 2010 -0800"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Thu Jan 14 21:48:37 2010 -0800"
      },
      "message": "Avoid renaming apk paths when scanning directories on reboot\n"
    },
    {
      "commit": "de8383ca312c03fa8e935ac1549ae31ce668652c",
      "tree": "e46a21108681d02a40f1db0db47e6c79381bee30",
      "parents": [
        "8d528c85d00cea5168ed6842f17c7f5afae338c4"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Thu Jan 14 17:47:58 2010 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Thu Jan 14 18:09:17 2010 -0800"
      },
      "message": "Set net.hostname sys property to our unique ID.\n\nGive us a default name networking wise so that wifi (at least) can use it.\n\nBug:2327089\n"
    },
    {
      "commit": "110fea7ebd6c5e0162c3af353d36a1b0383199f4",
      "tree": "0f07488ce845ee697f00d2825eecdd2113f7ac75",
      "parents": [
        "8d528c85d00cea5168ed6842f17c7f5afae338c4"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Thu Jan 14 17:50:23 2010 -0800"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Thu Jan 14 17:50:23 2010 -0800"
      },
      "message": "Fix runtime restart when replacing packages\n"
    },
    {
      "commit": "36e136c2c86f39f03cdd4275f07deb30dc2c95aa",
      "tree": "306dbb7713a87a286b530137d18882d133e153bd",
      "parents": [
        "66ef01e23288eb93bf410823b7fdc123fd9c5197"
      ],
      "author": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Thu Jan 14 17:42:48 2010 -0800"
      },
      "committer": {
        "name": "Eric Fischer",
        "email": "enf@google.com",
        "time": "Thu Jan 14 17:42:48 2010 -0800"
      },
      "message": "Make the \"AM\" or \"PM\" in the status bar clock be in a smaller font size.\n\nBug 1146468\n"
    },
    {
      "commit": "af8e9f4805643f90a9dc0ecfa119e0a860c12f8a",
      "tree": "a6ea88a10b61204a5256901dca8b958849e13dc4",
      "parents": [
        "f6fff20a96268b0b1136a2c44199ad8de46ced5d"
      ],
      "author": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Tue Jan 12 10:17:28 2010 -0800"
      },
      "committer": {
        "name": "Suchi Amalapurapu",
        "email": "asuchitra@google.com",
        "time": "Thu Jan 14 14:02:39 2010 -0800"
      },
      "message": "app install on sdcard. provide skeleton implementation\nto install an app on sdcard, just resources.\nAdd new install path for /asec in installd.\nignore . when checking for apk path since the sdcard packages id\u0027ed\nby package name.\nAdd new -s option to adb shell pm\nRefactor fwd locked from scanMode to ApplicationInfo.\nAdd new flag for sd install\nAdd new parse flags for fwd locking and installing on sdcard\nNew mock api\u0027s in PackageManagerService to invoke MountService api\u0027s. These\nwill be refactored again and so have been wrapped internally.\nSome error codes in PackageManager\nChanges in PackageManagerService to use mPath and mScanPath during installation\nand switch to using PackageParser.Package.applicationInfo attributes for\nsource and public resource directories.\nSome known issues that will be addressed later\n using system_uid for now. needs some tinkering with uid and packagesetting creation to use the actual app uid\n error handling from vold not very robust. ignoring lot of things for now\n sending a delayed destroy to delete packages. will revisit later\n revisit temp file creation later. just copy for now\n"
    },
    {
      "commit": "90528645ad7d40634737075dc49a9f60bc7a1748",
      "tree": "08e8daf2e96fd043239cd00dedc3f7af1660acc4",
      "parents": [
        "b4f41119044e5ec7f7b76ed4ac02b5cfbaeb474d",
        "1193ae4e824c66b75083c444ce0f250594e138ee"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Wed Jan 13 17:09:40 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 13 17:09:40 2010 -0800"
      },
      "message": "am 1193ae4e: Backport l53e91db7 from master.\n\nMerge commit \u00271193ae4e824c66b75083c444ce0f250594e138ee\u0027 into eclair-plus-aosp\n\n* commit \u00271193ae4e824c66b75083c444ce0f250594e138ee\u0027:\n  Backport l53e91db7 from master.\n"
    },
    {
      "commit": "1193ae4e824c66b75083c444ce0f250594e138ee",
      "tree": "f623c169b053a5714a3d02220034ee5310917d68",
      "parents": [
        "a1d08886ec8549878ad16c19754a3239706fb61b"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Wed Jan 13 09:36:31 2010 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Wed Jan 13 09:36:31 2010 -0800"
      },
      "message": "Backport l53e91db7 from master.\n\nPrevents sending out ConnectivityManager broadcasts when the connection\nis repeating the same major state.  This means continued wifi scanning\ndoes not generate CM broadcasts (though wifi state broadcasts continue).\n\nbug: 2265222\nDr No approval: jsh\n"
    },
    {
      "commit": "cd7703712eafb68b735233146b5e13c8c8e17609",
      "tree": "f5c54d9e1547d720b309867939584f971db199df",
      "parents": [
        "22dd86e0556bf60f46bb92a4d90aef8c2d55da58"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Fri Jan 08 09:36:04 2010 -0800"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Tue Jan 12 14:53:44 2010 -0800"
      },
      "message": "Avoid wifi disable in a UNKNOWN state\n\nMultiple broadcast receiver unregister calls cause exception.\n\nBug: 2361335\n"
    },
    {
      "commit": "22dd86e0556bf60f46bb92a4d90aef8c2d55da58",
      "tree": "960252dfa23185cee7c3412db3b2a2f9e8a00fe1",
      "parents": [
        "67bd2cd75f0615c1a08a221f2114d2acda90d1ce"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 12 12:21:18 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 12 14:12:16 2010 -0800"
      },
      "message": "MountService: Refactor to use NativeDaemonConnector and clean-up\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "67bd2cd75f0615c1a08a221f2114d2acda90d1ce",
      "tree": "e2100cb759dbfc4de3f73e950727dec57e861141",
      "parents": [
        "bfd2df21ea711a8a09bb0a0637a5e0a52892ed93"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 12 12:18:49 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 12 13:55:39 2010 -0800"
      },
      "message": "services: Introduce NativeDaemonConnector class\n\nThis class provides an interface to communicate with native daemons using the\nlibsysutils framework communication code.\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n\nNativeDaemonConnector: fix whitespace\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n\nNativeDaemonConnector: Fix review comments\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n\nNativeDaemonConnector: On an error, re-try the connection\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "fa101530bc74bdf1517a1840a9415249211b9414",
      "tree": "f0c93712359e7b102a1ed5edd2fb81a7f6ecb374",
      "parents": [
        "8f028a94fc533e75077485a7d11a04e4de820335",
        "d26707da8965bffb63c55d729f19ddfcb83044b3"
      ],
      "author": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Jan 12 11:53:42 2010 -0800"
      },
      "committer": {
        "name": "Jean-Baptiste Queru",
        "email": "jbq@google.com",
        "time": "Tue Jan 12 11:53:42 2010 -0800"
      },
      "message": "resolved conflicts for merge of d26707da to master\n\nChange-Id: I1a379194f70c4b14191333ca2d8e6dd9d8b0f9dd\n"
    },
    {
      "commit": "d26707da8965bffb63c55d729f19ddfcb83044b3",
      "tree": "a371e18a5b2c5068a08dd750efa34fca5c2ff43f",
      "parents": [
        "f5a84f8a7f91422f698ffbea3fabf77f2f7f77c8",
        "c93c70c4b849d31ff1b5e5cf2fb9462fd60e5da0"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 12 10:02:40 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jan 12 10:02:40 2010 -0800"
      },
      "message": "am c93c70c4: Merge \"framework: storage: Ensure that filesystems are unmounted before shutdown/reboot\" into eclair\n\nMerge commit \u0027c93c70c4b849d31ff1b5e5cf2fb9462fd60e5da0\u0027 into eclair-plus-aosp\n\n* commit \u0027c93c70c4b849d31ff1b5e5cf2fb9462fd60e5da0\u0027:\n  framework: storage: Ensure that filesystems are unmounted before shutdown/reboot\n"
    },
    {
      "commit": "7ebf017658070323ed1c2bbd80c46c7cd2390d87",
      "tree": "3e5d6d274f3ef4f56e79883e21a04078ef941871",
      "parents": [
        "595f48b2a4fa2751ad638b60d2476e77738b21da"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 12 07:57:42 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Tue Jan 12 07:57:42 2010 -0800"
      },
      "message": "framework: storage: Ensure that filesystems are unmounted before shutdown/reboot\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "f523609e8db372add763424c73f77d926865bb50",
      "tree": "66bd91b2bec18271afb39ddef7969659f85407ae",
      "parents": [
        "58f24686dcfbc0ec9cac42a49b167a2f194389ed"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Mon Jan 11 20:15:26 2010 -0500"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@android.com",
        "time": "Mon Jan 11 20:15:46 2010 -0500"
      },
      "message": "stop crashing.  I\u0027m not sure what triggered this.\n"
    },
    {
      "commit": "42471dd5552a346dd82a58a663159875ccc4fb79",
      "tree": "67137d33665f7ce22573230ddfc92a6fce964423",
      "parents": [
        "c408d5c2782012661f8181e511eda76e3be8cd13"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Thu Jan 07 17:25:22 2010 -0800"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Mon Jan 11 14:51:22 2010 -0800"
      },
      "message": "Simplify \u0026 update ANR logging; report ANR data into the dropbox.\nEliminate the per-process 200ms timeout during ANR thread-dumping.\nDump all the threads at once, then wait for the file to stabilize.\nSeems to work great and is much, much, much faster.\n\nDon\u0027t dump stack traces to traces.txt on app crashes (it isn\u0027t very\nuseful and mostly just clutters up the file).\n\nTweak the formatting of the dropbox dumpsys a bit, for readability,\nand avoid running out of memory when dumping large log files.\n\nReport build \u0026 kernel version with kernel log dropbox entries.\n"
    },
    {
      "commit": "0f5525ad3b9b341a6c288ded8a8a08572fc657c6",
      "tree": "2c55b7fcfdc4f8853b660f2f71b5d61985ce63c1",
      "parents": [
        "ee7d5524216523f1c759d19ec7bb6f01c2d71a08"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Mon Jan 11 10:15:16 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Mon Jan 11 10:15:16 2010 -0800"
      },
      "message": "framework: asec: Rename \u0027Cache\u0027 -\u003e \u0027Container\u0027\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "f96135857f2f3de12576174712d6bea8b363277d",
      "tree": "1d5a27c3e27520646ea0219ca092fea121d9768d",
      "parents": [
        "f6298db02365b5f31d7ab6b4dadcbe27bee88c43"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Sun Jan 10 13:01:11 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Mon Jan 11 08:20:59 2010 -0800"
      },
      "message": "MountService: Clean up some logspam\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "980a938c1c9a6a5791a8240e5a1e6638ab28dc77",
      "tree": "75a3a1347b5423cc98859d3976076cea3dc22564",
      "parents": [
        "0a0289420227fee51406cf4cc508f09d8ecdd2f4"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Jan 08 15:06:28 2010 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Jan 08 15:11:38 2010 -0800"
      },
      "message": "Deprecate fill_parent and introduce match_parent.\nBug: #2361749.\n"
    },
    {
      "commit": "1f6301e1ff1a8ba04bc2b9c55fe6ceb883ce43bf",
      "tree": "1d16af96f42d3557d404acb15e9d971e4c501cd8",
      "parents": [
        "87734d3bc118cba8f42845ddd51f10edadb84abf"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 22:40:27 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 08 12:56:33 2010 -0800"
      },
      "message": "MountService: Add new Settings for UMS prompting and notification behavior\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "51d3e798985944a3be1aafb1e01216a6627625e0",
      "tree": "453f68b28f0068076c7eb47d55fbea7d849836f7",
      "parents": [
        "7aac5547daf54005243c5d685cf60c5a4ff74a44",
        "6c133a78950e458df5ae1291e3a8d18dca2664db"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 08 12:38:24 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 08 12:38:24 2010 -0800"
      },
      "message": "Merge \"MountService: Fix asec list bug\""
    },
    {
      "commit": "cffea95e1ef203223b87ae8a6bde415b25c5c415",
      "tree": "14f1f01f0257466fd1a4f34b2715f268fea90b6e",
      "parents": [
        "d31d7397ba26dcd913e96d06f0a8fd593780d629",
        "3fb4ee4e03351078ceadf3d8dd05789ae152e8dd"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@android.com",
        "time": "Fri Jan 08 12:33:17 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jan 08 12:33:17 2010 -0800"
      },
      "message": "am 3fb4ee4e: Merge \"Immediately close the shade when the status bar is disabled. (DO NOT MERGE)\" into eclair\n\nMerge commit \u00273fb4ee4e03351078ceadf3d8dd05789ae152e8dd\u0027 into eclair-plus-aosp\n\n* commit \u00273fb4ee4e03351078ceadf3d8dd05789ae152e8dd\u0027:\n  Immediately close the shade when the status bar is disabled. (DO NOT MERGE)\n"
    },
    {
      "commit": "6c133a78950e458df5ae1291e3a8d18dca2664db",
      "tree": "aed6760434c4415c8627fb78ecddd18595fe8bf0",
      "parents": [
        "595ae28dabf7058e22419846f57bb8d4cb44012a"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 08 12:25:13 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Fri Jan 08 12:32:54 2010 -0800"
      },
      "message": "MountService: Fix asec list bug\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "7aac5547daf54005243c5d685cf60c5a4ff74a44",
      "tree": "c5b1a1763bf1acdec678ddcfa76e2451a6d07df5",
      "parents": [
        "660cc3461afbf0631cc8d4ab628628d68d840014"
      ],
      "author": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Tue Dec 22 21:42:17 2009 -0800"
      },
      "committer": {
        "name": "Irfan Sheriff",
        "email": "isheriff@google.com",
        "time": "Fri Jan 08 12:04:30 2010 -0800"
      },
      "message": "Synchronize all WifiNative calls\n\nSome of the native calls were left unsynchronized in the framework. Pre-empted IOCTL call\ninterrupted by another call from the framework cannot be handled in the driver.\n\nBug: 2310455\n"
    },
    {
      "commit": "43866e0c48bb0effe8805afd62b253e50ca7d591",
      "tree": "c70bc473e8e7d9662916ff645d6bac8cfe85d478",
      "parents": [
        "6414970ac7dc629345942059f75362d894c2310e"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Thu Jan 07 12:09:54 2010 -0800"
      },
      "committer": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Thu Jan 07 14:20:39 2010 -0800"
      },
      "message": "move some system services from gservices to secure settings\n\nChange-Id: Ie2dfb99a2b42b2cc9310b858c044d8684e3493fa\n"
    },
    {
      "commit": "dde25397985d82352965c54d68c0ee181b2c3cc8",
      "tree": "0c17660a058813097f7d351aa0ec1103e43cef06",
      "parents": [
        "1b780a01904234ef08a2061adaa70d02bdbf6345"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 11:33:29 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 11:36:22 2010 -0800"
      },
      "message": "MountService: Remove ACTION_SHUTDOWN handler\n\n   Shutdown handlers run too early for unmounting, so don\u0027t handle it.\nShutdown will be called explicitly from the ShutdownThread\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "1b780a01904234ef08a2061adaa70d02bdbf6345",
      "tree": "e9666bcc1e8f31dbc28b032edc1db696a1db5c07",
      "parents": [
        "9e6f148347523824a382675412de9ac3329a927f",
        "1e512790bfe13bdf4d174892c8b699b93f7f2203"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 11:35:29 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 07 11:35:29 2010 -0800"
      },
      "message": "Merge \"PowerManagerService: Switch to using MountService shutdown for media\""
    },
    {
      "commit": "9e6f148347523824a382675412de9ac3329a927f",
      "tree": "86cb01ab68754e28f723cfc7ccf83359a7c641d5",
      "parents": [
        "0a49913c810b9bd72d593f878acb714f2b8f3715",
        "91c7761139c0931da0fcbc89bce38cee4b9cc535"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 11:35:23 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 07 11:35:23 2010 -0800"
      },
      "message": "Merge \"MountService: Add an ACTION_SHUTDOWN handler and export a method for external shutdown\""
    },
    {
      "commit": "1e512790bfe13bdf4d174892c8b699b93f7f2203",
      "tree": "cafe3c55840fb6b95d632f5b483eb4eec16bcfbe",
      "parents": [
        "91c7761139c0931da0fcbc89bce38cee4b9cc535"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 10:40:29 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 10:40:29 2010 -0800"
      },
      "message": "PowerManagerService: Switch to using MountService shutdown for media\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "91c7761139c0931da0fcbc89bce38cee4b9cc535",
      "tree": "419569199c5eca8f69997de4967629fbacf92a14",
      "parents": [
        "1a8eec69e164cbac2bbe97828e2839e8c2a62bd8"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 10:39:41 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 10:39:41 2010 -0800"
      },
      "message": "MountService: Add an ACTION_SHUTDOWN handler and export a method for external shutdown\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "914d6597d2ec36b10b33d28b1a26cc2df1760368",
      "tree": "6f09169be36d88f76b0dd7ec5c053c2ba9a8422f",
      "parents": [
        "f80a762400a5500ec926b6a98051fec95558ad9d",
        "f68888951ae6056f5a15a7e2a84045c067bc6ba2"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Thu Jan 07 09:24:01 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 07 09:24:01 2010 -0800"
      },
      "message": "Merge \"move Watchdog\u0027s settings from Gservices to Secure\""
    },
    {
      "commit": "1a8eec69e164cbac2bbe97828e2839e8c2a62bd8",
      "tree": "d04e862a4d2ad817c342c0830d7c7f985baf045f",
      "parents": [
        "283ae234a71cb83c5cd9f58fe2c2a9414987113e"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 08:05:28 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Jan 07 08:06:10 2010 -0800"
      },
      "message": "MountListener: Improve error logging\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "f68888951ae6056f5a15a7e2a84045c067bc6ba2",
      "tree": "d914d657fcbc85f1fd358a590dc6dad7874a2d71",
      "parents": [
        "11881844d38e2740396642e5940906d8a5a94784"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Wed Jan 06 16:38:14 2010 -0800"
      },
      "committer": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Wed Jan 06 16:38:14 2010 -0800"
      },
      "message": "move Watchdog\u0027s settings from Gservices to Secure\n\nChange-Id: Iac1146dafa12f9247874514c9aeefa5f8f83933d\n"
    },
    {
      "commit": "14e69afdfcefe21c81679a95c476e64ebb276fbe",
      "tree": "a516d52a468d63e1b32148eca3036d98e8359d5b",
      "parents": [
        "d1265febc4ae20b0e709177735b175acd94b286a"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Jan 06 14:58:18 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Jan 06 15:36:01 2010 -0800"
      },
      "message": "PowerManagerService: When rebooting, ensure external storage is unmounted\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "3697229cc7adfd89493e87ba8b6401c8b68bdd71",
      "tree": "4af80cf6e36951b86cf244823218864f17432c60",
      "parents": [
        "432bff01ec67533dbbb6ed27cb190c99e83ea226"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Jan 06 11:06:32 2010 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Wed Jan 06 13:54:41 2010 -0800"
      },
      "message": "framework: MountService: Add initial support for Android Secure External Caches\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "5ef58f6d0f4dff7dae2f1cbf21d01b1b486f5ddd",
      "tree": "5d31f6f68d50218e6705769c9682500b2431281b",
      "parents": [
        "1af33d0ddc2f50ade146e4d48e2feb6f1d553427",
        "34901409a404c8c66914c5a8ad0f29b1bcde0e78"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@google.com",
        "time": "Wed Jan 06 07:08:56 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 06 07:08:56 2010 -0800"
      },
      "message": "Merge \"Cleanup and add public wrapper for IGeocodeProvider interface to prepare for network location unbundling.\""
    },
    {
      "commit": "34901409a404c8c66914c5a8ad0f29b1bcde0e78",
      "tree": "acb354a4cc41207692e486a84d9541925a15e8e6",
      "parents": [
        "3e7b44fade95848a717b0f4d1b7365ce72e885ed"
      ],
      "author": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Mon Jan 04 12:14:21 2010 -0500"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Tue Jan 05 23:39:29 2010 -0500"
      },
      "message": "Cleanup and add public wrapper for IGeocodeProvider interface to prepare for network location unbundling.\n\nChange-Id: I6523d115b56dbf450121e73d48e151f200827eb4\nSigned-off-by: Mike Lockwood \u003clockwood@android.com\u003e\n"
    },
    {
      "commit": "1af33d0ddc2f50ade146e4d48e2feb6f1d553427",
      "tree": "acd5598a9ce13ffe36f13f0ba4d782c96f24c6c7",
      "parents": [
        "3e7b44fade95848a717b0f4d1b7365ce72e885ed"
      ],
      "author": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Tue Jan 05 11:28:55 2010 -0800"
      },
      "committer": {
        "name": "Doug Zongker",
        "email": "dougz@android.com",
        "time": "Tue Jan 05 20:03:19 2010 -0800"
      },
      "message": "add recovery system interface to API\n\nAdds android.os.RecoverySystem (marked as pending) to replace the\n(hidden) com.android.internal.os.RecoverySystem.  RecoverySystem\ncontains methods for:\n\n  - verifying the signature of an update package\n  - rebooting to install a package\n  - rebooting to wipe user data\n\n(The reboot functions require \"android.permission.REBOOT\" and\n\"android.permission.ACCESS_CACHE_FILESYSTEM\".)  Providing these\nsimplifies implementation of OTA update for device builders.\n\nChange-Id: I63ce743b156e7a1a0327fd395b0e4a82c0eda79a\n"
    },
    {
      "commit": "03abb8179f0d912e6dabfc0e2b0f129d85066d17",
      "tree": "96bb3a814c750fd498db0171dab2e40bb9b1ae8f",
      "parents": [
        "129ef0aab3506f3cd80506843f42813ba20ce8ea"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jan 04 18:43:19 2010 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jan 05 15:47:05 2010 -0800"
      },
      "message": "Kill the task killers.\n\nThe ActivityManager.restartPackage() API is now deprecated, and no longer\nallows applications to mess up the state of other applications.  This was\nbeing abused by task killers, causing users to think their other applications\nhad bugs.\n\nA new API is introduced for task killers,\nActivityManager.killBackgroundProcesses(), which allows these applications\nto kill processes but only the same amount that the out of memory\nkiller does, thus causing no permanent damage.  The old restartPackage()\nAPI is now a wrapper for calling this new API.\n\nThere is also a new private forceStopPackage() API that is used for the\nsystem\u0027s force stop UI which does what the old restartPackage() API did.\n"
    },
    {
      "commit": "7fd0fee968f4a3e474e1ea9933fc03552fe5f50a",
      "tree": "97dcbc74194b56d32a9f9c4e323db7b62b9f6c59",
      "parents": [
        "8af9649d44745adba8be4db4e96af053ba32f2c5"
      ],
      "author": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Thu Dec 17 07:12:23 2009 -0800"
      },
      "committer": {
        "name": "San Mehat",
        "email": "san@google.com",
        "time": "Sat Jan 02 07:24:07 2010 -0800"
      },
      "message": "services: MountService: Refactor MountService for vold2\n\nSquash of the following:\nservices: MountService: Rework the way volume states are handled\nMountService: Add new API for directly getting volume state via a mount point\nEnvironment: Switch from using system property for external storage state.\nMountService: Add support for UMS\nMountService: Fix a few bugs\nservices: MountService: Add support for mount-on-insertion\nservices: MountService: Add some debugging around UMS\nservices: MountService: Fix some UMS bugs and clean-up startup mount code\n\nSigned-off-by: San Mehat \u003csan@google.com\u003e\n"
    },
    {
      "commit": "8eb3ea659761edc2cd5db3acf448059f19389e5e",
      "tree": "f7e4a63d32ecf88806dfac9c710b43e02b80fb3c",
      "parents": [
        "cc632731e2b6b83c1ec096d0d6c1dfa6b33d1377"
      ],
      "author": {
        "name": "Brad Larson",
        "email": "brad.larson@garmin.com",
        "time": "Tue Dec 29 11:47:55 2009 -0600"
      },
      "committer": {
        "name": "Mike Lockwood",
        "email": "lockwood@android.com",
        "time": "Wed Dec 30 10:22:35 2009 -0500"
      },
      "message": "Use isLocationProviderEnabled to test for enabled providers\n\nLocationManagerService was just checking if the string of (comma-separated)\nLocation Providers contained the provider we were interested in.  This works\nfine in normal cases, but breaks if we add a provider such as test_network.\nEnabling test_network causes LocationManagerService to think that the network\nprovider is also enabled.\n\nThe code in Settings.Secure.isLocationProviderEnabled() checks for the commas\nin the string as well, to make sure that a provider name which is a substring\nof another provider name won\u0027t cause problems.  It also centralizes the code\nwhich reads the string.\n\nSigned-off-by: Brad Larson \u003cbrad.larson@garmin.com\u003e\n"
    },
    {
      "commit": "5808317af880d0042dc8de451bbdaf039665433b",
      "tree": "af6afa9ab89bb41285ae7e91b5e2d5ea1da8becb",
      "parents": [
        "eb5ffc239b6482b9c1e046f6f5872187043d852c"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@google.com",
        "time": "Wed Dec 23 14:47:18 2009 -0600"
      },
      "committer": {
        "name": "Daniel Sandler",
        "email": "dsandler@google.com",
        "time": "Sun Dec 27 14:08:51 2009 -0500"
      },
      "message": "Immediately close the shade when the status bar is disabled. (DO NOT MERGE)\n\nThis provides a quick fix for http://b/2298803 (if the\nin-call UI comes up while the user is holding the\nwindowshade, the shade sticks in place and the display\nbecomes unresponsive).\n\nMerged from master (I92a824fe).\n\nTODO: safely restore code to animate the shade closed rather\nthan simply causing it to disappear.\n\nChange-Id: I53dc76fdfe86636f30f37a223a88d27a5766d3eb\n"
    },
    {
      "commit": "76032b7f167879782fd635f6b30cc15dd5b20ea0",
      "tree": "1dff3a30fb2e63cb3678adaa0239a73656d731e5",
      "parents": [
        "88bb8cb6b0cd814be12f4791ea4a0ec761cc79e8",
        "af5e9de9fd4a2473b2b56a012bd383e8d361bd63"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Dec 26 20:39:44 2009 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Dec 26 20:39:44 2009 -0800"
      },
      "message": "Merge change I92a824fe\n\n* changes:\n  Immediately close the shade when the status bar is disabled.\n"
    },
    {
      "commit": "af5e9de9fd4a2473b2b56a012bd383e8d361bd63",
      "tree": "8eca6302ff278a90e4fdaea83a3e9c5f82d20a8d",
      "parents": [
        "fddd8f96f34b622cbdd0d891f8a7f5b7e18fdbf8"
      ],
      "author": {
        "name": "Daniel Sandler",
        "email": "dsandler@google.com",
        "time": "Wed Dec 23 14:47:18 2009 -0600"
      },
      "committer": {
        "name": "Daniel Sandler",
        "email": "dsandler@google.com",
        "time": "Wed Dec 23 14:47:18 2009 -0600"
      },
      "message": "Immediately close the shade when the status bar is disabled.\n\nThis provides a quick fix for http://b/2298803 (if the\nin-call UI comes up while the user is holding the\nwindowshade, the shade sticks in place and the display\nbecomes unresponsive).\n\n(NB: The shade disappears immediately when the status bar is\ndisabled. It might be better for the shade to animate\nclosed; indeed, this seems to be what the code was trying to\ndo, but an unfortunate interaction of the animation and\ntouch-handling code is what caused this bug in the first\nplace.)\n\nChange-Id: I92a824fe385c8d6e51993be1657b492e580f1e7b\n"
    },
    {
      "commit": "dfa47b56e1c10c001adcb9dd6c32613b4ce50ff7",
      "tree": "30f83622deb2a23b539dd1eb8c2f090eb67493a9",
      "parents": [
        "233d316553837ef81fdf152432281d878dc8f773"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Tue Dec 22 16:01:32 2009 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Tue Dec 22 16:01:32 2009 -0800"
      },
      "message": "Don\u0027t crash the system process when a backup transport unregisters\n\nBug: 2342503\n"
    },
    {
      "commit": "233d316553837ef81fdf152432281d878dc8f773",
      "tree": "6505ae240ebe8282090dfbce9cf8af75d9707583",
      "parents": [
        "7853722721e9920372103b9a282218fc47706e3f",
        "b928535902b204ac3ec25f161352786842248767"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 22 10:51:51 2009 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Dec 22 10:51:51 2009 -0800"
      },
      "message": "Merge change Ib9285359\n\n* changes:\n  Add bugreport info about network feature use.\n"
    },
    {
      "commit": "f0108cda21bec61418b24aa6217406072780b5d5",
      "tree": "8866dfdec50a4bff63f188784779f7e1a9aa0216",
      "parents": [
        "fddd8f96f34b622cbdd0d891f8a7f5b7e18fdbf8",
        "ad2fa35d888e0763bfef0fc060775bec5d169479"
      ],
      "author": {
        "name": "Tom Taylor",
        "email": "tomtaylor@google.com",
        "time": "Tue Dec 22 10:11:55 2009 -0800"
      },
      "committer": {
        "name": "Tom Taylor",
        "email": "tomtaylor@google.com",
        "time": "Tue Dec 22 10:11:55 2009 -0800"
      },
      "message": "resolved conflicts for merge of ad2fa35d to master\n\nChange-Id: Ia4362cd48ac0689b91003943a4cd9660da72ff90\n"
    },
    {
      "commit": "c59411b17670ae9b5a6eb33e0fd62ca0e80d1578",
      "tree": "0c43e3a55cba905d2fe343773590646c470792d7",
      "parents": [
        "ee0511d76ce0ceae2f54782ca33e400e62d08137"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 21 20:10:14 2009 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 21 20:20:59 2009 -0800"
      },
      "message": "Rework activity manager debug dumps.\n\nChange how we do debug dumps from the activity manager to make\neverything go through the activity manager interface (no more\nsecondary interfaces), and use the command line arguments to\ncontrol what gets dumped.\n\nThe output from dumpsys without args still dumps everything.\n\nWhen just dumping the activity service, we now dump a subset\nof all of the am state that is interesting without being\noverwhelming.\n\nYou can use \"dumpsys activity -h\" to get help with other things\nthat can be dumped.\n"
    },
    {
      "commit": "b928535902b204ac3ec25f161352786842248767",
      "tree": "8ba160cf311dda15b940f50f9a82a0a2f1f2733b",
      "parents": [
        "8cb0badf6cee2026c4f9b1657cd6ce233288b63c"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Mon Dec 21 18:24:07 2009 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Mon Dec 21 18:24:07 2009 -0800"
      },
      "message": "Add bugreport info about network feature use.\n\nWe\u0027ve had a couple bug reports showing the effects of a left-live feature request.\nWe need a bit more bugreport-time logging.\n\nbug: 2323226\n"
    },
    {
      "commit": "6cf67faf3b77c3a442d41b46081ca1fdf2ca853c",
      "tree": "c1b11a0da38fb2d7f7d83f1ed387fc16c9e9bd49",
      "parents": [
        "33b13e34e3cd3920ea33d4060cb7d3adc35196a9"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 21 16:46:34 2009 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 21 16:57:11 2009 -0800"
      },
      "message": "Fix issue #2329765: Activities are not being immediately stopped.\n\nThis was caused by the launchers new hidden surface on top.  The\nalgorithm for determining whether an activity was visible assumed\nthat all windows would want to be visible.  Now it ignores ones that\nhave explicitly requested to be hidden.\n"
    },
    {
      "commit": "33b13e34e3cd3920ea33d4060cb7d3adc35196a9",
      "tree": "ec286a7596bd3c2d8dd5f61cddef192cce04bb31",
      "parents": [
        "1d2f5c39bbc50f0cae1daf77c9df6fc2dd5954a2",
        "de2606dcd36e9dfa49c42dbc68c539505d5ff8d4"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 21 16:51:08 2009 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Dec 21 16:51:08 2009 -0800"
      },
      "message": "Merge change Ide2606dc\n\n* changes:\n  Don\u0027t perform app transition of the app is not currently visible.\n"
    },
    {
      "commit": "60d8762413e8daba5f73559786312a9ec5e3b827",
      "tree": "7f61aea1775472b8b45581b1417ef484c3ddc58c",
      "parents": [
        "223bd7af9832971075ba9fd9b0e41b7d693bd791"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Wed Dec 16 16:32:58 2009 -0800"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Mon Dec 21 16:03:19 2009 -0800"
      },
      "message": "DropBox logging of app \u0026 system server crashes.\n\nThe crashes are also reported to the event log (and of course the\nmain logcat, like they always have been).  Ordinary Log.e(t,m,e) isn\u0027t dropboxed\nbut there\u0027s a new Log.wtf() which always is.  (Still @pending in this change.)\n\nAdd a hook to IPowerManager to crash the system server on demand\n(only for apps with REBOOT permission, since it\u0027s basically a restart).\nThis is not exposed in PowerManager, must be invoked directly -- mostly\nthis is there so \"Bad Behavior\" in dev tools can do it.\n"
    },
    {
      "commit": "ad2fa35d888e0763bfef0fc060775bec5d169479",
      "tree": "ac2dc1f03392f34e08c69bc8c0272f3da20e5992",
      "parents": [
        "497cf2b9bf2a67d8e5492c3139624e6363ec59c1",
        "d4a4729c0cac582a2dcec7c8cfb316b81885a0f0"
      ],
      "author": {
        "name": "Tom Taylor",
        "email": "tomtaylor@google.com",
        "time": "Mon Dec 21 15:44:34 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 21 15:44:34 2009 -0800"
      },
      "message": "am d4a4729c: Update imports to android-common\n\nMerge commit \u0027d4a4729c0cac582a2dcec7c8cfb316b81885a0f0\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027d4a4729c0cac582a2dcec7c8cfb316b81885a0f0\u0027:\n  Update imports to android-common\n"
    },
    {
      "commit": "de2606dcd36e9dfa49c42dbc68c539505d5ff8d4",
      "tree": "0e1bd13b9b4b68c98701d2a46796694e355cb669",
      "parents": [
        "126b02faee5753740cbdaedc35dc9eb279215360"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Dec 18 16:53:55 2009 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 21 15:26:51 2009 -0800"
      },
      "message": "Don\u0027t perform app transition of the app is not currently visible.\n\nYet more special casing for the window manager...  try really hard,\nif we are performing an activity transition that is behind an\nopaque window (like say the lock screen or status bar) to just not\ndo it.  And, just as important, do a reasonable transition away from\nwhatever is on top.\n\nExamples:\n\n- If the lock screen is up, and you get a call or press the\n  emergency dialer button, we fade from the lock screen to the\n  new UI, instead of fading to the animation going on between\n  the old and new.\n\n- If you are in something hiding the lock screen, like the\n  in-call screen, and that is hidden, then fade back to the\n  lock screen.\n\n- If you select an item from the status bar, then have the\n  new item displayed behind it as the status bar rolls up\n  rather than seeing a second animation.  (In fact this can\u0027t\n  always be done because we may not start the transition to\n  the new thing until the status bar is already going away.\n  But for most cases we can do this with just one anim.)\n"
    },
    {
      "commit": "d4a4729c0cac582a2dcec7c8cfb316b81885a0f0",
      "tree": "900252de39b7edd2409c6fff0d0609da759b2d6f",
      "parents": [
        "6a18871355f22bd0f91192e91345f48dff91f71a"
      ],
      "author": {
        "name": "Tom Taylor",
        "email": "tomtaylor@google.com",
        "time": "Mon Dec 21 13:59:18 2009 -0800"
      },
      "committer": {
        "name": "Tom Taylor",
        "email": "tomtaylor@google.com",
        "time": "Mon Dec 21 13:59:18 2009 -0800"
      },
      "message": "Update imports to android-common\n\nSeveral files were moved to android-common. Update all the references\nto import those files from the new location.\n"
    },
    {
      "commit": "c4c450c379268bdcf8cf0f52c38a763cde836997",
      "tree": "76909c87fed5a1ca769c38130fdb3b0e04dc9647",
      "parents": [
        "e8bae73b8c74fef8fad94e6e1666db6a35c7a5f3",
        "47c38f00ab464a8fdb6ae2d819ae189c17b72410"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Dec 18 16:14:34 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 18 16:14:34 2009 -0800"
      },
      "message": "am 47c38f00: am 558947c9: Issue #2335763: Cant dial emergency number on my device\n\nMerge commit \u002747c38f00ab464a8fdb6ae2d819ae189c17b72410\u0027\n\n* commit \u002747c38f00ab464a8fdb6ae2d819ae189c17b72410\u0027:\n  Issue #2335763: Cant dial emergency number on my device\n"
    },
    {
      "commit": "47c38f00ab464a8fdb6ae2d819ae189c17b72410",
      "tree": "2e442f7495829a1358b00d3a4fe1cf03d513b292",
      "parents": [
        "98a48f0fd3af5fec833dab44da17f8911e95d147",
        "558947c9899627067d632e8a6365f77a35f433e1"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Dec 18 16:11:08 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 18 16:11:08 2009 -0800"
      },
      "message": "am 558947c9: Issue #2335763: Cant dial emergency number on my device\n\nMerge commit \u0027558947c9899627067d632e8a6365f77a35f433e1\u0027 into eclair-plus-aosp\n\n* commit \u0027558947c9899627067d632e8a6365f77a35f433e1\u0027:\n  Issue #2335763: Cant dial emergency number on my device\n"
    },
    {
      "commit": "558947c9899627067d632e8a6365f77a35f433e1",
      "tree": "806c82b7e33cadacb7d5dba1607b6940cfad1e8d",
      "parents": [
        "5da76ddd575b22d45bbea0155f62c7c32e1a510e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Dec 18 16:02:50 2009 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Dec 18 16:05:57 2009 -0800"
      },
      "message": "Issue #2335763: Cant dial emergency number on my device\n\nThis may fix the issue, but we have no repro steps so no way to\nmake sure.\n\nWhat appeared to be going on was that the emergency dialer was\ncreated, but still had the starting preview window above it.  We\nwere stuck in this state because the preview window didn\u0027t have\nthe \"hide lock screen\" flag set, so the lock screen would never\nbe removed, and thus we would never take care of finishing the\nshow of the emergency dialer (because it was not visible) and\nthus not remove the starting window.\n\nThe solution here is to simply propagate the lock flags up to the\nstarting window.\n\nChange-Id: I6da9f6494537f0661d9d230664ebf745c293ea7d\n"
    },
    {
      "commit": "41c561781323c697e42eef5c08310dbd8c1bf63a",
      "tree": "300b9a9bded487d057d75730e4c6dc4299019936",
      "parents": [
        "ff3e4c834ff62620398c830a02002cb762c77c53",
        "24317443fde973c762afbea1a3f6f2c830dfe3dd"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Fri Dec 18 14:37:28 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 18 14:37:28 2009 -0800"
      },
      "message": "am 24317443: am 421c72b6: Cleanup of process-specific DNS.\n\nMerge commit \u002724317443fde973c762afbea1a3f6f2c830dfe3dd\u0027\n\n* commit \u002724317443fde973c762afbea1a3f6f2c830dfe3dd\u0027:\n  Cleanup of process-specific DNS.\n"
    },
    {
      "commit": "24317443fde973c762afbea1a3f6f2c830dfe3dd",
      "tree": "4bbc6cb0665b4842d2a8ce241418316505056b49",
      "parents": [
        "254e00253ce72ee7252c26aab3a9ec6fb72e0542",
        "421c72b6773582dd1473ace44c42d4e0ee1287e3"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Fri Dec 18 14:33:55 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 18 14:33:55 2009 -0800"
      },
      "message": "am 421c72b6: Cleanup of process-specific DNS.\n\nMerge commit \u0027421c72b6773582dd1473ace44c42d4e0ee1287e3\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027421c72b6773582dd1473ace44c42d4e0ee1287e3\u0027:\n  Cleanup of process-specific DNS.\n"
    },
    {
      "commit": "421c72b6773582dd1473ace44c42d4e0ee1287e3",
      "tree": "6a742d36aa784414f87dfafe12c34e4ed346fd9c",
      "parents": [
        "791c626addcb30c6fbe3522aa7e1afe86ce4d233"
      ],
      "author": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Thu Dec 17 14:54:59 2009 -0800"
      },
      "committer": {
        "name": "Robert Greenwalt",
        "email": "robdroid@android.com",
        "time": "Fri Dec 18 11:57:52 2009 -0800"
      },
      "message": "Cleanup of process-specific DNS.\n\nRemoves entries sooner.  A bug.\nDoesn\u0027t add one for phone process at all.  This was intended to be removed long ago.\n\nbug: 2329900\n"
    },
    {
      "commit": "dd71fc8baeee0d09008d0fa67d6bf3d23cf21baa",
      "tree": "ab36414f6b389771a061b304d5a7597ef8f78a36",
      "parents": [
        "7f6f631070915500dfdbd4d2b9a2415fb23786a8"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Dec 16 19:24:32 2009 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Dec 17 16:03:49 2009 -0800"
      },
      "message": "Rework the LRU list for hidden and empty processes.\n\nThis is intended to solve a problem on devices with more memory\nwhere we can fill up that memory with processes that contain activities\n(hidden processes), leaving no room for empty processes.  Thus if a\nprocess is receiving broadcasts regularly, or starting and stopping\na service, or such, we will continually create its process only to\nhave it immediately killed when done.\n\nThere is certainly some tuning that should be done on this as we\nlook at the actually behavior.  The implementation here puts all of\nthe hidden and empty processes into one list, trying to make some\npreferences for the very most recently used activity\u0027s processes to\nstay at the top and not get pushed out by other processes being\nstarted in the background.\n"
    },
    {
      "commit": "e3ab4d0f181e875c534653dd9491d956cb3bbcd9",
      "tree": "8326820e8f6b133c735c0ce5376f1e827f473148",
      "parents": [
        "2786d21ddeeb2a46733fbac1afd6533b093d70ee"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Dec 16 14:03:31 2009 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Wed Dec 16 14:03:31 2009 -0800"
      },
      "message": "Restore live wallpapers if specified in the restore data\n"
    },
    {
      "commit": "089e36f96eda087306e90df58048e803232e8a77",
      "tree": "f491a37747bb950c2ca531d5c77c31855c0164c5",
      "parents": [
        "da1807fccbafab3ee7ea782d28f7535c1d5006f2"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Mon Dec 14 18:54:33 2009 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Mon Dec 14 18:54:33 2009 -0800"
      },
      "message": "Bump ViewServer version number from 2 to 3\n"
    },
    {
      "commit": "236092a36216c79507ec19eb207831810caced19",
      "tree": "992316ed58e60cfe764410b853bf1e56affdfca3",
      "parents": [
        "74a76d5e071ba11eb92c92933fa5de338010374d"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Mon Dec 14 15:31:48 2009 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Mon Dec 14 16:20:01 2009 -0800"
      },
      "message": "Fixes crash in HierarchyViewer when windows hash code exceed int capacity.\nBug: 2321018\n"
    },
    {
      "commit": "74a76d5e071ba11eb92c92933fa5de338010374d",
      "tree": "c71ab22e555562f42bab98c564a426a83774d5f0",
      "parents": [
        "96610668869cd1c8c614d0c0eab3b79218da7cd7",
        "83652ebfe1963bcecdcf24383165904223baca6e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 14 16:15:03 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 14 16:15:03 2009 -0800"
      },
      "message": "am 83652ebf: am 3a3fd2ba: Merge change Iaf1f0918 into eclair-mr2\n\nMerge commit \u002783652ebfe1963bcecdcf24383165904223baca6e\u0027\n\n* commit \u002783652ebfe1963bcecdcf24383165904223baca6e\u0027:\n  Implement API to have new broadcasts replace existing broadcasts.\n"
    },
    {
      "commit": "83652ebfe1963bcecdcf24383165904223baca6e",
      "tree": "a5ab2035e56ec9c86250a1f501e9cc38dd16c0f6",
      "parents": [
        "08e2106a19a034670287374d96d671495e4ffc5f",
        "3a3fd2ba1ffc6171725375396cc59711a34bb39e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 14 16:10:13 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 14 16:10:13 2009 -0800"
      },
      "message": "am 3a3fd2ba: Merge change Iaf1f0918 into eclair-mr2\n\nMerge commit \u00273a3fd2ba1ffc6171725375396cc59711a34bb39e\u0027 into eclair-mr2-plus-aosp\n\n* commit \u00273a3fd2ba1ffc6171725375396cc59711a34bb39e\u0027:\n  Implement API to have new broadcasts replace existing broadcasts.\n"
    },
    {
      "commit": "64c6902c1b24d2d0ccc48067247da53beeb5a0f5",
      "tree": "93b723d66d2b1d676d2502767eedc3079e555586",
      "parents": [
        "9021b37a9bf7eed87a98d0c52b381fe01a49ab31",
        "2cb1fe2f407d438544efd497e2cfbda1f6d58d75"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Dec 14 15:34:28 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 14 15:34:28 2009 -0800"
      },
      "message": "am 2cb1fe2f: am 59e03a0a: am da4cc343: Fix issue 2324029: In-call (and other) audio screwed up after using Pandora (ERD72).\n\nMerge commit \u00272cb1fe2f407d438544efd497e2cfbda1f6d58d75\u0027\n\n* commit \u00272cb1fe2f407d438544efd497e2cfbda1f6d58d75\u0027:\n  Fix issue 2324029: In-call (and other) audio screwed up after using Pandora (ERD72).\n"
    },
    {
      "commit": "2cb1fe2f407d438544efd497e2cfbda1f6d58d75",
      "tree": "bb023ac3e94230fbb74ebe94f62bf171b4bd281f",
      "parents": [
        "50fbfe65bb78e9fbd809238ca1f358390ed61ad3",
        "59e03a0a4d62f214cf5cfab49f16223f89670f2a"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Dec 14 15:26:41 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 14 15:26:41 2009 -0800"
      },
      "message": "am 59e03a0a: am da4cc343: Fix issue 2324029: In-call (and other) audio screwed up after using Pandora (ERD72).\n\nMerge commit \u002759e03a0a4d62f214cf5cfab49f16223f89670f2a\u0027 into eclair-mr2-plus-aosp\n\n* commit \u002759e03a0a4d62f214cf5cfab49f16223f89670f2a\u0027:\n  Fix issue 2324029: In-call (and other) audio screwed up after using Pandora (ERD72).\n"
    },
    {
      "commit": "1c633fc89bae9bf0af6fe643ac7ad2e744f27bed",
      "tree": "ba72742fc17755ec69996ad3dd6a6f82f445a2ab",
      "parents": [
        "19553241513bd2ee2610026ebbce8c45c7ae0dbc"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Dec 08 19:45:14 2009 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Dec 14 15:03:35 2009 -0800"
      },
      "message": "Implement API to have new broadcasts replace existing broadcasts.\n\nUse this in various places where it should serve no purpose to deliver\nboth broadcasts.  This is intended to reduce somewhat the flurry of\nbroadcasts that we churn through during boot.\n"
    },
    {
      "commit": "2685607d59f6e84f7add148054d66ceda87cb9bc",
      "tree": "d477e879552ab2ed89ec748bf1f01ad6e56cd19e",
      "parents": [
        "03090a873bb505e730e58aaeb4f0ac3480fcc057",
        "da4cc34308d65730c404b669926a92e37b378555"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Dec 14 11:57:42 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 14 11:57:42 2009 -0800"
      },
      "message": "am da4cc343: Fix issue 2324029: In-call (and other) audio screwed up after using Pandora (ERD72).\n\nMerge commit \u0027da4cc34308d65730c404b669926a92e37b378555\u0027 into eclair-plus-aosp\n\n* commit \u0027da4cc34308d65730c404b669926a92e37b378555\u0027:\n  Fix issue 2324029: In-call (and other) audio screwed up after using Pandora (ERD72).\n"
    },
    {
      "commit": "59e03a0a4d62f214cf5cfab49f16223f89670f2a",
      "tree": "4b7b3d8acbc521daa096730fc6bd43d3fe229d26",
      "parents": [
        "39f0efba92a4420f77e3abc53c367ea3cacde3cf",
        "da4cc34308d65730c404b669926a92e37b378555"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Dec 14 11:57:24 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Dec 14 11:57:24 2009 -0800"
      },
      "message": "am da4cc343: Fix issue 2324029: In-call (and other) audio screwed up after using Pandora (ERD72).\n\nMerge commit \u0027da4cc34308d65730c404b669926a92e37b378555\u0027 into eclair-mr2\n\n* commit \u0027da4cc34308d65730c404b669926a92e37b378555\u0027:\n  Fix issue 2324029: In-call (and other) audio screwed up after using Pandora (ERD72).\n"
    },
    {
      "commit": "da4cc34308d65730c404b669926a92e37b378555",
      "tree": "f6b554ebc694a89a7cc4bdce29ec1ba639e96074",
      "parents": [
        "54bb575e85d1e40efbfbb868f37553cdd8ed318f"
      ],
      "author": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Dec 14 03:45:41 2009 -0800"
      },
      "committer": {
        "name": "Eric Laurent",
        "email": "elaurent@google.com",
        "time": "Mon Dec 14 03:45:41 2009 -0800"
      },
      "message": "Fix issue 2324029: In-call (and other) audio screwed up after using Pandora (ERD72).\n\nThe problem is due to spurious headset connection indications received from event observer when a 3.5mm headset w/o mic is connected.\nIn this particular case, The HeadsetObserver first received a valid indication of headset with mic connection, followed by a headset with mic disconnection and finally a headset w/o mic connection.\nThe HeadsetObserver delays the headset disconnection intent to leave time to music app to pause music before the output path is switched.\nAs the last headset w/o mic connection indication is received from the event observer before the intent corresponding to the spurious headset with mic disconnection is broadcast, the later is discarded. Results a state where the headset with mic is always considered as connected.\n\nThe fix consists in not canceling pending intents when a new headset state is received and carrying the HeadsetObserver state with the delayed message triggering the broacast of the disconnection intent.\n"
    },
    {
      "commit": "b672b6b991001adb0c61d79c10cc2f907d5c7501",
      "tree": "bb31a529dd64ac6690266b89b20e56b7bdc59b80",
      "parents": [
        "bd2e6de7e34f4d4d3d31c924b1218ec007c1ea88",
        "6a6f43f577c6cb22202ee86fb3c6d1601f36c3b5"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Dec 13 12:41:53 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Dec 13 12:41:53 2009 -0800"
      },
      "message": "am 6a6f43f5: am 8091424e: am 9b52a218: Fix #2269582 Sometimes camera preview screen is truncated\n\nMerge commit \u00276a6f43f577c6cb22202ee86fb3c6d1601f36c3b5\u0027\n\n* commit \u00276a6f43f577c6cb22202ee86fb3c6d1601f36c3b5\u0027:\n  Fix #2269582 Sometimes camera preview screen is truncated\n"
    },
    {
      "commit": "bd2e6de7e34f4d4d3d31c924b1218ec007c1ea88",
      "tree": "d6caf3622764c1a5faa271e5efbd6829a08cbfbf",
      "parents": [
        "0e8ba05e491e12296c44330672ecc2d679d8debb",
        "c1e6b91d75ce1dd5e8cc23aaf49c84d32f1bf673"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Dec 13 12:41:43 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Dec 13 12:41:43 2009 -0800"
      },
      "message": "am c1e6b91d: am c9ca93fb: am 474731d5: Merge change I2ffe306f into eclair\n\nMerge commit \u0027c1e6b91d75ce1dd5e8cc23aaf49c84d32f1bf673\u0027\n\n* commit \u0027c1e6b91d75ce1dd5e8cc23aaf49c84d32f1bf673\u0027:\n  Fix issue #2304284: contacts/dialer/recentcalls constantly flashing\n"
    },
    {
      "commit": "6a6f43f577c6cb22202ee86fb3c6d1601f36c3b5",
      "tree": "8024867f99a3c0577e82c2186cf4b38ee9a59071",
      "parents": [
        "c1e6b91d75ce1dd5e8cc23aaf49c84d32f1bf673",
        "8091424ea332f754e6f1c712a9e28bfa7d02741e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Dec 13 12:34:18 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Dec 13 12:34:18 2009 -0800"
      },
      "message": "am 8091424e: am 9b52a218: Fix #2269582 Sometimes camera preview screen is truncated\n\nMerge commit \u00278091424ea332f754e6f1c712a9e28bfa7d02741e\u0027 into eclair-mr2-plus-aosp\n\n* commit \u00278091424ea332f754e6f1c712a9e28bfa7d02741e\u0027:\n  Fix #2269582 Sometimes camera preview screen is truncated\n"
    },
    {
      "commit": "c1e6b91d75ce1dd5e8cc23aaf49c84d32f1bf673",
      "tree": "08478a63530a005ab70d612c9409ae7ba9780e57",
      "parents": [
        "092de0a989dc3e81a957938670fb147f34afaa36",
        "c9ca93fbf9ff49ca4b74c4ec72d3f7580b3b7659"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Dec 13 12:34:09 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Dec 13 12:34:09 2009 -0800"
      },
      "message": "am c9ca93fb: am 474731d5: Merge change I2ffe306f into eclair\n\nMerge commit \u0027c9ca93fbf9ff49ca4b74c4ec72d3f7580b3b7659\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027c9ca93fbf9ff49ca4b74c4ec72d3f7580b3b7659\u0027:\n  Fix issue #2304284: contacts/dialer/recentcalls constantly flashing\n"
    },
    {
      "commit": "8091424ea332f754e6f1c712a9e28bfa7d02741e",
      "tree": "ed10a988f06b1d9aae5c2cefbfdf4c18ee75bdf4",
      "parents": [
        "c9ca93fbf9ff49ca4b74c4ec72d3f7580b3b7659",
        "9b52a2184e99565bcd7f77effb321c95a2a4837e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Dec 13 12:25:10 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Dec 13 12:25:10 2009 -0800"
      },
      "message": "am 9b52a218: Fix #2269582 Sometimes camera preview screen is truncated\n\nMerge commit \u00279b52a2184e99565bcd7f77effb321c95a2a4837e\u0027 into eclair-mr2\n\n* commit \u00279b52a2184e99565bcd7f77effb321c95a2a4837e\u0027:\n  Fix #2269582 Sometimes camera preview screen is truncated\n"
    },
    {
      "commit": "c9ca93fbf9ff49ca4b74c4ec72d3f7580b3b7659",
      "tree": "56ea64f904b08ff5669e7d2916daecd942c51036",
      "parents": [
        "a7d461e09adf716c2148b45a5d94f5b8cb37f9ba",
        "474731d5efb30c1e9184f998610054747eb8e764"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Sun Dec 13 12:25:00 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Sun Dec 13 12:25:00 2009 -0800"
      },
      "message": "am 474731d5: Merge change I2ffe306f into eclair\n\nMerge commit \u0027474731d5efb30c1e9184f998610054747eb8e764\u0027 into eclair-mr2\n\n* commit \u0027474731d5efb30c1e9184f998610054747eb8e764\u0027:\n  Fix issue #2304284: contacts/dialer/recentcalls constantly flashing\n"
    },
    {
      "commit": "7a7c95ea25e178e26d507f0d9643d60a1ffc87c3",
      "tree": "03238536e076143071585b1d2ba440c99fedf7c6",
      "parents": [
        "e9b86b542198d5499b2da7e9031c7200c25098c6",
        "9b52a2184e99565bcd7f77effb321c95a2a4837e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Dec 11 18:56:47 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 11 18:56:47 2009 -0800"
      },
      "message": "am 9b52a218: Fix #2269582 Sometimes camera preview screen is truncated\n\nMerge commit \u00279b52a2184e99565bcd7f77effb321c95a2a4837e\u0027 into eclair-plus-aosp\n\n* commit \u00279b52a2184e99565bcd7f77effb321c95a2a4837e\u0027:\n  Fix #2269582 Sometimes camera preview screen is truncated\n"
    },
    {
      "commit": "9b52a2184e99565bcd7f77effb321c95a2a4837e",
      "tree": "6c520900178226022e8b9fd75ffafed05f5193d7",
      "parents": [
        "474731d5efb30c1e9184f998610054747eb8e764"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Dec 11 14:51:35 2009 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Dec 11 18:35:07 2009 -0800"
      },
      "message": "Fix #2269582 Sometimes camera preview screen is truncated\n\nThere were a few places in the window manager where we wouldn\u0027t cause\na layout after making a window visible.  This would leave it using\nwhatever size and position it last have since we don\u0027t layout windows\nwhen they are not visible.\n\nAlso includes a little part I missed in the security issue that\nallowed wallpapers to see input on the lock screen.\n\nChange-Id: Icd7e037ad9a67ac936bc7039d87ed68f49502d73\n"
    },
    {
      "commit": "e9b86b542198d5499b2da7e9031c7200c25098c6",
      "tree": "52d376ae7a7aa90ad2acfed6580e08d81847ef3b",
      "parents": [
        "0169d78691f32cd33310caf5faa4dff4545efce1",
        "474731d5efb30c1e9184f998610054747eb8e764"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Dec 11 18:28:45 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 11 18:28:45 2009 -0800"
      },
      "message": "am 474731d5: Merge change I2ffe306f into eclair\n\nMerge commit \u0027474731d5efb30c1e9184f998610054747eb8e764\u0027 into eclair-plus-aosp\n\n* commit \u0027474731d5efb30c1e9184f998610054747eb8e764\u0027:\n  Fix issue #2304284: contacts/dialer/recentcalls constantly flashing\n"
    },
    {
      "commit": "474731d5efb30c1e9184f998610054747eb8e764",
      "tree": "5881b5f7ea82fbf40a6087b361a8d27c1fb87aec",
      "parents": [
        "62d4395bdb3114b9a75e46140456bc54fd13a3e7",
        "871ecdce67fb59a2603c1b93db657fe8b65695bd"
      ],
      "author": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 11 18:25:21 2009 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 11 18:25:21 2009 -0800"
      },
      "message": "Merge change I2ffe306f into eclair\n\n* changes:\n  Fix issue #2304284: contacts/dialer/recentcalls constantly flashing\n"
    },
    {
      "commit": "871ecdce67fb59a2603c1b93db657fe8b65695bd",
      "tree": "3ffc60fc7d7235c4bfab859ee86bd701a981daf8",
      "parents": [
        "f9b0e826689cca5ecbd40aa49f3ea7f7c73ad2a2"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Dec 11 15:24:33 2009 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Dec 11 15:24:33 2009 -0800"
      },
      "message": "Fix issue #2304284: contacts/dialer/recentcalls constantly flashing\n\nMake sure the application is always given the most recent configuration\nwhen launcher.  Use the current configuration, instead of whatever happens\nto be set by the app, for reporting what it was launched with.\n\nChange-Id: I2ffe306f56cc9092b640546dd0a28d2c29b9c0b3\n"
    },
    {
      "commit": "d021302134460efbb596f4a4a2951e75b83d0ede",
      "tree": "0ad87a7fd4a63d68f2a72551a6a674c6f677051f",
      "parents": [
        "07c71147dda8bda9a40bea10f6029d6cfcaae00f",
        "f6bb01b0d81943a00a42e56f2e65549ca03c386d"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Fri Dec 11 14:55:24 2009 -0800"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Fri Dec 11 14:55:24 2009 -0800"
      },
      "message": "resolved conflicts for merge of f6bb01b0 to master\n"
    },
    {
      "commit": "f6bb01b0d81943a00a42e56f2e65549ca03c386d",
      "tree": "1f78ad7243b02a906873cf14c14c052d291d0ac1",
      "parents": [
        "09f82ec61cca00bd8b08529a94139dd6ac5cec73",
        "b7f0367cec1c744aa66ef397b0244e25d507491c"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Fri Dec 11 14:32:40 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 11 14:32:40 2009 -0800"
      },
      "message": "am b7f0367c: Eliminate CrashData and friends.\n\nMerge commit \u0027b7f0367cec1c744aa66ef397b0244e25d507491c\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027b7f0367cec1c744aa66ef397b0244e25d507491c\u0027:\n  Eliminate CrashData and friends.\n"
    },
    {
      "commit": "b7f0367cec1c744aa66ef397b0244e25d507491c",
      "tree": "7b70d87b9886ea1567647aac00fccb3198accc8c",
      "parents": [
        "af1255dab8fa3eab1caf9bae799f80de14a74470"
      ],
      "author": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Wed Dec 09 16:22:32 2009 -0800"
      },
      "committer": {
        "name": "Dan Egnor",
        "email": "egnor@google.com",
        "time": "Fri Dec 11 13:27:04 2009 -0800"
      },
      "message": "Eliminate CrashData and friends.\n\n(CrashData was a custom-marshalled crash-info class used for a server crash\nreporting system I am deprecating).  Use ApplicationErrorReport.CrashInfo\ninstead to report crash details (mostly the stack trace) from RuntimeInfo to\nActivityManagerService, since we\u0027re likely to need the crash information in\nthat form anyway.\n\nRemove the (long-disabled) flags and support for the \"Debug\" button\nin the crash dialog.\n\nFurther gut the ICheckinService interface by removing the crash-reporting\nAPIs (and everything that calls them), plus the synchronous checkin()\nmethod (which has been stubbed out for a while now).\n\nA new dropbox-based crash reporting system is in the works, but not part\nof this change.\n"
    },
    {
      "commit": "07c71147dda8bda9a40bea10f6029d6cfcaae00f",
      "tree": "693b4fff20aaf8270fea81732015d8e8720cbb8d",
      "parents": [
        "b99349e1d33a4ab3cd03b4ca5cc495a7ae65fca1",
        "09f82ec61cca00bd8b08529a94139dd6ac5cec73"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Dec 11 13:26:05 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 11 13:26:05 2009 -0800"
      },
      "message": "am 09f82ec6: am af1255da: resolved conflicts for merge of 2624fbca to eclair-mr2\n\nMerge commit \u002709f82ec61cca00bd8b08529a94139dd6ac5cec73\u0027\n\n* commit \u002709f82ec61cca00bd8b08529a94139dd6ac5cec73\u0027:\n  Fix #2320798: Device hang then runtime restart\n"
    },
    {
      "commit": "09f82ec61cca00bd8b08529a94139dd6ac5cec73",
      "tree": "e9673829f98ccefb838029a7d71eb0e9962ec339",
      "parents": [
        "e86a37c6bfb0a0aa9ce871fdfc9e884ab3ddd1d8",
        "af1255dab8fa3eab1caf9bae799f80de14a74470"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Dec 11 13:20:15 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 11 13:20:15 2009 -0800"
      },
      "message": "am af1255da: resolved conflicts for merge of 2624fbca to eclair-mr2\n\nMerge commit \u0027af1255dab8fa3eab1caf9bae799f80de14a74470\u0027 into eclair-mr2-plus-aosp\n\n* commit \u0027af1255dab8fa3eab1caf9bae799f80de14a74470\u0027:\n  Fix #2320798: Device hang then runtime restart\n"
    },
    {
      "commit": "af1255dab8fa3eab1caf9bae799f80de14a74470",
      "tree": "9d7aa7af0e0da1beeb6a61fe41c56e05d30e4193",
      "parents": [
        "8eac1637b0f8ec7a2417eb53ebe56bb64c3b2b23",
        "2624fbcaaa74b3a6d8d60d22d9e16ef26a98a6b2"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Dec 11 13:16:41 2009 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@google.com",
        "time": "Fri Dec 11 13:16:41 2009 -0800"
      },
      "message": "resolved conflicts for merge of 2624fbca to eclair-mr2\n"
    },
    {
      "commit": "dfcabffa3012bdf70a31bd07140d553a29c1afde",
      "tree": "a80ea3c75a656c4cff67c7c4b08144169ca8dba2",
      "parents": [
        "3dadbf3b62738d377a2056460059ff8e59dfe555",
        "2624fbcaaa74b3a6d8d60d22d9e16ef26a98a6b2"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Fri Dec 11 13:05:57 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Dec 11 13:05:57 2009 -0800"
      },
      "message": "am 2624fbca: Fix #2320798: Device hang then runtime restart\n\nMerge commit \u00272624fbcaaa74b3a6d8d60d22d9e16ef26a98a6b2\u0027 into eclair-plus-aosp\n\n* commit \u00272624fbcaaa74b3a6d8d60d22d9e16ef26a98a6b2\u0027:\n  Fix #2320798: Device hang then runtime restart\n"
    },
    {
      "commit": "2624fbcaaa74b3a6d8d60d22d9e16ef26a98a6b2",
      "tree": "a1e3dc47f0f25a3c549b43db5858b1cdb99c3d67",
      "parents": [
        "f9b0e826689cca5ecbd40aa49f3ea7f7c73ad2a2"
      ],
      "author": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Fri Dec 11 12:11:31 2009 -0800"
      },
      "committer": {
        "name": "Christopher Tate",
        "email": "ctate@android.com",
        "time": "Fri Dec 11 12:49:33 2009 -0800"
      },
      "message": "Fix #2320798: Device hang then runtime restart\n\nThe system_server process is deadlocking between event dispatch and window\nmanager code.  This change fixes the lock scoping to eliminate the deadlock.\n\nChange-Id: I00f029e4d51d7432119ad3aeec260df215b52546\n"
    },
    {
      "commit": "16d3fa24ab19701f486aa37eb8085680b1256ade",
      "tree": "845194abd28e15ce4cd2a0743bee206d10d82688",
      "parents": [
        "514ef9682760d4eaac670a593b0d5a4c516e8444",
        "436b93b5f577549801489bff228f1a5761f331ff"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Dec 10 23:46:00 2009 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Dec 10 23:46:00 2009 -0800"
      },
      "message": "am 436b93b5: am 221fa910: am d3cfb1bd: Merge change Ia48b3f2a into eclair\n\nMerge commit \u0027436b93b5f577549801489bff228f1a5761f331ff\u0027\n\n* commit \u0027436b93b5f577549801489bff228f1a5761f331ff\u0027:\n  Fix #2313887: Device doesn\u0027t boot after rebooting device...\n"
    }
  ],
  "next": "436b93b5f577549801489bff228f1a5761f331ff"
}
