summaryrefslogtreecommitdiffstats
path: root/chrome/browser/task_manager
diff options
context:
space:
mode:
authoryoshiki@chromium.org <yoshiki@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-14 19:41:36 +0000
committeryoshiki@chromium.org <yoshiki@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-14 19:41:36 +0000
commit28989c31a99afe1e2debfdc02f8f30a44858efb0 (patch)
treec47b54f252346f0dd9c907f149981bee1d4215df /chrome/browser/task_manager
parentbfc93569b87aeaa886b50c8aa9391036c82e9e76 (diff)
downloadchromium_src-28989c31a99afe1e2debfdc02f8f30a44858efb0.zip
chromium_src-28989c31a99afe1e2debfdc02f8f30a44858efb0.tar.gz
chromium_src-28989c31a99afe1e2debfdc02f8f30a44858efb0.tar.bz2
WebUI Task manager: prevent to kill the wrong process or none
Use the unique_id to determine the process instead of the selected index. BUG=chromium-os:23739 TEST=manual on chromium-os(aura) on Linux Review URL: http://codereview.chromium.org/8932003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@114479 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/task_manager')
-rw-r--r--chrome/browser/task_manager/task_manager.cc9
-rw-r--r--chrome/browser/task_manager/task_manager.h3
2 files changed, 12 insertions, 0 deletions
diff --git a/chrome/browser/task_manager/task_manager.cc b/chrome/browser/task_manager/task_manager.cc
index 063b586..cb14d7f 100644
--- a/chrome/browser/task_manager/task_manager.cc
+++ b/chrome/browser/task_manager/task_manager.cc
@@ -125,6 +125,15 @@ int TaskManagerModel::GetResourceUniqueId(int index) const {
return resources_[index]->get_unique_id();
}
+int TaskManagerModel::GetResourceIndexByUniqueId(const int unique_id) const {
+ for (int resource_index = 0; resource_index < ResourceCount();
+ ++resource_index) {
+ if (GetResourceUniqueId(resource_index) == unique_id)
+ return resource_index;
+ }
+ return -1;
+}
+
string16 TaskManagerModel::GetResourceTitle(int index) const {
CHECK_LT(index, ResourceCount());
return resources_[index]->GetTitle();
diff --git a/chrome/browser/task_manager/task_manager.h b/chrome/browser/task_manager/task_manager.h
index 8c8e101..e3686fb 100644
--- a/chrome/browser/task_manager/task_manager.h
+++ b/chrome/browser/task_manager/task_manager.h
@@ -273,6 +273,9 @@ class TaskManagerModel : public base::RefCountedThreadSafe<TaskManagerModel> {
double GetCPUUsage(int index) const;
int GetProcessId(int index) const;
int GetResourceUniqueId(int index) const;
+ // Returns the index of resource that has the given |unique_id|. Returns -1 if
+ // no resouce has the |unique_id|.
+ int GetResourceIndexByUniqueId(const int unique_id) const;
// Methods to return formatted resource information.
string16 GetResourceTitle(int index) const;