diff options
Diffstat (limited to 'chromium/chrome/browser/extensions/api/bookmarks/bookmarks_api.cc')
-rw-r--r-- | chromium/chrome/browser/extensions/api/bookmarks/bookmarks_api.cc | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/chromium/chrome/browser/extensions/api/bookmarks/bookmarks_api.cc b/chromium/chrome/browser/extensions/api/bookmarks/bookmarks_api.cc index 397e6f924bf..1e93c03bfd7 100644 --- a/chromium/chrome/browser/extensions/api/bookmarks/bookmarks_api.cc +++ b/chromium/chrome/browser/extensions/api/bookmarks/bookmarks_api.cc @@ -555,7 +555,7 @@ bool BookmarksSearchFunction::RunOnReady() { return true; } -bool BookmarksRemoveFunction::RunOnReady() { +bool BookmarksRemoveFunctionBase::RunOnReady() { if (!EditBookmarksEnabled()) return false; @@ -567,15 +567,21 @@ bool BookmarksRemoveFunction::RunOnReady() { if (!GetBookmarkIdAsInt64(params->id, &id)) return false; - bool recursive = false; - if (name() == BookmarksRemoveTreeFunction::function_name()) - recursive = true; - BookmarkModel* model = GetBookmarkModel(); ManagedBookmarkService* managed = GetManagedBookmarkService(); - if (!bookmark_api_helpers::RemoveNode(model, managed, id, recursive, &error_)) + if (!bookmark_api_helpers::RemoveNode(model, managed, id, is_recursive(), + &error_)) { return false; + } + + return true; +} + +bool BookmarksRemoveFunction::is_recursive() const { + return false; +} +bool BookmarksRemoveTreeFunction::is_recursive() const { return true; } |