)]}'
{
  "commit": "6b028ae747f94bd9201f71690a9aa7c0ad585f5f",
  "tree": "8a0a53597dd826f571cb3b6f59a3f582ba2b1994",
  "parents": [
    "2f7efdb7a0f3ad0923d61290534b37c6c8351cc8"
  ],
  "author": {
    "name": "Alex Vakulenko",
    "email": "avakulenko@chromium.org",
    "time": "Fri May 29 09:38:59 2015 -0700"
  },
  "committer": {
    "name": "ChromeOS Commit Bot",
    "email": "chromeos-commit-bot@chromium.org",
    "time": "Fri May 29 19:19:55 2015 +0000"
  },
  "message": "buffet: Fix failed XMPP authorization issue\n\nRight now, if XMPP notification channel is created early enough before\nbuffet was able to refresh the access token, XMPP might have invalid\nor outdated credentials and XMPP SASL handshake would fail with\n\"not authorized\" problem. Current code just retries the connection\nattempt, but, sadly, using the same invalid credentials, which goes\ninto infinte loop of failed attempts.\n\nFixed the problem by making sure that XMPP authorization error causes\naccess token refresh and if authorization error occurrs, XMPP connection\nwill not be re-established until we get a new access token.\n\nBUG\u003dbrillo:1174\nTEST\u003d`FEATURES\u003dtest emerge-link buffet`\n\nChange-Id: Ieebfff26f4d06524819b2a5819f468e179cd2d6f\nReviewed-on: https://chromium-review.googlesource.com/273979\nTrybot-Ready: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\nTested-by: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\nReviewed-by: Vitaly Buka \u003cvitalybuka@chromium.org\u003e\nCommit-Queue: Alex Vakulenko \u003cavakulenko@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "bd999176189b82f4d906a90a60843b30c86f1869",
      "old_mode": 33188,
      "old_path": "buffet/device_registration_info.cc",
      "new_id": "3dd5864f8c2a9bb858925cb6c5cd92fdca14507f",
      "new_mode": 33188,
      "new_path": "buffet/device_registration_info.cc"
    },
    {
      "type": "modify",
      "old_id": "f8c22921f60530dd33a99c140d96afbb16af470e",
      "old_mode": 33188,
      "old_path": "buffet/device_registration_info.h",
      "new_id": "9e8a8b05719b9b7d90bc832c2b2ed4f8eb13ef1a",
      "new_mode": 33188,
      "new_path": "buffet/device_registration_info.h"
    },
    {
      "type": "modify",
      "old_id": "ab33dd20a4bf44b24588d1517cd065cf27ed22f0",
      "old_mode": 33188,
      "old_path": "buffet/notification/notification_channel.h",
      "new_id": "45267ded2c5fca19863175128c7ae713edc9b5a5",
      "new_mode": 33188,
      "new_path": "buffet/notification/notification_channel.h"
    },
    {
      "type": "modify",
      "old_id": "78e352fe2f3d2f4d0f3ff88c6095234fcf96619e",
      "old_mode": 33188,
      "old_path": "buffet/notification/pull_channel.cc",
      "new_id": "31726456711d4a2c3544548d905018a3b767e195",
      "new_mode": 33188,
      "new_path": "buffet/notification/pull_channel.cc"
    },
    {
      "type": "modify",
      "old_id": "fe89d40f5293a637ee4a229e2d6040960e22ac98",
      "old_mode": 33188,
      "old_path": "buffet/notification/pull_channel.h",
      "new_id": "d1b993ccb91270d3ccfbfaefb98f4f72c3aacea1",
      "new_mode": 33188,
      "new_path": "buffet/notification/pull_channel.h"
    },
    {
      "type": "modify",
      "old_id": "e2839c5211ef4680cb6adaa3cd21aa198ef6397c",
      "old_mode": 33188,
      "old_path": "buffet/notification/xmpp_channel.cc",
      "new_id": "3ef79756a8d0c68d33b128390feea907b97362c8",
      "new_mode": 33188,
      "new_path": "buffet/notification/xmpp_channel.cc"
    },
    {
      "type": "modify",
      "old_id": "73daee3289fba17c8c20a50e26865737f1b03229",
      "old_mode": 33188,
      "old_path": "buffet/notification/xmpp_channel.h",
      "new_id": "d83df480723643e464d04d19df949bf26beeae46",
      "new_mode": 33188,
      "new_path": "buffet/notification/xmpp_channel.h"
    }
  ]
}
