)]}'
{
  "commit": "6635ad9975e2df3ac42b2a95a40b4803628ff68a",
  "tree": "fcd4d7994438d3ef3ae1388b0ba5b3a361a348a8",
  "parents": [
    "a57398324d7b9ce8afc47fed8168be52977536f1"
  ],
  "author": {
    "name": "Sad Pencil",
    "email": "qh06@qq.com",
    "time": "Fri Feb 22 23:31:27 2019 +0000"
  },
  "committer": {
    "name": "Filippo Valsorda",
    "email": "filippo@golang.org",
    "time": "Fri Feb 22 23:45:11 2019 +0000"
  },
  "message": "bn256: fix String methods when g.p \u003d\u003d nil\n\nPreviously, when g.p \u003d\u003d nil, String() crashed. In other method like Add(),\na point with g.p \u003d\u003d nil is treated as an identity element.\n\nBesides, the following code is the only way to get an identity element\noutside the library: g :\u003d bn256.G1{}. In this situation, g.p \u003d\u003d nil.\n\nFor example, the following code will crash:\n\npackage main\n\nimport (\n\t\"fmt\"\n\t\"golang.org/x/crypto/bn256\"\n)\n\nfunc main() {\n\tg :\u003d bn256.G1{}\n\tfmt.Println(g.String())\n}\n\nChange-Id: Ied6f7c8197e7b79b0913c000a9cf1cf68f8188a9\nGitHub-Last-Rev: 23246486a982ea54d6023726e048c74f02089f25\nGitHub-Pull-Request: golang/crypto#75\nReviewed-on: https://go-review.googlesource.com/c/163118\nTryBot-Result: Gobot Gobot \u003cgobot@golang.org\u003e\nReviewed-by: Filippo Valsorda \u003cfilippo@golang.org\u003e\nRun-TryBot: Filippo Valsorda \u003cfilippo@golang.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b081c6a4ca3f0547c36b37374637351587c1f7f9",
      "old_mode": 33188,
      "old_path": "bn256/bn256.go",
      "new_id": "9c99fcdb5de4d8e2fdcd6322cb8a3796e9f9b056",
      "new_mode": 33188,
      "new_path": "bn256/bn256.go"
    }
  ]
}
