)]}'
{
  "log": [
    {
      "commit": "f6d2ca269603c16a3b3bd4a2306fb961a79ba92f",
      "tree": "66448aaaad2c8949c11c0f2bcc4f686544ff009c",
      "parents": [
        "1454ff2574f0bee9fb3646c9c6dd30443e0dbd38"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 27 21:23:36 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 27 21:23:36 2014 -0700"
      },
      "message": "Expose __srefill for LP64 until we can fix the NDK.\n\nThe LP64 has a duplicate copy of part of stdio, and relies\non bionic supplying this part. We should remove the hack from\nthe NDK, at least for LP64, and then revert this.\n\nBug: 15291317\nChange-Id: I75e06e130188ca0aeb9d50dfe3a3e48a1d3968b7\n"
    },
    {
      "commit": "aa50585d961fb2b0f6943399d90ca0ec734946a3",
      "tree": "3f6d24ed474c5d429846c1983f1741aa36c1cbfb",
      "parents": [
        "b3c75a1e8ffbf575c2a425b34fd67ff8077da299"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 27 11:22:39 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Tue May 27 11:22:39 2014 -0700"
      },
      "message": "Restore __srefill for LP32.\n\nThe NDK apparently includes an android_support.a library that\nrefers to __srefill in its copy of the vsnprintf implementation.\n\nBug: 15249361\nChange-Id: Ic2cf6f21290b3146c42fbe0624f5e4d54f6194b4\n"
    },
    {
      "commit": "35d90bb6ec9799e04dacaa4b3a4984de9dc4c7f2",
      "tree": "5f6eb7bdb70c9dd9fa39c7b82e344c2adb70d059",
      "parents": [
        "255789e4d12d95dbb8e34cfae7fdc58514843ba5"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sun May 25 10:38:25 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Sun May 25 10:38:25 2014 -0700"
      },
      "message": "Restore __srget and __swbuf for LP32.\n\nAnthony King \u003canthonydking@slimroms.net\u003e reports that for Grouper the\nNvidia GL blobs need access to __swbuf. This is because the old \u003cstdio.h\u003e\nhad inline getc and putc implementations that directly referred to these\nsymbols.\n\nChange-Id: I11a7b5550018ecc93d8f195c99857759669b2906\n"
    },
    {
      "commit": "2899de9b05f15e67966ed3d046709b48703a162a",
      "tree": "593a1f614b86d09b638398586d617addd4fdc3a4",
      "parents": [
        "ea7dc32080114af59789c119ca6aa4814426ea42"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu May 22 20:06:23 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu May 22 20:06:23 2014 -0700"
      },
      "message": "Hide various stdio implementation details.\n\nI\u0027ve left __sF exposed since that\u0027s how the OpenBSD stdin, stdout, stderr\nare implemented. Other BSDs and glibc use a separate global for each instead\nof an array.\n\nBug: 11156955\nChange-Id: I9f3d2d4314a8d4a78c3197b9acd9258820c5f150\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": "e2341d08fa4a4e0c22056c410fd34d3f93e06017",
      "tree": "9f690c9aa212dc1d3301b4a25a006e1362ac5151",
      "parents": [
        "e987803c35b472f378f81a37beb162ac86e01503"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Fri May 02 18:16:32 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon May 05 14:43:17 2014 -0700"
      },
      "message": "Disable %n in printf and vfwprintf.\n\nBug: 14492135\nChange-Id: If190bede29e5f68a65043ddbe8e878c660933d03\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": "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": "f2cea021ab2c6d7d7feeb40cca098aa132605876",
      "tree": "119daf06820264a62bf3290bbbf8839dcb0196e3",
      "parents": [
        "6ece7fc33a389ef9bcbe78a83a6633e4cb4e4743"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 13 14:54:53 2014 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Mar 13 14:54:53 2014 -0700"
      },
      "message": "Clean up \u003cstdio.h\u003e macros.\n\nAlso neuter __isthreaded.\n\nWe should come back to try to hide struct FILE\u0027s internals for LP64.\n\nBug: 3453512\nBug: 3453550\nChange-Id: I7e115329fb4579246a72fea367b9fc8cb6055d18\n"
    },
    {
      "commit": "1d13c64d781a87dfa3f01e5c179bfa36748786af",
      "tree": "f50fd074ebb7a749ff0bbb2069e3145cd67cd3ba",
      "parents": [
        "fc2ceae778afdcb2deee4abb5e2fc9b9904fa761"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Sep 23 16:02:39 2013 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Sep 23 16:02:39 2013 -0700"
      },
      "message": "Fix %hhd formats in the printf family.\n\nFound by adapting the simple unit tests for libc logging to test\nsnprintf too. Fix taken from upstream OpenBSD without updating\nthe rest of stdio.\n\nChange-Id: Ie339a8e9393a36080147aae4d6665118e5d93647\n"
    },
    {
      "commit": "61e699a133a4807fe878a6cb0d7190d7c96e21f8",
      "tree": "12dd46e7f8e5f7172a3fe0fd9075fa929cbb1001",
      "parents": [
        "5cde15eb17f4ddc0949c0cbd38a46e6c0bad7019"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jun 12 14:05:46 2013 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jun 12 14:14:53 2013 -0700"
      },
      "message": "Clean up abort.\n\n* A dlmalloc usage error shouldn\u0027t call abort(3) because we want to\n  cause a SIGSEGV by writing the address dlmalloc didn\u0027t like to an\n  address the kernel won\u0027t like, so that debuggerd will dump the\n  memory around the address that upset dlmalloc.\n\n* Switch to the simpler FreeBSD/NetBSD style of registering stdio\n  cleanup. Hopefully this will let us simplify more of the stdio\n  implementation.\n\n* Clear the stdio cleanup handler before we abort because of a dlmalloc\n  corruption error. This fixes the reported bug, where we\u0027d hang inside\n  dlmalloc because the stdio cleanup reentered dlmalloc.\n\nBug: 9301265\nChange-Id: Ief31b389455d6876e5a68f0f5429567d37277dbc\n"
    },
    {
      "commit": "f27b7fb0567a9cbb642be9d98298cb6668e7db39",
      "tree": "99a6559087e9fcb01aa78852e57054c4f0316b7a",
      "parents": [
        "dea13da3407873e4f3fec9ba1a04b4fdacea07f4"
      ],
      "author": {
        "name": "Hakan Kvist",
        "email": "hakan.kvist@sonymobile.com",
        "time": "Wed Oct 10 08:32:52 2012 +0200"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Nov 29 11:53:33 2012 -0800"
      },
      "message": "Define DEFFILEMODE and friends\n\nDefine the macros ACCESSPERMS, ALLPERMS and DEFFILEMODE.\nThese macros originates from BSD but has been available in glibc\nfor quite some time.\n\nChange-Id: I429cd30aa4e73f53b153ee7740070cebba166c57\n"
    },
    {
      "commit": "f582340a6a48588aa50da17e1620e8f91b146941",
      "tree": "d30c0ffb648b7a43ff469f89f05850f5008482ec",
      "parents": [
        "72f9a5c374bf559e9c69a62c1d95304f913ef6b2"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Sat Feb 12 07:13:44 2011 -0800"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Mon Feb 14 09:32:56 2011 -0800"
      },
      "message": "Fix the handle locking in stdio\n\nFix the handle locking in stdio to use flockfile/funlockfile\ninternally when and where required.  Macros in \u003cstdio.h\u003e are updated\nto automatically call the underlying functions when the process is\nthreaded to obtain the necessary locking.  A private mutex is added\nto protect __sglue, the internal list of FILE handles, and another\nto protect the one-time initialization.  Some routines in libc that\nuse getc() change to use getc_unlocked() as they\u0027re either protected\nby their own lock or aren\u0027t thread-safe routines anyway.\n\nBased on OpenBSD change by guenther@openbsd.org\nhttp://www.mail-archive.com/source-changes@cvs.openbsd.org/msg01015.html\n\nBug: 3446659\nChange-Id: Ie82116e358c541718d6709ec45ca6796be5a007b\n"
    },
    {
      "commit": "1dc9e472e19acfe6dc7f41e429236e7eef7ceda1",
      "tree": "3be0c520fae17689bbf5584e1136fb820caef26f",
      "parents": [
        "1767f908af327fa388b1c66883760ad851267013"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 19:28:35 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 19:28:35 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@135843\n"
    },
    {
      "commit": "1767f908af327fa388b1c66883760ad851267013",
      "tree": "4b825dc642cb6eb9a060e54bf8d69288fbee4904",
      "parents": [
        "a799b53f10e5a6fd51fef4436cfb7ec99836a516"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 18:28:13 2009 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 03 18:28:13 2009 -0800"
      },
      "message": "auto import from //depot/cupcake/@135843\n"
    },
    {
      "commit": "a27d2baa0c1a2ec70f47ea9199b1dd6762c8a349",
      "tree": "defd1cc07d16ad2f3b21154114e092d11c94c5bb",
      "parents": [],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Oct 21 07:00:00 2008 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Oct 21 07:00:00 2008 -0700"
      },
      "message": "Initial Contribution\n"
    }
  ]
}
