)]}'
{
  "log": [
    {
      "commit": "a210cae724313604f8cbd49cc6deab1be5239083",
      "tree": "61b27991a9a4fcc7a2631b39a94ef44f243c062f",
      "parents": [
        "e5c759ff3a602f884cdac011600dc64645bce93e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jun 30 12:03:43 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jun 30 12:03:43 2014 -0700"
      },
      "message": "Switch to upstream NetBSD nsap_addr.c.\n\nThese symbols should be public (and Firefox uses them), and we\u0027d also probably\nrather have the upstream thread-safe implementation.\n\nBug: https://bugzilla.mozilla.org/show_bug.cgi?id\u003d1030899\nChange-Id: I2a5888fbb3198546848398f576fd2195ff3fe00c\n"
    },
    {
      "commit": "52f9b051c8bcb3d723b023a74d7d89ee45cf754c",
      "tree": "3de5db05a09e89a45e1802ed4bc9ca531a7ee9cd",
      "parents": [
        "598f4b3ac1be3c6ef3af613ac4b0694841e165fe",
        "0468feb28696751efcddada8de69a622afffdba8"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jun 24 21:24:55 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 24 18:00:13 2014 +0000"
      },
      "message": "Merge \"Sync to current upstream arc4random.\""
    },
    {
      "commit": "0468feb28696751efcddada8de69a622afffdba8",
      "tree": "9d91e7e644011100dafa93d0d1c706e631c81a11",
      "parents": [
        "fb0a3622f79bb0a31dd4d0e2f9cea990075ef129"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jun 20 22:49:20 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jun 24 14:13:48 2014 -0700"
      },
      "message": "Sync to current upstream arc4random.\n\nThis is actually revision 1.33, which is no longer the latest, but it\u0027s\nas close to head as we can currently reasonably get. I\u0027ve also switched\nto the OpenBSD getentropy_linux.c implementation of getentropy, lightly\nmodified to try to report an error on failure.\n\nBug: 14499627\nChange-Id: Ia7c561184b1f366c9bf66f248aa60f0d53535fcb\n"
    },
    {
      "commit": "4e4e1a5d78ff6dd9394b9b116c012046da409e99",
      "tree": "68252d281005257fa0e1664fa095e9eb1e11844d",
      "parents": [
        "65e80cf62200085f72c1c081aea2d6e9b800cde2"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jun 23 20:12:05 2014 +0000"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jun 23 20:12:05 2014 +0000"
      },
      "message": "Revert \"Prevent symbols from libgcc from being reexported.\"\n\nThis reverts commit 65e80cf62200085f72c1c081aea2d6e9b800cde2.\n\nChange-Id: I5f94b123f73db8d0b03cd71a5cffa0662776a017\n"
    },
    {
      "commit": "65e80cf62200085f72c1c081aea2d6e9b800cde2",
      "tree": "093c5a57b9b5409115d0230bdf8d325ddf3b2d0e",
      "parents": [
        "0d7415fb225573c37ff9e880957cd2044dd658ce"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Jun 18 17:18:33 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Sat Jun 21 00:09:31 2014 -0700"
      },
      "message": "Prevent symbols from libgcc from being reexported.\n\nSince this was not done earlier, there are binary compatibility concerns\nthat prevent us from being able to apply this to LP32.\n\nBug: 11156955\nChange-Id: Ie717c3ae4b81c749548a45a993c834e109700b27\n"
    },
    {
      "commit": "0d7415fb225573c37ff9e880957cd2044dd658ce",
      "tree": "68252d281005257fa0e1664fa095e9eb1e11844d",
      "parents": [
        "ac86f99405707aa099e11d97cd68bfe011cf7a32",
        "c82c0b7e072491da4818e7de37411fbb2055fce1"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Sat Jun 21 04:43:24 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Jun 20 20:43:43 2014 +0000"
      },
      "message": "Merge \"Remove SHA1 from LP64 in favor of libcrypto.\""
    },
    {
      "commit": "7086ad6919feb2415c6027163f5c63323bcca27c",
      "tree": "f32c06d513e90ba1fcb8fe56f9cd055cccc7d01b",
      "parents": [
        "d1bf37780d0bcaca3e6046171f958ebfea34bde1"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 19 16:39:01 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jun 20 09:06:57 2014 -0700"
      },
      "message": "Cache getpid.\n\nIn practice, with this implementation we never need to make a system call.\nWe get the main thread\u0027s tid (which is the same as our pid) back from\nthe set_tid_address system call we have to make during initialization.\nA new pthread will have the same pid as its parent, and a fork child\u0027s\nmain (and only) thread will have a pid equal to its tid, which we get for\nfree from the kernel before clone returns.\n\nThe only time we\u0027d actually have to make a getpid system call now is if\nwe take a signal during fork and the signal handler calls getpid. (That,\nor we call getpid in the dynamic linker while it\u0027s still dealing with its\nown relocations and hasn\u0027t even set up the main thread yet.)\n\nBug: 15387103\nChange-Id: I6d4718ed0a5c912fc75b5f738c49a023dbed5189\n"
    },
    {
      "commit": "d10db8261949e4d84b65f5c369153d0ca86ab22c",
      "tree": "f3ec0b9a4e08a39492c86e49f17f1ba192b6182f",
      "parents": [
        "29e3a0e312b7a76b91adfd77a399a390ffaed11d"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 19 14:49:30 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 19 14:49:30 2014 -0700"
      },
      "message": "Build tzcode with hidden visibility.\n\nBug: 11156955\nChange-Id: Ib98d837b56cbbdfd01687cb3054fe3103eec0da9\n"
    },
    {
      "commit": "5f564540a953a670925e058dabc521f68ffb997c",
      "tree": "0269b23ca27a57f847e39f59a6dc439928c4d410",
      "parents": [
        "942fa486f669da8bb5db724d5c4fdc93b4fb65d9"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 19 13:54:10 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 19 13:54:10 2014 -0700"
      },
      "message": "Build tzcode with -Werror.\n\nParts of this are just getting us in sync with upstream, but the\n\u0027const\u0027 stuff is our own mess. We should kill the *_tz functions\nand lose this difference from upstream.\n\nChange-Id: I17d26534ed3f54667143d78147a8c53be56d7b33\n"
    },
    {
      "commit": "c82c0b7e072491da4818e7de37411fbb2055fce1",
      "tree": "52915af97820de3316dab31073920c141ad861a3",
      "parents": [
        "a217a0cdb3ff78f6b59d64fd4356f87643ad9d1e"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jun 16 16:52:27 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jun 16 16:52:27 2014 -0700"
      },
      "message": "Remove SHA1 from LP64 in favor of libcrypto.\n\nKeep the symbols around on LP32 for binary compatibility.\n\nBug: 11156955\nChange-Id: I379a7e0fa3092e9a70daeafcbcb2aacfc314031a\n"
    },
    {
      "commit": "3a37576d4b9714989b0618f6d1a2d2b2df77ed2b",
      "tree": "370a3ae262e4903148029b726b6200a86ab1cde8",
      "parents": [
        "a217a0cdb3ff78f6b59d64fd4356f87643ad9d1e"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Jun 16 17:13:09 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon Jun 16 17:13:09 2014 -0700"
      },
      "message": "Move jemalloc due to whole_static_library bug.\n\nRename jemalloc.cpp to jemalloc_wrapper.cpp to avoid problems with\nthe libc library having two jemalloc.o files that clobber each other.\n\nChange-Id: I9a2d966dbf414b1367ee0ef1f0d73fca6f25b518\n"
    },
    {
      "commit": "ac6467587e864d199377f14281da4641f979a68a",
      "tree": "138acbcc6c8d89da231342e9698de1a0b08580cd",
      "parents": [
        "9a3ad98fd69a276f7c5fca0489d5657be75fcf69"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Jun 05 02:10:49 2014 +0000"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jun 16 12:32:38 2014 -0700"
      },
      "message": "Revert \"Revert \"Remove ftime from bionic LP64\"\"\n\nThis reverts commit 0921204660b9597de795065d0350a787035ad589.\n\nChange-Id: I749af8d7d429cda9f9d09a75bd30df54e6b1dd65\n"
    },
    {
      "commit": "462abab12b074c62c0999859e65d5a32ebb41951",
      "tree": "c0979cfcae24863834ccc28821bd7d1483bac732",
      "parents": [
        "72dc1c22dc6a92dea925398c9e3880364ab29c1c"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Fri Jun 13 16:51:24 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jun 16 10:12:37 2014 -0700"
      },
      "message": "Removes getdtablesize(3) from LP64.\n\ngetdtablesize(3) was removed fro POSIX 2004. Keep the symbol around in LP32 for\nbinary compatibility, but remove the declaration from unistd.h.\n\nBug: 13935372\nChange-Id: I1f96cd290bf9176f922dad58bd5a7ab2cae7ef0f\n"
    },
    {
      "commit": "564222e3384eb1c649bc75650deb847c40ec7da3",
      "tree": "5ea176bc9067be7460b3c2af983f2b6aa16d33b5",
      "parents": [
        "29ddd78c21b15117bc7d4fc196f3a503f3aab3e2",
        "8563802b04347951d8878747a830987e5ca145f5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jun 13 00:40:06 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 12 05:34:11 2014 +0000"
      },
      "message": "Merge \"Use default hidden visibility to build libc_dns.\""
    },
    {
      "commit": "8563802b04347951d8878747a830987e5ca145f5",
      "tree": "00275345ccc73dce97c2363848a3fcee485d983d",
      "parents": [
        "b67a3c271616d7b2506ead15e97c6a840b5eb5a8"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 16 12:04:10 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 12 13:35:41 2014 -0700"
      },
      "message": "Use default hidden visibility to build libc_dns.\n\nBug: 11156955\nChange-Id: Ia443705f5fbee0681039d4480abc89850968f475\n"
    },
    {
      "commit": "346fa721ca20e481a624930425d823d452e11dfe",
      "tree": "0198bcdda35a8bc51df872cdd3bf15f274db10fc",
      "parents": [
        "3d5e0b2045f899e27a071dc228dafc9378e90798",
        "a0beeeabbc8735bc830544cbbb1d920122b8d958"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 12 21:56:54 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Jun 12 03:32:07 2014 +0000"
      },
      "message": "Merge \"Get the full set of PRNG functions in \u003cstdlib.h\u003e\""
    },
    {
      "commit": "a0beeeabbc8735bc830544cbbb1d920122b8d958",
      "tree": "472a5720b949ff3f5a1e3b37cd273f981d286f28",
      "parents": [
        "d242aff47dc4eaa5081dc7af821308d353cd1090"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 12 11:48:04 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jun 12 14:37:31 2014 -0700"
      },
      "message": "Get the full set of PRNG functions in \u003cstdlib.h\u003e\n\nBug: https://code.google.com/p/android/issues/detail?id\u003d58888\nChange-Id: I435250bdae302e8bd7e29977d0fde7b9afbfca5e\n"
    },
    {
      "commit": "8e613cf342b369f7985135dbe11ebdbf8c736157",
      "tree": "729d925aaeff9b92b7bb09c9385e90069b400c2c",
      "parents": [
        "440bd6bcc308f78b32fcbc4a3ba312dd1343559b"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Jun 11 14:17:35 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Jun 11 14:41:45 2014 -0700"
      },
      "message": "Remove declaration for putw(3)/getw(3).\n\nThese were both removed from POSIX 2004, and we don\u0027t define an\nimplementation for getw(3). Keep the definition of put(3) on LP32 for\nbinary compatibility.\n\nBug: 13935372\nChange-Id: Iba384b45093ac6d2d7c2d81f7980cd7701dd6f56\n"
    },
    {
      "commit": "440bd6bcc308f78b32fcbc4a3ba312dd1343559b",
      "tree": "bc8398b92bb63a367ab8bc0c71f48cc6ed5aefa4",
      "parents": [
        "0ada9388e74693d990bdbb4af92c33bae8b34d4b",
        "210331d9762037afb9b5ed8413079c6f65872df9"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Jun 11 16:59:53 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Jun 10 22:08:45 2014 +0000"
      },
      "message": "Merge \"Replaces vfork() implementation with fork()\""
    },
    {
      "commit": "210331d9762037afb9b5ed8413079c6f65872df9",
      "tree": "85e6c875bcd65741da38a7d2b6a47cc24440d8b4",
      "parents": [
        "e2a54ca80e011db21665e9639af4608f58e32fbd"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Jun 05 18:07:03 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Jun 10 21:38:52 2014 -0700"
      },
      "message": "Replaces vfork() implementation with fork()\n\nvfork() was removed from POSIX 2008, so this replaces its implementation\nwith a call to fork().\n\nBug: 13935372\nChange-Id: I6d99ac9e52a2efc5ee9bda1cab908774b830cedc\n"
    },
    {
      "commit": "67401638a92abd52e5896183e851b1b097da07ac",
      "tree": "1e0ecd3b59e4e03359bd6353f3572a4fe69c2051",
      "parents": [
        "19718f0cd605f55df26823c67b62ceab6fe99a00"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jun 09 16:26:29 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jun 09 16:26:29 2014 -0700"
      },
      "message": "Remove the MD5 implementation that was only used by toolbox.\n\nI\u0027ve already moved toolbox over to openssl.\n\nChange-Id: Ia75fba5b5e3335a975b97787f653bf4df78e1b4e\n"
    },
    {
      "commit": "47ba295b0679148970bbffc9b76a3651efea9502",
      "tree": "50c35c2ca079093c8f315c21cd53c7df8da0987a",
      "parents": [
        "6fa47ca484aa37b0a2a5734a9def32973d110cc6"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jun 06 16:49:39 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Jun 06 16:49:39 2014 -0700"
      },
      "message": "Rewrite and hide longjmperror.\n\nThis shouldn\u0027t be public API, isn\u0027t supported on x86/x86_64, and it\u0027s\nunlikely anyone would have actually seen the message before anyway.\nUsing __libc_fatal makes it much more likely to be seen.\n\nBug: 11156955\nChange-Id: Icf7f654b22a7dacd89668b60c11e5705c7215c08\n"
    },
    {
      "commit": "0921204660b9597de795065d0350a787035ad589",
      "tree": "4f53609088f6d2c5a53a73b03737fdb82c8a0f38",
      "parents": [
        "26d6799bbe170b0955f564974b584c1471efdca1"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Jun 05 00:50:43 2014 +0000"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Thu Jun 05 00:50:43 2014 +0000"
      },
      "message": "Revert \"Remove ftime from bionic LP64\"\n\nBreaking some build... will look in to it later.\n\nThis reverts commit 26d6799bbe170b0955f564974b584c1471efdca1.\n\nChange-Id: I35fa770221be3a181bd37c6c3dce1bf37a69a4a1\n"
    },
    {
      "commit": "26d6799bbe170b0955f564974b584c1471efdca1",
      "tree": "5291e782c3d8b431f666ba38119721f45a4862bd",
      "parents": [
        "623dce3bd43975ca5b8698955a9fd8f18e9d5963"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Jun 04 15:20:17 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Jun 04 16:25:24 2014 -0700"
      },
      "message": "Remove ftime from bionic LP64\n\nBug: 13935372\nChange-Id: I5dd31147143b23a090a3b75b846dc5354e599121\n"
    },
    {
      "commit": "001f8f041bf21c53d4a0b919ef2c859b047bac0a",
      "tree": "4f53609088f6d2c5a53a73b03737fdb82c8a0f38",
      "parents": [
        "e120cba31df5249b720579312e799bd1c65f8e3d"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Jun 04 09:53:06 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Jun 04 12:01:56 2014 -0700"
      },
      "message": "Removes wcswcs from bionic for LP64.\n\nBug: 13935372\nChange-Id: I0deb15e769da4fa81bb65a87f3c86db5163a5796\n"
    },
    {
      "commit": "e120cba31df5249b720579312e799bd1c65f8e3d",
      "tree": "5ed24f0cbd15f70414d96fd2264ca29189207b7d",
      "parents": [
        "452e09130010b641904e7411e0c539590a654022",
        "be8df2e7445968d503a59a0a15c9612a8fb991df"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jun 04 16:17:09 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 04 16:17:10 2014 +0000"
      },
      "message": "Merge \"Cherrypick upstream OpenBSD\u0027s vfwprintf.c revision 1.11.\""
    },
    {
      "commit": "452e09130010b641904e7411e0c539590a654022",
      "tree": "bf46b10decf99bf66af7a3789080f443a011bafb",
      "parents": [
        "38ed337c1343af1aa55487777ed80de6b0d33638",
        "7a7f9952c12b216fbf91fc4cdbb97045e8861115"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Jun 04 16:10:50 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Jun 04 16:10:50 2014 +0000"
      },
      "message": "Merge \"Adds functionality specified by uchar.h\""
    },
    {
      "commit": "be8df2e7445968d503a59a0a15c9612a8fb991df",
      "tree": "e330ae77c97357278cc432bc92ba1b070cc88077",
      "parents": [
        "38ed337c1343af1aa55487777ed80de6b0d33638"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jun 04 09:00:25 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jun 04 09:00:25 2014 -0700"
      },
      "message": "Cherrypick upstream OpenBSD\u0027s vfwprintf.c revision 1.11.\n\nrevision 1.11\ndate: 2014/06/04 07:45:25;  author: stsp;  state: Exp;  lines: +1 -7;  commitid:\n zJPRH5RUO224FmQu;\nRemove assigned but unused local variables and macro from vfwprintf().\nFound by Elliott @ google\nok mpi@\n\nChange-Id: I716edc0c4d736a484a5317942de8e87bd8c6fd26\n"
    },
    {
      "commit": "7a7f9952c12b216fbf91fc4cdbb97045e8861115",
      "tree": "eeb9b78c9f548f65e913a9e2d184590b35cb3e42",
      "parents": [
        "831405b749d15a11fb947a40d61fd858e952d860"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon Jun 02 11:33:04 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Jun 04 08:39:24 2014 -0700"
      },
      "message": "Adds functionality specified by uchar.h\n\nmbrtoc32 and c32rtomb get their implementations from mbrtowc and wcrtomb. The\nwc functions now simply call the c32 functions.\n\nBug: 14646575\nChange-Id: I49d4b95fed0f9d790260c996c4d0f8bfd1686324\n"
    },
    {
      "commit": "9b5235d74e794d29fa912fe95ca3d5ec488dd371",
      "tree": "1cc132c801f60ba36a48af810bae05fefd4e1b02",
      "parents": [
        "3dbc2fe33e7a1c0e545f7762d3c7a98429c5a82b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jun 03 18:47:17 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jun 03 18:47:17 2014 -0700"
      },
      "message": "Hide dlmalloc symbols.\n\nWe need to leave dlmalloc_trim and dlmalloc_inspect_all exposed for\nthe VM, but if we\u0027re seriously looking at other malloc implementations,\nthat\u0027s something we\u0027re going to have to fix.\n\nBug: 11156955\nChange-Id: If85156c280044f1616c09a3c50ba674aaf0e8d3a\n"
    },
    {
      "commit": "b082645ccbac14e5c2ee2c55b22a0e635c3eae03",
      "tree": "680b4e3126e7cc309e60c38e9b5ce1af5e0e3ec5",
      "parents": [
        "bd6b849754386a1befa2c935cde3110cadf422c6"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jun 03 16:39:58 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jun 03 16:39:58 2014 -0700"
      },
      "message": "Work around \"error: variable \u0027uio\u0027 set but not used\".\n\nI\u0027ve sent the real fix upstream, and will merge that when they commit it.\n\nChange-Id: I75e5cab87026f8990c585d364dd178753d727e2a\n"
    },
    {
      "commit": "d286796fce1e6fff407b719a53eb2afbeb96c327",
      "tree": "c1edc80194a19b7b443611acd0ffdea2ddfe130a",
      "parents": [
        "2f9400b679ffe08f7190781e64edda5edf0f7297"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jun 03 15:22:34 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Jun 03 15:22:34 2014 -0700"
      },
      "message": "Turn on -Wunused and fix the mistakes it uncovers.\n\nChange-Id: I023d2d8b547fbc21d4124bb7510d42b06a0dc501\n"
    },
    {
      "commit": "5d9a7ba0dc9c24ed4e4efa9cac0e796fd524b308",
      "tree": "4674df3b5064cb38211453b6e887c364f0c66f05",
      "parents": [
        "831405b749d15a11fb947a40d61fd858e952d860"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 30 19:00:03 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Jun 02 10:32:55 2014 -0700"
      },
      "message": "Avoid a system call in \u0027gettid\u0027.\n\nSystem calls can be pretty slow. This is mako, which has one of our\nlowest latencies:\n\n                       iterations      ns/op\n  BM_unistd_getpid       10000000        209\n  BM_unistd_gettid      200000000          8\n\nBug: 15297299 (kernel panic from too many gettid calls)\nBug: 15315766 (excessive gettid overhead in liblogd)\nChange-Id: I49656c0fc5b5d092390264a59e4f2c0d8a8b1aeb\n"
    },
    {
      "commit": "b4e099c6f741835b11ecb6f8fd0861b1892ff182",
      "tree": "3c3e26ef1fa83438fd42aa06ace4b9a553c75c11",
      "parents": [
        "d4fbb1a8617285ab1d29324308aa016377fc36f3"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu May 29 16:04:53 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu May 29 16:43:01 2014 -0700"
      },
      "message": "Remove issetugid.\n\nBug: 14569474\nChange-Id: I752c77ed53c724f144f0b618443eb95e87f2929a\n"
    },
    {
      "commit": "6f2bde344123d8503cd60f3ecd3420f39aa24eb9",
      "tree": "fd32dfb0c313a1d852c37450ad22bab1d232c951",
      "parents": [
        "1c4d83012fea4e6d011215bef1665cf68d2ac47c"
      ],
      "author": {
        "name": "Bernhard Rosenkraenzer",
        "email": "Bernhard.Rosenkranzer@linaro.org",
        "time": "Fri May 23 17:44:18 2014 +0200"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri May 23 18:49:57 2014 -0700"
      },
      "message": "Add optimized AArch64 versions of bcopy and wmemmove based on memmove\n\nAdd optimized versions of bcopy and wmemmove for AArch64 based on the\nmemmove implementation\n\nChange-Id: I82fbe8a7221ce224c567ffcfed7a94a53640fca8\nSigned-off-by: Bernhard Rosenkraenzer \u003cBernhard.Rosenkranzer@linaro.org\u003e\n"
    },
    {
      "commit": "fd0ce866ce46ed62aa17dc2959a085cb3bf5755d",
      "tree": "62e5d2aa5516f7cd82d804b7105288ede6897de2",
      "parents": [
        "8167dd7cb98e87ffe9b40e4993c330b244ca2234"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Sat May 24 01:02:22 2014 +0000"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Sat May 24 01:02:22 2014 +0000"
      },
      "message": "Revert \"Add optimized AArch64 versions of bcopy and wmemmove based on memmove\"\n\nThis reverts commit 8167dd7cb98e87ffe9b40e4993c330b244ca2234.\n\nFor some reason I thought the bcopy change was bzero. The bcopy code doesn\u0027t pass our tests, so reverting until I can figure out what\u0027s wrong.\n\nChange-Id: Id89fe959ea5105cd58dff6bba8d91a30cc4bcb07\n"
    },
    {
      "commit": "8167dd7cb98e87ffe9b40e4993c330b244ca2234",
      "tree": "8800a876d9c8866a1e76f890254d7a22d8281bfb",
      "parents": [
        "a486632e789c6db4c35f969485ebb57f503bcf48"
      ],
      "author": {
        "name": "Bernhard Rosenkraenzer",
        "email": "Bernhard.Rosenkranzer@linaro.org",
        "time": "Fri May 23 17:44:18 2014 +0200"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri May 23 17:54:08 2014 -0700"
      },
      "message": "Add optimized AArch64 versions of bcopy and wmemmove based on memmove\n\nAdd optimized versions of bcopy and wmemmove for AArch64 based on the\nmemmove implementation\n\nChange-Id: Ie43d0ff4f8ec4edba5b4fb5ccacd941f81ac6557\nSigned-off-by: Bernhard Rosenkraenzer \u003cBernhard.Rosenkranzer@linaro.org\u003e\n"
    },
    {
      "commit": "254fa8857f5d88a4140cea2ee05056eae7f102b1",
      "tree": "d7dc6582135b8faf842fc9223fd2af8ad792d4ed",
      "parents": [
        "3eb9f1f6bade8085520d9b0ec35d84d69563ebe1",
        "fcac8ff97f6b6cced6546e0096cadc1039b68b5e"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu May 22 13:28:51 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu May 22 13:28:52 2014 +0000"
      },
      "message": "Merge \"Switch to POSIX dprintf/vdprintf.\""
    },
    {
      "commit": "fcac8ff97f6b6cced6546e0096cadc1039b68b5e",
      "tree": "06ea666f735a14951c3facd2cb986d8835798399",
      "parents": [
        "b2b0f7e1ae0a0459b41a7732b84f58d62373e512"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu May 22 01:24:30 2014 -0700"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu May 22 11:27:06 2014 +0100"
      },
      "message": "Switch to POSIX dprintf/vdprintf.\n\nBug: 11156955\nChange-Id: I734bd02db514367ab119a48304aae9767958e367\n"
    },
    {
      "commit": "8d2410d33d2c4eba6319664c965a750d863c7e05",
      "tree": "1856f7408ea3f10218250afe8221a329367a8ea0",
      "parents": [
        "011076b720b0809a6b94703780e768cd7b877c68"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed May 21 11:45:51 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Wed May 21 11:45:51 2014 -0700"
      },
      "message": "Fix build.\n\nChange-Id: I5a35eee4074e35f459c86c7f9b1d9b0754888940\n"
    },
    {
      "commit": "72bbd423579bb971dc06cdd3c06201faf3fe95e6",
      "tree": "222c460d45ac120ae45940628c501d6cfb50f84b",
      "parents": [
        "afb89c2a01089bb247456634a15a58f111bb55a6"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu May 08 11:14:03 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Tue May 20 14:47:33 2014 -0700"
      },
      "message": "Support for jemalloc to replace dlmalloc.\n\nTo use jemalloc, add MALLOC_IMPL \u003d jemalloc in a board config file\nand you get the new version automatically.\n\nUpdate the pthread_create_key tests since jemalloc uses a few keys.\nAdd a new test to verify memalign works as expected.\n\nBug: 981363\n\nChange-Id: I16eb152b291a95bd2499e90492fc6b4bd7053836\n"
    },
    {
      "commit": "94a9ba2b4a4d8be7e3520e34bfc7bd47ff7af0ce",
      "tree": "89e999996a20029ff8b4031a2ed8a54534013156",
      "parents": [
        "948acf710ed9be223696288466d4f4a566169ec5",
        "48ee47ce25fa9c99df49855ebf77ae1758d58d47"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon May 19 23:21:46 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon May 19 23:21:46 2014 +0000"
      },
      "message": "Merge \"Removes RTTI support from libc\""
    },
    {
      "commit": "948acf710ed9be223696288466d4f4a566169ec5",
      "tree": "efeb71d53544ffe3a80542273bc2829c0d890108",
      "parents": [
        "9925c1a8f717b006b4245880c16f91e5f5f3b40a",
        "f51d3e87671110c508f0f71d9bcb1bf54c22ca3b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon May 19 23:19:31 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon May 19 23:19:32 2014 +0000"
      },
      "message": "Merge \"Switch back to OpenBSD inet_ntop now they\u0027re FORTIFY clean.\""
    },
    {
      "commit": "f51d3e87671110c508f0f71d9bcb1bf54c22ca3b",
      "tree": "2d2c034902bf0b3f1ec7fc5f59083a0b40e39cfc",
      "parents": [
        "308c30af72da7b13938934ba5037dd347b1ef139"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon May 19 15:55:29 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon May 19 15:55:29 2014 -0700"
      },
      "message": "Switch back to OpenBSD inet_ntop now they\u0027re FORTIFY clean.\n\nChange-Id: I04798a4966c352a8a12feebdff9646e3bad5933f\n"
    },
    {
      "commit": "903b78873a744d3fba187e4bd22008ba21162e51",
      "tree": "54927c30d730513d9cfa817448b3184a6b6531ee",
      "parents": [
        "172ab0f65035013565ec57f52ece663082683698"
      ],
      "author": {
        "name": "Sreeram Ramachandran",
        "email": "sreeram@google.com",
        "time": "Mon May 19 13:39:57 2014 -0700"
      },
      "committer": {
        "name": "Sreeram Ramachandran",
        "email": "sreeram@google.com",
        "time": "Mon May 19 15:19:16 2014 -0700"
      },
      "message": "Mark sockets on creation (socket()) and accept4().\n\nRemove the separate syscall for accept() and implement it as accept4(..., 0).\n\nChange-Id: Ib0b8f5d7c5013b91eae6bbc3847852eb355c7714\n"
    },
    {
      "commit": "48ee47ce25fa9c99df49855ebf77ae1758d58d47",
      "tree": "c3d23c62894a3dbabd5d0160166afe7ab5f4fcf3",
      "parents": [
        "3a757f403ba98ab2132ceb8d290dfafea6c4c7a5"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon May 19 10:32:42 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Mon May 19 10:32:42 2014 -0700"
      },
      "message": "Removes RTTI support from libc\n\nOur type_info stub implementation is incompatible with the libc++ headers. Since\nwe don\u0027t need this support internally and anyone that wants RTTI support will\nhave to use libc++ anyway, this can be safely removed.\n\nChange-Id: Ied8b67a0d86a4eb0e31191a50cceba0e39a16a6d\n"
    },
    {
      "commit": "4c2da039baa6c621c78afa47ead85ec9e028f56d",
      "tree": "2fba53079e6ae8ecd692e8842e997845486ae2df",
      "parents": [
        "5e6e3edbba20bf5a166ea9d06a8f2f38a40e122f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 16 16:50:34 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 16 16:50:34 2014 -0700"
      },
      "message": "Fix the newly-introduced warning and turn on -Werror.\n\nI cleaned up most of our warnings last week but forgot to turn on -Werror,\nso of course we\u0027re getting new warnings already. I\u0027ve left -Werror commented\nout in those places where we still have warnings to deal with before we can\nturn on -Werror.\n\nChange-Id: Ia58ff8b8c1ada4bf81eec6f19ec1d34e133cf4b1\n"
    },
    {
      "commit": "2a60227223da700e4ae1b5436f61aea99fc7a5aa",
      "tree": "134e15b19ed1988c5125a68108d72b37c56e079b",
      "parents": [
        "5265ad6273cd7c61d096ebe0e29e493915e7c63e",
        "15b641a26731a7e42455c3ed22e1e9bdf31ea79c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 16 16:37:20 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri May 16 16:37:20 2014 +0000"
      },
      "message": "Merge \"Move libstdc++ into libc.\""
    },
    {
      "commit": "5265ad6273cd7c61d096ebe0e29e493915e7c63e",
      "tree": "9381511e6cda5cf2af20c6d7d51e80588b6fcf36",
      "parents": [
        "0a5b01662316a06be68f3250c1b678c5ef17cc40",
        "9029d2f638160b37f65da176acd7ccb3aa0ba891"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Fri May 16 02:14:07 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri May 16 02:14:07 2014 +0000"
      },
      "message": "Merge \"Fix comment typo.\""
    },
    {
      "commit": "9029d2f638160b37f65da176acd7ccb3aa0ba891",
      "tree": "c81ca09e6971f97fe03502a53b3dfa88b8479849",
      "parents": [
        "ea5248ee1bc5d031e0b1e70a311f450a741c1e99"
      ],
      "author": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu May 15 18:12:11 2014 -0700"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Thu May 15 19:11:58 2014 -0700"
      },
      "message": "Fix comment typo.\n\nChange-Id: I1909f724826b531daf14fec4853e40d578fc0f59\n"
    },
    {
      "commit": "623b0d05bd924e7fa3c155492695123c87c3a2b1",
      "tree": "8fa47b2bf2fb7abe4b168fb1009108cdd762f6e3",
      "parents": [
        "089c7c921786ff6255526feec96552fc16ada7f4"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Wed May 14 23:11:05 2014 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Thu May 15 13:05:21 2014 -0700"
      },
      "message": "Register _cleanup function with atexit\n\n * Register cleanup function with atexit\n   instead of calling it explicitly on\n   exit()\n * abort() no longer calls _cleanup:\n   Flushing stdio buffers on abort is no\n   longer required by POSIX.\n * dlmalloc no longer need to reset cleanup\n   (see above)\n * Upstream findfp.c makebuf.c setvbuf.cexit.c\n   to openbsd versions.\n\nBug: 14415367\nChange-Id: I277058852485a9d3dbb13e5c232db5f9948d78ac\n"
    },
    {
      "commit": "15b641a26731a7e42455c3ed22e1e9bdf31ea79c",
      "tree": "c06577c257be144af1d59f9f23e1f1117b22c3aa",
      "parents": [
        "bc7f8a791b4a510914fd5cac713415acb80fb806"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 14 18:18:55 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 14 18:18:55 2014 -0700"
      },
      "message": "Move libstdc++ into libc.\n\nThe Android build system always links against libstdc++.so anyway. Having\noperator new and operator delete in a separate library means we can\u0027t use\nconstructors and destructors on heap-allocated objects inside the C library,\nwhich is quite an unfortunate limitation.\n\nThis will be cheaper too; on LP64 we can stop linking against the [now empty]\nlibstdc++.so giving the dynamic linker one less library to worry about for\nevery process.\n\nThere\u0027s precedent too --- we already have no libpthread or librt.\n\nFor now I\u0027m leaving the include files where they are, and I\u0027m generating a\ndummy libstdc++.so and libstdc++.a. We can come back and clean that up later\nif all goes well.\n\nBug: 13367666\nChange-Id: I6f3e27ea7c30d03d6394965d0400c9dc87fa83db\n"
    },
    {
      "commit": "49ec2a0cdc56fcd6bdd1b0feea127acfabc076f9",
      "tree": "616f6898c6378880304cb4fbfe21e2dc4b8140ee",
      "parents": [
        "acc513698b90abdf84f26d6dd08eb0b32fa56714",
        "8f0cd8aa22906c3e678738eeba20fc1a5c399b6c"
      ],
      "author": {
        "name": "Sreeram Ramachandran",
        "email": "sreeram@google.com",
        "time": "Wed May 14 19:40:50 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed May 14 19:40:50 2014 +0000"
      },
      "message": "Merge \"Mark sockets on accept().\""
    },
    {
      "commit": "07f1ded1399805fa9367f4db2936832b0c22b7a5",
      "tree": "ef1ea3c1b18e92aad46fa839de895bf76a4780c7",
      "parents": [
        "e6c27a7af7a9b13e4e3d3ebd604d28effa9e9322"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 14 11:35:49 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 14 11:38:22 2014 -0700"
      },
      "message": "Remove the broken pthread deadlock prediction.\n\nThis hasn\u0027t built in over one release cycle and no one even noticed.\nart does this the right way and other projects should do the same.\n\nChange-Id: I7d1fb84c4080e008f329ee73e209ce85a36e6d55\n"
    },
    {
      "commit": "8f0cd8aa22906c3e678738eeba20fc1a5c399b6c",
      "tree": "38bbf429b63d34d1d339bcd02689e81f744ef53a",
      "parents": [
        "15c13bd6cc0ce44d8f083f75d0bfa926a88cc169"
      ],
      "author": {
        "name": "Sreeram Ramachandran",
        "email": "sreeram@google.com",
        "time": "Tue May 13 15:40:26 2014 -0700"
      },
      "committer": {
        "name": "Sreeram Ramachandran",
        "email": "sreeram@google.com",
        "time": "Wed May 14 11:10:22 2014 -0700"
      },
      "message": "Mark sockets on accept().\n\n(cherry picked from commit 58b1f3f6a30a660ad81637c2b50382c3d279243b)\n\nChange-Id: I5d09be413cf720fbed905f96313b007997ada76c\n"
    },
    {
      "commit": "5c8c88dd8d0a371d30096aa107297ebc23e96a45",
      "tree": "c9128ec2803a01da0091ca352385a9977f1aa13d",
      "parents": [
        "c6b5834ceb3df72608a8fe3526a2db337e504512"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 13 19:17:46 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 13 19:17:46 2014 -0700"
      },
      "message": "Use the NetBSD inet_ntop until the OpenBSD bug is fixed.\n\nStupidly I found this bug by accident when writing the existing\ntests, but I didn\u0027t think any real code would hit it. It turns\nout that libcore always uses an INET6_ADDRSTRLEN-sized buffer\neven when working with AF_INET addresses.\n\nChange-Id: Ieffc8e4bbe9b66b49b033e3e7101c896e097e6f8\n"
    },
    {
      "commit": "17f8ef87b565d88c3b391d6d8de8818dec74c4d5",
      "tree": "d8528e08179577e13de883c023b5139000d1ab05",
      "parents": [
        "5772237588a606cad2c7a26d24e9de3c0a62ce81",
        "6a41b0fb0e589c4afc4ecbcf7c425f0aa40eaea4"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed May 14 01:09:00 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed May 14 01:09:01 2014 +0000"
      },
      "message": "Merge \"Flesh out \u003carpa/inet.h\u003e.\""
    },
    {
      "commit": "6a41b0fb0e589c4afc4ecbcf7c425f0aa40eaea4",
      "tree": "a333726f481bd9ca99db2a4ed5752d9b93c37b61",
      "parents": [
        "0ccef7ec5294b34902e07c26db55891d3eddb2be"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 13 16:05:51 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 13 18:08:29 2014 -0700"
      },
      "message": "Flesh out \u003carpa/inet.h\u003e.\n\nUse the upstream OpenBSD implementations of these functions.\n\nAlso ensure we have symbols for htonl, htons, ntohl, and ntohs.\ngtest doesn\u0027t like us using the macro versions in ASSERT_EQ.\n\nBug: 14840760\nChange-Id: I68720e9aca14838df457d2bb27b999d5818ac2b5\n"
    },
    {
      "commit": "8205a61248973ac13716ae80e712c80e126b0541",
      "tree": "db74b30ed412e9dfa4f6fcf9be3cad2493f52b42",
      "parents": [
        "2ed09d44ecdaf656a598052d155a813897239042"
      ],
      "author": {
        "name": "Sreeram Ramachandran",
        "email": "sreeram@google.com",
        "time": "Tue May 13 17:24:03 2014 -0700"
      },
      "committer": {
        "name": "Sreeram Ramachandran",
        "email": "sreeram@google.com",
        "time": "Tue May 13 17:24:03 2014 -0700"
      },
      "message": "Fix build (take two).\n\nMake sure __netdClientDispatch is defined in the same set of libraries that\nrefer to it (e.g.: with connect.cpp).\n\nChange-Id: I86d7bf2df5bde09f75a35b204eac0e1361747e22\n"
    },
    {
      "commit": "06e8796ee95793435c194b0a55e26d7b568c7409",
      "tree": "2979fc9d5684946323ece7005aeda664a90ef971",
      "parents": [
        "79b56f4b0b9fa52fbf2e79c073d28efd21ae724d"
      ],
      "author": {
        "name": "Sreeram Ramachandran",
        "email": "sreeram@google.com",
        "time": "Tue May 13 16:30:12 2014 -0700"
      },
      "committer": {
        "name": "Sreeram Ramachandran",
        "email": "sreeram@google.com",
        "time": "Tue May 13 16:30:12 2014 -0700"
      },
      "message": "Fix build.\n\nChange-Id: I33293d8bc62cbb22e23a704c4242e7e9d3fce7c5\n"
    },
    {
      "commit": "ceb5bd787c8ce281e5f4343c5d4f77b41c3e2919",
      "tree": "4b91184c22597e1757ba036d30e09f5c5e586a74",
      "parents": [
        "0ccef7ec5294b34902e07c26db55891d3eddb2be"
      ],
      "author": {
        "name": "Sreeram Ramachandran",
        "email": "sreeram@google.com",
        "time": "Mon May 12 11:19:16 2014 -0700"
      },
      "committer": {
        "name": "Sreeram Ramachandran",
        "email": "sreeram@google.com",
        "time": "Tue May 13 11:30:03 2014 -0700"
      },
      "message": "Introduce netd_client, a dynamic library that talks to netd.\n\nThe library exists outside bionic. It is dynamically loaded, to replace selected\nstandard socket syscalls with versions that talk to netd.\n\nChange connect() to use the library if available.\n\n(cherry picked from commit 3a6b627a14df8111b03e452f2df4b5f4938e0e49)\n\nChange-Id: Ib6198e19dbc306521a26fcecfdf6e8424d163fc9\n"
    },
    {
      "commit": "eb664e24c074b88539b743668109d8b4eaa925bd",
      "tree": "20bd4bb4f2a733dcec384fa7c959c77661f156ba",
      "parents": [
        "dbcba8f5f9a59fac3d22dfc17a14d3d5cfb4f4b0"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 13 10:44:07 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 13 10:44:07 2014 -0700"
      },
      "message": "Add getmntent_r to our collection of \u003cmntent.h\u003e compatibility stubs.\n\nThis helps build \u0027external/flo\u0027 out of the box.\n\nBug: 14841211\nChange-Id: I30dde77239cceaf1f5743163744eb3604d27a266\n"
    },
    {
      "commit": "dbcba8f5f9a59fac3d22dfc17a14d3d5cfb4f4b0",
      "tree": "f53c692105190193cd5cfc4d4330ab6951d710d0",
      "parents": [
        "f34f0ccb0e1d1c6df5f60bbfc44983263f89164d",
        "b6943186ce78105155ba67ab261a970859b190df"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 13 17:32:47 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue May 13 17:32:48 2014 +0000"
      },
      "message": "Merge \"Reduce stack usage of tmpfile(3).\""
    },
    {
      "commit": "b6943186ce78105155ba67ab261a970859b190df",
      "tree": "403dca669bc6b0dfa478d50bb8dbe272bc4277b7",
      "parents": [
        "2b18b10710995834e955658aedad3fdb2f994af8"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 13 10:14:22 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 13 10:14:22 2014 -0700"
      },
      "message": "Reduce stack usage of tmpfile(3).\n\nAlso ensure that none of our home-grown code uses more than 2KiB per frame.\n\nChange-Id: I8987a17d72f4b7f082bb7fa25e137c8433664c14\n"
    },
    {
      "commit": "5a92284167ffba6d45210ef6889fa7d255c15d4f",
      "tree": "0ab0ebc49463cc1bdcad12f96ee12c5acbe51cc1",
      "parents": [
        "ebcc72070499b2ab2d1dee990d6f52814a56600e"
      ],
      "author": {
        "name": "Varvara Rainchik",
        "email": "varvara.rainchik@intel.com",
        "time": "Thu Apr 24 15:41:20 2014 +0400"
      },
      "committer": {
        "name": "Christopher Ferris",
        "email": "cferris@google.com",
        "time": "Mon May 12 13:56:59 2014 -0700"
      },
      "message": "Add 32-bit Silvermont-optimized string/memory functions.\n\nAdd following functions:\nbcopy, memcpy, memmove, memset, bzero, memcmp, wmemcmp, strlen,\nstrcpy, strncpy, stpcpy, stpncpy.\nCreate new directories inside arch-x86 to specify architecture: atom,\nsilvermont and generic (non atom or silvermont architectures are treated like generic).\nDue to introducing optimized versions of stpcpy and stpncpy,\nc-implementations of these functions are moved from\ncommon for architectures makefile to arm and mips specific makefiles.\n\nChange-Id: I990f8061c3e9bca1f154119303da9e781c5d086e\nSigned-off-by: Varvara Rainchik \u003cvarvara.rainchik@intel.com\u003e\n"
    },
    {
      "commit": "9a5a3e8e74e2c6d7850ab29711189acf0f7378a2",
      "tree": "54310a7a9d342c88ce8f8073b6b90e675641af19",
      "parents": [
        "185dd72a2c487502717903065e46d14039f17826"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon May 05 20:28:28 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon May 05 21:19:47 2014 -0700"
      },
      "message": "Fix \u003cmath.h\u003e to quieten most of our warnings.\n\nI\u0027ve reported the wcsftime bug upstream, but we really just want to use -D\nto ensure the buggy code isn\u0027t built. (I\u0027ve also brought our strftime a bit\ncloser to upstream now we have the right define.)\n\nI don\u0027t think upstream is likely to fix all their sign-compare and\nuninitialized warnings, so let\u0027s just silence them.\n\nAs for libm, again upstream isn\u0027t likely to fix all their warnings, and\nsilencing those made the ones that were our fault stand out. I\u0027ve fixed\nour \u003cmath.h\u003e to fix the warnings caused by our lack of definitions for\nthe non-imprecise long-double functions. I checked the C99 standard, and\nall these functions are there.\n\nChange-Id: Iee8e1182c1db375058fb2c451eceb212bab47a37\n"
    },
    {
      "commit": "8ec21d9ded4c05744b3f9388bf824a508d7c95c2",
      "tree": "93e55457598d2ad8801ab8b5bb5f0fddf25294b0",
      "parents": [
        "580b246917d58fafc757daaf097b6bd20b17970a",
        "53b24382f5299931af5d08c933a765334a092c56"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon May 05 21:33:22 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Mon May 05 21:33:22 2014 +0000"
      },
      "message": "Merge \"Switch to current upstream OpenBSD wsetup.c.\""
    },
    {
      "commit": "53b24382f5299931af5d08c933a765334a092c56",
      "tree": "6ffbf015c42e0f140740f3c6cbdb41e8b28e9b80",
      "parents": [
        "e987803c35b472f378f81a37beb162ac86e01503"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 02 18:29:25 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon May 05 14:31:20 2014 -0700"
      },
      "message": "Switch to current upstream OpenBSD wsetup.c.\n\nChange-Id: I2c1123f3e1d3c4af7fd7bf354e763934a39b78c0\n"
    },
    {
      "commit": "792ae72e41923800ba8797d87a76346cb2de14b9",
      "tree": "6d6996e9b4bd75c5c6bf4179d39b302ff83ada81",
      "parents": [
        "e987803c35b472f378f81a37beb162ac86e01503"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 02 18:18:46 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 02 18:22:23 2014 -0700"
      },
      "message": "Switch to current upstream OpenBSD fwrite.c.\n\nChange-Id: Ife527aafc1e5438f477d711902efe6e6f59f3f8e\n"
    },
    {
      "commit": "f1ada79a83f6ac42f5efd995bf04374005ac532b",
      "tree": "d75659784c636833835dc52f0fb8763feba80181",
      "parents": [
        "d6ff0dcef670abd070efc6ff75bfbf265128eb2e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 02 17:56:56 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 02 17:56:56 2014 -0700"
      },
      "message": "Sync with current OpenBSD stdio.\n\nWe\u0027d fallen a little behind.\n\nBug: 14492135\nChange-Id: Ic1137ef10bffccecebd5ce51086c23db006d0ea3\n"
    },
    {
      "commit": "efaa461bd67cfdfcbc2b4c6b69805bc5b929ae05",
      "tree": "e6034eeddb57c9a0807453ca0322a5b7eee347e8",
      "parents": [
        "790890fd5c896a098142e0783b10fa8246462249"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 02 15:53:03 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 02 15:57:50 2014 -0700"
      },
      "message": "Use the OpenBSD wcsftime.\n\nChange-Id: I81929355d245ba1e58b4a464ca6cf45915e0238e\n"
    },
    {
      "commit": "5a0aa3dee247a313f04252cf45608097695d5953",
      "tree": "1bbc0d1e4e60717285b17b40ab155bdfbace5e37",
      "parents": [
        "9fb53dd4dbaa7633c234d9da8417827fa3d3c32f"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 30 22:03:12 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu May 01 14:46:54 2014 -0700"
      },
      "message": "Switch to a working UTF-8 mb/wc implementation.\n\nAlthough glibc gets by with an 8-byte mbstate_t, OpenBSD uses 12 bytes (of\nthe 128 bytes it reserves!).\n\nWe can actually implement UTF-8 encoding/decoding with a 0-byte mbstate_t\nwhich means we can make things work on LP32 too, as long as we accept the\nlimitation that the caller needs to present us with a complete sequence\nbefore we\u0027ll process it.\n\nOur behavior is fine when going from characters to bytes; we just\nupdate the source wchar_t** to say how far through the input we got.\n\nI\u0027ll come back and use the 4 bytes we do have to cope with byte sequences\nsplit across multiple input buffers. The fact that we don\u0027t support\nUTF-8 sequences longer than 4 bytes plus the fact that the first byte of\na UTF-8 sequence encodes the length means we shouldn\u0027t need the other\nfields OpenBSD used (at the cost of some recomputation in cases where a\nsequence is split across buffers).\n\nThis patch also makes the minimal changes necessary to setlocale(3) to\nmake us behave like glibc when an app requests UTF-8. (The difference\nbeing that our \"C\" locale is the same as our \"C.UTF-8\" locale.)\n\nChange-Id: Ied327a8c4643744b3611bf6bb005a9b389ba4c2f\n"
    },
    {
      "commit": "0990d4fda898ada86e557f872f5cb7d16b138e3c",
      "tree": "43cd74258c43e23e8008c15aebdb0a3efd476f6c",
      "parents": [
        "77473e408504a7e298816b4071cd6902065b03d8"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 30 09:45:40 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 30 10:06:09 2014 -0700"
      },
      "message": "Make SIGRTMIN hide the real-time signals we use internally.\n\n__SIGRTMIN will continue to tell the truth. This matches glibc\u0027s\nbehavior (as evidenced by the fact that we don\u0027t need a special case\nin the strsignal test now).\n\nChange-Id: I1abe1681d516577afa8cd39c837ef12467f68dd2\n"
    },
    {
      "commit": "4566731772f3121c7c9b47bb6de44d5a9123fc11",
      "tree": "09bdf968c0dd0da2a99c607d0c9217ac0128e998",
      "parents": [
        "d4ae59dcf228cf602189c6d5e69fb65640b353e3",
        "b8425c549a0bfe08b01b5906b95603d8523c1b16"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Wed Apr 30 15:39:13 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Apr 30 15:39:14 2014 +0000"
      },
      "message": "Merge \"Adds quick_exit(3) and at_quick_exit(3) from freebsd\""
    },
    {
      "commit": "b8425c549a0bfe08b01b5906b95603d8523c1b16",
      "tree": "2efb8b0f66e170dff1cb9ff3a90001cc49ff9291",
      "parents": [
        "85e780d0557643a81c4a33b3bc5d3806ef9d78e3"
      ],
      "author": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Apr 29 17:49:06 2014 -0700"
      },
      "committer": {
        "name": "Dan Albert",
        "email": "danalbert@google.com",
        "time": "Tue Apr 29 19:17:00 2014 -0700"
      },
      "message": "Adds quick_exit(3) and at_quick_exit(3) from freebsd\n\nChange-Id: I4fe88abd8f7b8aa45e58aeb2529d59a8d555d338\n"
    },
    {
      "commit": "94336d8ecf795cfdde874a1e15977d68cfc7afc1",
      "tree": "771d43bae670d516b6c90bef2fd39eb7df443dfa",
      "parents": [
        "85e780d0557643a81c4a33b3bc5d3806ef9d78e3"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 29 17:39:29 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 29 17:39:29 2014 -0700"
      },
      "message": "Switch to OpenBSD stdio wide printf functions.\n\nChange-Id: Icf4f8685d021ec6b7482ca1cc021ce8184098e4a\n"
    },
    {
      "commit": "c932225e1061dc57fc4bf2d6203d9737f4f989fa",
      "tree": "706ee20cd230b2f278e0756ef3d4500cbe8039e2",
      "parents": [
        "c19c8e6f7125984d04c9e4e05ac130b43d1cd13c"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 29 17:08:03 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 29 17:08:03 2014 -0700"
      },
      "message": "Switch to OpenBSD stdio wide get/put functions.\n\nChange-Id: I71f8769cdea874e55d397ca7682d9d4e659d3dcb\n"
    },
    {
      "commit": "01ae00f3170ad0e36c1657f6ff8c89dfa730fd37",
      "tree": "ad9cd6e6b1ee5b01dcc03f09495ee786ea0a12ec",
      "parents": [
        "c6e563c87a7d8329607bccbc5c4a61c4e1180507"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 29 16:28:56 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 29 16:28:56 2014 -0700"
      },
      "message": "Switch to the OpenBSD implementations of the wide scanf functions.\n\nThis also gets us the C99 wcstoimax and wcstoumax, and a working fgetwc and\nungetwc, all of which are needed in the implementation.\n\nThis also brings several other files closer to upstream.\n\nChange-Id: I23b025a8237a6dbb9aa50d2a96765ea729a85579\n"
    },
    {
      "commit": "3d7a0d9b08ecab054b2dff8332507644de3690b0",
      "tree": "b6c4f27e3abdd6590a452c978048ae21d934da09",
      "parents": [
        "07bab525e24725aaacd71e7cc63dfc31d48ba8a7"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 29 14:46:56 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 29 14:53:11 2014 -0700"
      },
      "message": "Switch to the OpenBSD wcsto* functions.\n\nThis replaces a partial set of non-functional functions with a complete\nset of functions, all of which actually work.\n\nThis requires us to implement mbsnrtowcs and wcsnrtombs which completes\nthe set of what we need for libc++.\n\nThe mbsnrtowcs is basically a copy \u0026 paste of wcsnrtombs, but I\u0027m going\nto go straight to looking at using the OpenBSD UTF-8 implementation rather\nthan keep polishing our home-grown turd.\n\n(This patch also opportunistically switches us over to upstream btowc,\nmbrlen, and wctob, since they\u0027re all trivially expressed in terms of\nother functions.)\n\nChange-Id: I0f81443840de0f1aa73b96f0b51988976793a323\n"
    },
    {
      "commit": "0a5e26da1eae6b75a89695faf2e057c5c4717721",
      "tree": "6acf926417ef08935bfc581dc9ebadffaccdc0e8",
      "parents": [
        "0fd2e87a0cac56f772fe6fac4cd32de8a656a406"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 28 17:51:13 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 28 17:51:13 2014 -0700"
      },
      "message": "Add mbtowc and fix mbrtowc.\n\nChange-Id: I48786cd82587e61188d40f6fd6e11ac05e857ae9\n"
    },
    {
      "commit": "d299bcfdad959a3a0adf1683605b15a1c3b3ab66",
      "tree": "64549438175087f42b296e1b3143847666eb309c",
      "parents": [
        "3ac3f3fd0cab7b4ace8e15fd90ea869b26449df5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 28 16:28:51 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 28 16:46:24 2014 -0700"
      },
      "message": "Replace our broken wcswcs with the working upstream one.\n\nChange-Id: I2952684df5674d10f0564d92c2cd42597725c0e3\n"
    },
    {
      "commit": "329103d3e2f42d3e35a060c3e0d326d6476eb2ef",
      "tree": "0624fa58c29f43ffe405be7fa47a73f85ad29fae",
      "parents": [
        "f2dc7d17196de9904df67f21aad1525b8568a705"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Apr 25 16:55:04 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Apr 25 21:51:26 2014 -0700"
      },
      "message": "Don\u0027t use so much stack in tzcode.\n\nBug: 14313703\nBug: https://code.google.com/p/android/issues/detail?id\u003d61130\nChange-Id: Id9b240fce20d4a6f2660792070e02b2b5f287655\n"
    },
    {
      "commit": "533dde4dbf87d6615952be3654fc74e5ff2e1003",
      "tree": "1322327db26b0dcce421e891bbe10231cde75bcb",
      "parents": [
        "eff450ff45170ff17f17b7ceb26f54b858c39238"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Apr 25 18:27:38 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Apr 25 19:38:33 2014 -0700"
      },
      "message": "Fix brk/sbrk error checking.\n\nNote that the kernel returns the current break on error or if the requested\nbreak is smaller than the minimum break, or the new break. I don\u0027t know where\nwe got the idea that the kernel could return -1.\n\nAlso optimizes the query case.\n\nAlso hides an accidentally-exported symbol for LP64.\n\nChange-Id: I0fd6b8b14ddf1ae82935c0c3fc610da5cc74932e\n"
    },
    {
      "commit": "f2aeca505cb5b85528981c46e0285ff3a7a70836",
      "tree": "50ddc490639bbb7caca3eb4eaae250133b8cc871",
      "parents": [
        "690401db7a57cc6794129d9a2430279d55149251",
        "fbb46a0c9a5edf318f95a4f643979a7a02dfd89c"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Apr 24 16:40:50 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 24 16:40:50 2014 +0000"
      },
      "message": "Merge \"Remove an unsed include dir\""
    },
    {
      "commit": "fbb46a0c9a5edf318f95a4f643979a7a02dfd89c",
      "tree": "ca9807049aa29a22e8726d1367c5d0649e8a7711",
      "parents": [
        "4b7c4f886fae05a825009fce5aa624294356e373"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Apr 24 17:28:05 2014 +0100"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Apr 24 17:40:06 2014 +0100"
      },
      "message": "Remove an unsed include dir\n\nChange-Id: I05aa1e7e0639a5ec5576bf7646f35d2e5b157c09\n"
    },
    {
      "commit": "690401db7a57cc6794129d9a2430279d55149251",
      "tree": "52b7d5ffca954527326f92b8e4c1246001bd8a0e",
      "parents": [
        "477d14b09202db5c009005b622fdcdefd780b955",
        "4b7c4f886fae05a825009fce5aa624294356e373"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Apr 24 16:29:49 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Thu Apr 24 16:29:50 2014 +0000"
      },
      "message": "Merge \"Removed non-existing include dir\""
    },
    {
      "commit": "4b7c4f886fae05a825009fce5aa624294356e373",
      "tree": "94408a0f1a212b9f6f2a8ddbc9ca01c8e7f4da60",
      "parents": [
        "26c2bb84dd5cbd9ab43a5f0ebc2635bc3b64be3d"
      ],
      "author": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Apr 24 17:17:02 2014 +0100"
      },
      "committer": {
        "name": "Calin Juravle",
        "email": "calin@google.com",
        "time": "Thu Apr 24 17:17:02 2014 +0100"
      },
      "message": "Removed non-existing include dir\n\nChange-Id: I3e00a8471e6d94f596a34bdfdb26a0caba23dd82\n"
    },
    {
      "commit": "532ad903d2febc400e23d66c5f4d836d1e5f11fc",
      "tree": "e9d39a472150d1c4f4908486fd09375d06e1dbab",
      "parents": [
        "d8f8e9c59e5643ba0f0f0cee0de2d58e0683e54e",
        "58d9e280d459225aa8dc4533e883182b08215f7d"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 23 01:52:06 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Wed Apr 23 01:52:06 2014 +0000"
      },
      "message": "Merge \"Switch to the upstream OpenBSD getenv/putenv/setenv implementation.\""
    },
    {
      "commit": "eae5902e73dc4381811e08fd2334bf4a9300a928",
      "tree": "2ba628d1e74d046bd87ec060a68d0cc6d7b52100",
      "parents": [
        "635edbdf93a127da7db77d9cd174615734b4fb85"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 22 17:56:42 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 22 17:56:42 2014 -0700"
      },
      "message": "Remove strntoimax and strntoumax from the future.\n\nWhere do these turds come from?\n\nChange-Id: Id9ad2cc85c6128aa63b5d56ff2aa455bde39a5eb\n"
    },
    {
      "commit": "58d9e280d459225aa8dc4533e883182b08215f7d",
      "tree": "2c2771dfb1bf95012d13688f8f9142652ba0f9f8",
      "parents": [
        "635edbdf93a127da7db77d9cd174615734b4fb85"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 22 17:41:00 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 22 17:41:00 2014 -0700"
      },
      "message": "Switch to the upstream OpenBSD getenv/putenv/setenv implementation.\n\nThis fixes all the bugs found by the new tests.\n\nChange-Id: Id5a5f9f39a0620208bafa053f871a044725b4795\n"
    },
    {
      "commit": "8d77bce185d04c531bd9bf34d38e5cbbe644d3a3",
      "tree": "b68dd0db69716a52362f9db6c9a34d6a0aa4b102",
      "parents": [
        "8eaeaf50cbd769c7c9852621a422a4f0be1e08e5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 22 13:55:58 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 22 13:55:58 2014 -0700"
      },
      "message": "LP64 shouldn\u0027t include the non-standard \u003ctime64.h\u003e cruft.\n\nThis patch includes just enough to keep external/chromium_org building\nuntil they switch 64-bit Android over to using the regular non-Android code.\n\nChange-Id: Iecaf274efa46ae18a42d5e3439c5aa4f909177c1\n"
    },
    {
      "commit": "cce36c187896fb0d4bd36519c4b2e90c502137dc",
      "tree": "491e29d325600481b16a5712b88839f460c9ef14",
      "parents": [
        "c5eea6d386c23bde6f0400a8959ed21081d8365b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 22 12:32:49 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue Apr 22 12:32:49 2014 -0700"
      },
      "message": "Use -fvisibility\u003dhidden to build libc_gdtoa.\n\nBug: 12177745\nChange-Id: Ia4ac71e1a3a237e764c809cc591622f8952ed642\n"
    },
    {
      "commit": "d39f3f2c2e7fc73ddb019695f0df3417deef5bf4",
      "tree": "ab5ee52f07ce296396e190040ec6d1e5a8bb2474",
      "parents": [
        "44a98d5c12530cbd6b1b0779690e9952207c34bf"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 21 17:13:46 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Apr 21 17:13:46 2014 -0700"
      },
      "message": "Clean up and document our hacks for building BSD source.\n\nChange-Id: Ic591e22fa5b363bb68376b9f25814c0e5bd83fbf\n"
    },
    {
      "commit": "6d09ec3c2fc7bdb18eeb1706ef7c7f52db6095cc",
      "tree": "0247e583232b9075b68a5d3e1df7748ef4d52f3c",
      "parents": [
        "a9585aedbc89242b1fe8c2f9eec1212d9b206e88",
        "6a45fe98727f9ee39386d39fa18eea69c706bc9e"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Sat Apr 19 01:12:58 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Sat Apr 19 01:12:58 2014 +0000"
      },
      "message": "Merge \"Fix for libgcc compat generation script.\""
    },
    {
      "commit": "6a45fe98727f9ee39386d39fa18eea69c706bc9e",
      "tree": "8e675712429d1b78d47fd905d81ab051eb5650b0",
      "parents": [
        "0e351e4011bc98cacc3e37292bfb0e86c3a3bb5b"
      ],
      "author": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Apr 18 16:03:03 2014 -0700"
      },
      "committer": {
        "name": "Dmitriy Ivanov",
        "email": "dimitry@google.com",
        "time": "Fri Apr 18 17:34:20 2014 -0700"
      },
      "message": "Fix for libgcc compat generation script.\n\n  Taking into account possibility that external symbol\n  could have been an OBJECT instead of function.\n\n  b/14090368\n\nChange-Id: Iac173d2dd1309ed53024306578137c26b1dbbf15\n"
    },
    {
      "commit": "9d3c2dd11f5e796cd814cddc5b907494f859058e",
      "tree": "d125563b7dcadf16b9768c1cc88c8b5bf21b3489",
      "parents": [
        "b88da06580a22d9a1ee5a1c573c49e89207bc71b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Apr 18 13:13:04 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Apr 18 13:13:04 2014 -0700"
      },
      "message": "Switch to upstream OpenBSD fread/fvwrite.\n\nChange-Id: I3dc11083693bc8d99edc0cbcc6f70dc9e5dc6565\n"
    },
    {
      "commit": "b88da06580a22d9a1ee5a1c573c49e89207bc71b",
      "tree": "5aa36c7c16cac9672a85a4b071703ee8952fe09e",
      "parents": [
        "9e94ea5c112a26af5cfc778983e4d5ca692947c0",
        "0549371bd74ba7c7a5a16c2a7d6cc17dbe0e6f97"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Apr 18 18:19:23 2014 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Fri Apr 18 18:19:23 2014 +0000"
      },
      "message": "Merge \"Upgrade to current vfprintf.\""
    },
    {
      "commit": "f3c73901cb5ca4de2651151cf2c65b31a729466e",
      "tree": "0a5f3ba73342782ee188f914c8f60f337c2af7d6",
      "parents": [
        "0e351e4011bc98cacc3e37292bfb0e86c3a3bb5b"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Apr 18 10:29:16 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri Apr 18 10:29:16 2014 -0700"
      },
      "message": "Upgrade our \u003cctype.h\u003e implementation to OpenBSD head.\n\nAdding the perfunctory \u003cctype.h\u003e tests showed that we\u0027d accidentally\ndropped several symbols. This puts everything back in its proper place\nand switches us to upstream head at the same time.\n\nChange-Id: Ib527ad280c9baded81e667fa598698526d93e66f\n"
    },
    {
      "commit": "0549371bd74ba7c7a5a16c2a7d6cc17dbe0e6f97",
      "tree": "abc888f1515ccb74452a81472af0630a40c2d0b3",
      "parents": [
        "8da69a25b7840db23846d4bb303ef84a1775c1e1"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Apr 17 17:30:03 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Apr 17 17:30:03 2014 -0700"
      },
      "message": "Upgrade to current vfprintf.\n\nThis gets us various bug fixes and missing C99 functionality.\n\nBug: https://code.google.com/p/android/issues/detail?id\u003d64886\nChange-Id: Ie9f8ac569e9b5eec1e4a1faacfe2c21662eaf895\n"
    },
    {
      "commit": "4bd97cee28dd815fff54fc97560be60d566c1fa5",
      "tree": "f337de53e57aee78ad4e574c652fdeee679630b6",
      "parents": [
        "26c2bb84dd5cbd9ab43a5f0ebc2635bc3b64be3d"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Apr 10 17:48:14 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Apr 16 15:15:52 2014 -0700"
      },
      "message": "Switch to gdtoa.\n\nThis gives us a real strtold for LP64 and fixes various LP64\nbugs.\n\nBug: 13563801\nChange-Id: I277858d718ee746e136b6b6308a495ba50dfa488\n"
    }
  ],
  "next": "02c78a386739a8a2b3007efeb00a9ca04132100a"
}
