)]}'
{
  "commit": "52e3632ea603ef92757d5d0dedcd9fc8643445e3",
  "tree": "8ab96a99d898ada201b55ccb30fe7c0e6a10170f",
  "parents": [
    "607c268ef9a4675287e77f732071e426e62c2d86"
  ],
  "author": {
    "name": "Roel Kluin",
    "email": "roel.kluin@gmail.com",
    "time": "Mon Jun 22 18:41:56 2009 +0100"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@linux-foundation.org",
    "time": "Mon Jun 22 11:32:23 2009 -0700"
  },
  "message": "serial: fix off by one errors\n\nIn zs_console_putchar() occurs:\n\n\tif (zs_transmit_drain(zport, irq))\n\t\twrite_zsdata(zport, ch);\n\nHowever if in zs_transmit_drain() no empty Tx Buffer occurs, limit reaches\n-1 \u003d\u003e true, and the write still occurs.\n\nThis patch changes postfix to prefix decrements in this and similar\nfunctions to prevent similar mistakes in the future.  This decreases the\niterations with one but the chosen loop count was arbitrary anyway.\n\nIn sunhv limit reaches -1, not 0, so the test is off by one.\n\nSigned-off-by: Roel Kluin \u003croel.kluin@gmail.com\u003e\nAcked-by: David S. Miller \u003cdavem@davemloft.net\u003e\nAcked-by: Maciej W. Rozycki \u003cmacro@linux-mips.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Alan Cox \u003calan@linux.intel.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a4fb343a08da30de886425ec4e371310671a303b",
      "old_mode": 33188,
      "old_path": "drivers/serial/sb1250-duart.c",
      "new_id": "319e8b83f6be5b488e451c7dc4db7103e0ba8edb",
      "new_mode": 33188,
      "new_path": "drivers/serial/sb1250-duart.c"
    },
    {
      "type": "modify",
      "old_id": "a94a2ab4b5716cbb983d8d3d81e2d3e505dbc3e4",
      "old_mode": 33188,
      "old_path": "drivers/serial/sunhv.c",
      "new_id": "1df5325faab2605d9be2bdcd2bc470981049459c",
      "new_mode": 33188,
      "new_path": "drivers/serial/sunhv.c"
    },
    {
      "type": "modify",
      "old_id": "9e6a873f8203ec83f7965fe2711a026089c476fa",
      "old_mode": 33188,
      "old_path": "drivers/serial/zs.c",
      "new_id": "d8c2809b1ab616b7fc7209577218d6017fe6cea8",
      "new_mode": 33188,
      "new_path": "drivers/serial/zs.c"
    }
  ]
}
