)]}'
{
  "commit": "2198a64a7487aba036f71998ade8a6528070d32c",
  "tree": "6130ef502a8bca51a37fef1343a7c720b3359f99",
  "parents": [
    "20de03dae54e10271ffd308654dfb4a117f4789d"
  ],
  "author": {
    "name": "Julia Lawall",
    "email": "julia@diku.dk",
    "time": "Thu Aug 06 15:07:41 2009 -0700"
  },
  "committer": {
    "name": "Linus Torvalds",
    "email": "torvalds@linux-foundation.org",
    "time": "Fri Aug 07 10:39:56 2009 -0700"
  },
  "message": "drivers/mmc: correct error-handling code\n\nsdhci_alloc_host returns an ERR_PTR value in an error case instead of NULL.\n\nA simplified version of the semantic match that finds this problem is as\nfollows: (http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@match exists@\nexpression x, E;\nstatement S1, S2;\n@@\n\nx \u003d sdhci_alloc_host(...)\n... when !\u003d x \u003d E\n(\n*  if (x \u003d\u003d NULL || ...) S1 else S2\n|\n*  if (x \u003d\u003d NULL \u0026\u0026 ...) S1 else S2\n)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nAcked-by: Anton Vorontsov \u003cavorontsov@ru.mvista.com\u003e\nCc: Matt Fleming \u003cmatt@console-pimps.org\u003e\nCc: Ian Molton \u003cian@mnementh.co.uk\u003e\nCc: \"Roberto A. Foglietta\" \u003croberto.foglietta@gmail.com\u003e\nCc: Philip Langdale \u003cphilipl@overt.org\u003e\nCc: Pierre Ossman \u003cpierre@ossman.eu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "908844327db0ef3bb7dbf389d6d9e983a747ffe7",
      "old_mode": 33188,
      "old_path": "drivers/mmc/host/sdhci-of.c",
      "new_id": "1e8aa590bb39b0a5e650037f61647860fd2b3ec1",
      "new_mode": 33188,
      "new_path": "drivers/mmc/host/sdhci-of.c"
    }
  ]
}
