Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(39)

Issue 2202563003: Fix bug avi found. (Closed)

Created:
4 years, 4 months ago by ncarter (slow)
Modified:
4 years, 4 months ago
CC:
chromium-reviews
Base URL:
https://chromium.googlesource.com/chromium/src.git@tm_stl_util
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Fix bug avi found. BUG=

Patch Set 1 #

Total comments: 8
Unified diffs Side-by-side diffs Delta from patch set Stats (+11 lines, -8 lines) Patch
M chrome/browser/ui/task_manager/task_manager_table_model.cc View 1 chunk +11 lines, -8 lines 8 comments Download

Depends on Patchset:

Messages

Total messages: 6 (2 generated)
Avi (use Gerrit)
Folding this into https://codereview.chromium.org/2195873002
4 years, 4 months ago (2016-08-01 18:56:02 UTC) #2
afakhry
https://codereview.chromium.org/2202563003/diff/1/chrome/browser/ui/task_manager/task_manager_table_model.cc File chrome/browser/ui/task_manager/task_manager_table_model.cc (right): https://codereview.chromium.org/2202563003/diff/1/chrome/browser/ui/task_manager/task_manager_table_model.cc#newcode565 chrome/browser/ui/task_manager/task_manager_table_model.cc:565: base::ProcessId process_id = const https://codereview.chromium.org/2202563003/diff/1/chrome/browser/ui/task_manager/task_manager_table_model.cc#newcode571 chrome/browser/ui/task_manager/task_manager_table_model.cc:571: i--; ++i? https://codereview.chromium.org/2202563003/diff/1/chrome/browser/ui/task_manager/task_manager_table_model.cc#newcode575 ...
4 years, 4 months ago (2016-08-01 20:53:54 UTC) #4
Avi (use Gerrit)
https://codereview.chromium.org/2202563003/diff/1/chrome/browser/ui/task_manager/task_manager_table_model.cc File chrome/browser/ui/task_manager/task_manager_table_model.cc (right): https://codereview.chromium.org/2202563003/diff/1/chrome/browser/ui/task_manager/task_manager_table_model.cc#newcode571 chrome/browser/ui/task_manager/task_manager_table_model.cc:571: i--; On 2016/08/01 20:53:53, afakhry wrote: > ++i? --i? ...
4 years, 4 months ago (2016-08-01 20:57:39 UTC) #5
afakhry
4 years, 4 months ago (2016-08-01 21:02:59 UTC) #6
Message was sent while issue was closed.
https://codereview.chromium.org/2202563003/diff/1/chrome/browser/ui/task_mana...
File chrome/browser/ui/task_manager/task_manager_table_model.cc (right):

https://codereview.chromium.org/2202563003/diff/1/chrome/browser/ui/task_mana...
chrome/browser/ui/task_manager/task_manager_table_model.cc:571: i--;
On 2016/08/01 20:57:39, Avi wrote:
> On 2016/08/01 20:53:53, afakhry wrote:
> > ++i?
> 
> --i?

Oops, yes, sorry! :)

https://codereview.chromium.org/2202563003/diff/1/chrome/browser/ui/task_mana...
chrome/browser/ui/task_manager/task_manager_table_model.cc:578: *out_length =
limit - i;
On 2016/08/01 20:57:39, Avi wrote:
> On 2016/08/01 20:53:53, afakhry wrote:
> > You can ignore the following: :D
> > 
> > Hmmm, that's a very robust and cool fix! But remember Sean Parent? ;)
> > 
> > What you're really trying to do is search forward and backward for the first
> > task not on the same proc, right?
> > 
> >   const base::ProcessId process_id =
> >       observed_task_manager()->GetProcessId(tasks_[row_index]);
> >   auto not_same_proc_pred = [this, process_id](TaskId id) {
> >     return process_id != observed_task_manager()->GetProcessId(id);
> >   };
> > 
> >   using iter_t = std::vector<TaskId>::iterator;
> >   iter_t row_iter = tasks_.begin() + row_index;
> >   *out_start =
> >       tasks_.rend() - std::find_if(std::reverse_iterator<iter_t>(row_iter),
> >                                    tasks_.rend(),
> >                                    not_same_proc_pred);
> >   auto end = std::find_if(++row_iter, tasks_.end(), not_same_proc_pred);
> >   *out_length = end - (tasks_.begin() + *out_start);
> 
> Yes, I actually thought of Sean's talk. I searched in <algorithm> for this
kind
> of thing, but the closest thing was equal_range and that required a sorted
span.
> By the time you set up two different find_ifs like you did, it didn't feel
like
> it was worth the hassle.

It's certainly not worth the hassle, that's why I said you can ignore :)

Powered by Google App Engine
This is Rietveld 408576698