Last Comment Bug 684773 - Unpin all tabs earlier when restoring a session in overwriting mode
: Unpin all tabs earlier when restoring a session in overwriting mode
Status: RESOLVED FIXED
:
Product: Firefox
Classification: Client Software
Component: Session Restore (show other bugs)
: Trunk
: All All
: -- normal (vote)
: Firefox 9
Assigned To: ithinc
:
Mentors:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2011-09-05 18:29 PDT by ithinc
Modified: 2011-09-22 17:32 PDT (History)
3 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
patch (2.11 KB, patch)
2011-09-17 07:45 PDT, ithinc
dietrich: review+
Details | Diff | Splinter Review

Description ithinc 2011-09-05 18:29:37 PDT
User Agent: Mozilla/5.0 (Windows NT 5.1; rv:6.0.1) Gecko/20100101 Firefox/6.0.1
Build ID: 20110830092941

Steps to reproduce:

http://mxr.mozilla.org/mozilla-central/source/browser/components/sessionstore/src/nsSessionStore.js#2603

2604     // make sure that the selected tab won't be closed in order to
2605     // prevent unnecessary flickering
2606     if (aOverwriteTabs && tabbrowser.selectedTab._tPos >= newTabCount)
2607       tabbrowser.moveTabTo(tabbrowser.selectedTab, newTabCount - 1);
2608 
2609     // unpin all tabs to ensure they are not reordered in the next loop
2610     if (aOverwriteTabs) {
2611       for (let t = tabbrowser._numPinnedTabs - 1; t > -1; t--)
2612         tabbrowser.unpinTab(tabbrowser.tabs[t]);
2613     }




Expected results:

These two paragraphs need to be swapped, because the former moveTabTo cannot move an unpinned tab before a pinned tab, thus the purpose to prevent unnecessary flickering is missed.
Comment 1 ithinc 2011-09-17 07:45:39 PDT
Created attachment 560709 [details] [diff] [review]
patch
Comment 2 Dietrich Ayala (:dietrich) 2011-09-19 13:52:53 PDT
Comment on attachment 560709 [details] [diff] [review]
patch

hah, nice catch. r=me, assuming you've run the test suite or have try results showing no regressions from this.
Comment 3 Ed Morley [:emorley] 2011-09-22 04:39:45 PDT
Didn't apply cleanly to inbound tip, but have fixed locally to save a back and forth. Now in my queue with a few other bits that are being sent to try first and then onto inbound.

To save time for future patches, could you set your hgrc to include the author automatically & also add a commit message, along the lines of:
http://blog.bonardo.net/2010/06/22/so-youre-about-to-use-checkin-needed

Thanks :-)
Comment 5 Ed Morley [:emorley] 2011-09-22 17:32:59 PDT
https://hg.mozilla.org/mozilla-central/rev/154c98ef3947

Note You need to log in before you can comment on or make changes to this bug.