Merge lp:~chihchun/unity-scopes-shell/lp1535377 into lp:unity-scopes-shell
| Status: | Rejected |
|---|---|
| Rejected by: | Paweł Stołowski on 2016-02-16 |
| Proposed branch: | lp:~chihchun/unity-scopes-shell/lp1535377 |
| Merge into: | lp:unity-scopes-shell |
| Diff against target: |
15 lines (+3/-2) 1 file modified
src/Unity/resultsmodel.cpp (+3/-2) |
| To merge this branch: | bzr merge lp:~chihchun/unity-scopes-shell/lp1535377 |
| Related bugs: |
| Reviewer | Review Type | Date Requested | Status |
|---|---|---|---|
| Paweł Stołowski | 2016-02-04 | Disapprove on 2016-02-16 | |
| PS Jenkins bot | continuous-integration | Needs Fixing on 2016-02-04 | |
|
Review via email:
|
|||
| Paweł Stołowski (stolowski) wrote : | # |
Thanks for looking into this. As discussed on IRC though, I think that while your fix likely avoids the crash, it probably hides the real problem at the same time, plus I think that getting rid of "row + (row > oldPos ? 1 : 0)" in the beginMoveRows notification for the qml view will cause subtle issues.
It's expected and absolutely fine that the size of new results list is different than current list; as the new results list is iterated in the 0..results.count() loop, new (previously unseen) results are inserted into m_lists (so it grows) and it's guaranteed that any moves happen only in the 0..row range, which is valid for m_results list. That's the theory at least, I cannot exclude a bug in this implementation.
I'm currently working on a branch which has a bunch of stress tests for model updates (it wasn't part of the existing code, because I started working on them just recently for some other changes in that area) and am trying to come up with a case that would fail with existing implementation, giving me the opportunity to better understand what happens.
| Paweł Stołowski (stolowski) wrote : | # |
Rejecting as I think the other MP is the proper fix. My MP is currently in silo 80 and confirmed by Rex to fix the issue.

FAILED: Continuous integration, rev:282 jenkins. qa.ubuntu. com/job/ unity-scopes- shell-ci/ 408/ jenkins. qa.ubuntu. com/job/ unity-scopes- shell-vivid- amd64-ci/ 102 jenkins. qa.ubuntu. com/job/ unity-scopes- shell-vivid- armhf-ci/ 102 jenkins. qa.ubuntu. com/job/ unity-scopes- shell-vivid- armhf-ci/ 102/artifact/ work/output/ *zip*/output. zip jenkins. qa.ubuntu. com/job/ unity-scopes- shell-vivid- i386-ci/ 102 jenkins. qa.ubuntu. com/job/ unity-scopes- shell-wily- amd64-ci/ 65/console jenkins. qa.ubuntu. com/job/ unity-scopes- shell-wily- armhf-ci/ 65/console jenkins. qa.ubuntu. com/job/ unity-scopes- shell-wily- i386-ci/ 65/console
http://
Executed test runs:
SUCCESS: http://
SUCCESS: http://
deb: http://
SUCCESS: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild: s-jenkins. ubuntu- ci:8080/ job/unity- scopes- shell-ci/ 408/rebuild
http://