)]}'
{
  "commit": "a8d9ca8f4ed7137e180cf99f38825f4756174c58",
  "tree": "9706993a635ba028a9ab4f13bb687207f4dc1223",
  "parents": [
    "90bbf0fb221de94e33ffd1e655baad81f07f9ee4"
  ],
  "author": {
    "name": "Sameer Agarwal",
    "email": "sameeragarwal@google.com",
    "time": "Thu Sep 05 22:08:57 2013 -0700"
  },
  "committer": {
    "name": "Keir Mierle",
    "email": "mierle@gmail.com",
    "time": "Sat Sep 07 16:45:22 2013 +0000"
  },
  "message": "Fix a bug in TrustRegionMinimizer.\n\nLocalParameterization::Plus is allowed to return false when for some\nreason the operation cannot be performed. Uptil now, this would\ncause the TrustRegionMinimizer to terminate with a numerical failure.\n\nThis is not correct behaviour. Just like CostFunction::Evaluate,\nreturning false from LocalParameterization::Plus should result\nin the current step to be rejected rather than the entire optimization\ncoming to a halt.\n\nLineSearchMinimizer has also been updated to use the same pattern.\n\nThanks to Michael Vitus for reporting this.\n\nChange-Id: I1351966bc6db3bf6cd46387b78d4e52a9df51696\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2cc89faf4c437a2e4e06c526e7b5137d94f67d46",
      "old_mode": 33188,
      "old_path": "internal/ceres/line_search_minimizer.cc",
      "new_id": "5533e20ad650e02dfd33d6df65a57076859ac8ec",
      "new_mode": 33188,
      "new_path": "internal/ceres/line_search_minimizer.cc"
    },
    {
      "type": "modify",
      "old_id": "03d6c8e6b9436d72a68989bb4ebedc04f4093df7",
      "old_mode": 33188,
      "old_path": "internal/ceres/trust_region_minimizer.cc",
      "new_id": "8e2bc67d278c3ead41f61e07f44e2089c80b5106",
      "new_mode": 33188,
      "new_path": "internal/ceres/trust_region_minimizer.cc"
    }
  ]
}
