)]}'
{
  "commit": "94b38bdb722052838eb0d940c05995b870db4ea0",
  "tree": "caa3e66b9f3395c55385c5e201ac5ad336b101ef",
  "parents": [
    "669713d43f8a014ba481265d4c58c3fe575527b4"
  ],
  "author": {
    "name": "Ray Lai",
    "email": "ray@raylai.com",
    "time": "Wed May 18 14:06:20 2016 +0800"
  },
  "committer": {
    "name": "Gleydson Soares",
    "email": "gsoares@gmail.com",
    "time": "Sat Apr 08 00:06:42 2017 +0000"
  },
  "message": "libdraw: replace hand-rolled realloc, preventing buffer overflow.\n\nThe original buffer is f-\u003ensubf*sizeof *subf bytes (oldsize) large.\nOnce it\u0027s full, a new buffer of (f-\u003ensubf+DSUBF)*sizeof *subf\n(newsize) is mallocated.  Unfortunately memmove() reads (newsize)\nbytes from the original (oldsize) buffer, causing a buffer overflow.\n\nBy switching to realloc(), we don\u0027t need to do buffer size calculation,\nmemmoving, and freeing of the original buffer.\n\nChange-Id: Ibf85bc06abe1c8275b11acb1d7d346a14291d2cd\nReviewed-on: https://plan9port-review.googlesource.com/1520\nReviewed-by: Gleydson Soares \u003cgsoares@gmail.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "8370606e1f0eeafbc4df22d562572e82463bd961",
      "old_mode": 33188,
      "old_path": "src/libdraw/font.c",
      "new_id": "13bcd267e8e88efeef9877eb7e3cedbcadc199ab",
      "new_mode": 33188,
      "new_path": "src/libdraw/font.c"
    }
  ]
}
