Chromium Code Reviews| Index: chrome/browser/resources/bookmark_manager/js/bmm.js |
| diff --git a/chrome/browser/resources/bookmark_manager/js/bmm.js b/chrome/browser/resources/bookmark_manager/js/bmm.js |
| index 8daf62cd720fded56fefc2f64486966d56809fc3..be8741db4d4d60db997d683a1bb671ce3728ae36 100644 |
| --- a/chrome/browser/resources/bookmark_manager/js/bmm.js |
| +++ b/chrome/browser/resources/bookmark_manager/js/bmm.js |
| @@ -41,8 +41,14 @@ cr.define('bmm', function() { |
| * @return {!Promise<!Array<!BookmarkTreeNode>>} . |
| */ |
| function getSubtreePromise(id, foldersOnly) { |
| - return new Promise(function(resolve) { |
| - chrome.bookmarkManagerPrivate.getSubtree(id, foldersOnly, resolve); |
| + return new Promise(function(resolve, reject) { |
| + chrome.bookmarkManagerPrivate.getSubtree(id, foldersOnly, function(node) { |
| + if (chrome.runtime.lastError) { |
| + reject(new Error(chrome.runtime.lastError.message)); |
| + return; |
| + } |
| + resolve(node); |
| + }); |
| }); |
| } |
| @@ -55,8 +61,13 @@ cr.define('bmm', function() { |
| function loadSubtree(id) { |
| if (!loadingPromises[id]) { |
| loadingPromises[id] = getSubtreePromise(id, false).then(function(nodes) { |
| - delete loadingPromises[id]; |
| return nodes && nodes[0]; |
| + }, function(error) { |
| + console.error(error.message); |
| + return; |
|
Bernhard Bauer
2015/04/30 16:19:52
The return statement is unnecessary.
Deepak
2015/04/30 16:22:42
Done.
|
| + }); |
| + loadingPromises[id].then(function() { |
| + delete loadingPromises[id]; |
| }); |
| } |
| return loadingPromises[id]; |