Race condition related to integration/install infobar

Bug #1068308 reported by Alexandre Abreu
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
WebApps: unity-chromium-extensions
Fix Released
High
Alexandre Abreu
unity-chromium-extension (Ubuntu)
Fix Released
High
Unassigned
Quantal
Fix Released
High
Unassigned

Bug Description

When browsing to a website for which a WebApp exists, an infobar appears to inform the user of the situation and propose an installation of the associated WebApp.

The issue appears when multiple tabs are involved and one selects another tab while the current one is loading webpage for which a WebApp is available (but not installed or authorized). The infobar appears in the environment of the proper tab, but the text is empty.

[Test Case]
- have more than one tab opened (with blank pages),
- in one of the tabs, go to a website that is supported by webapps (e.g. Twitter),
- immediately after (BEFORE the website loads), switch to the other tab (Ctrl+Tab),
- wait a bit for the original website to complete loading,
- when one comes back on the loaded tab, an infobar should have popup but with NO text on it,

[Regression Risks]
The code deals with the infobar that the user sees when a WebApp is about to be installed or needs authorization. A malfunction might prevent WebApps from being installed or no installation message could be displayed.

Technical:
--------------

There is a race condition in the infobar javascript that incorrectly uses a chrome.extension.getSelected function to get its current tab is a ask the background page for its text (since the infobar cannot receive init() data and has to get it from somewhere). The tab request is asynchronous hence the timing sensitivity of the operation.

Related branches

Changed in unity-chromium-extension:
status: New → In Progress
status: In Progress → Fix Committed
description: updated
Changed in unity-chromium-extension (Ubuntu):
status: New → Confirmed
importance: Undecided → High
Changed in unity-chromium-extension (Ubuntu Quantal):
importance: Undecided → High
Changed in unity-chromium-extension:
status: Fix Committed → Fix Released
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package unity-chromium-extension - 2.4.4-0ubuntu1

---------------
unity-chromium-extension (2.4.4-0ubuntu1) raring; urgency=low

  * New upstream release.
    - No installation process triggered when a url matches more than one URL
      in the list of available apps (LP: #1078325)
    - Bypasses Same Origin Policy checks via toDataURL (LP: #1069817)
    - Extension options page is broken & does not work (LP: #1076452)
    - Race condition related to integration/install infobar (LP: #1068308)
    - WebApps Unity plugin for Chromium keeps crashing (LP: #1070433)
 -- Ken VanDine <email address hidden> Thu, 15 Nov 2012 11:21:16 -0500

Changed in unity-chromium-extension (Ubuntu):
status: Confirmed → Fix Released
Revision history for this message
Chris Halse Rogers (raof) wrote : Please test proposed package

Hello Alexandre, or anyone else affected,

Accepted unity-chromium-extension into quantal-proposed. The package will build now and be available at http://launchpad.net/ubuntu/+source/unity-chromium-extension/2.4.4-0ubuntu0.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please change the bug tag from verification-needed to verification-done. If it does not, change the tag to verification-failed. In either case, details of your testing will help us make a better decision.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance!

Changed in unity-chromium-extension (Ubuntu Quantal):
status: New → Fix Committed
tags: added: verification-needed
Revision history for this message
Brian Murray (brian-murray) wrote : [unity-chromium-extension/quantal] verification still needed

The fix for this bug has been awaiting testing feedback in the -proposed repository for quantal for more than 90 days. Please test this fix and update the bug appropriately with the results. In the event that the fix for this bug is still not verified 15 days from now, the package will be removed from the -proposed repository.

tags: added: removal-candidate
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package unity-chromium-extension - 2.4.4-0ubuntu0.2

---------------
unity-chromium-extension (2.4.4-0ubuntu0.2) quantal-security; urgency=low

  * New upstream release.
    - No installation process triggered when a url matches more than one URL
      in the list of available apps (LP: #1078325)
    - Bypasses Same Origin Policy checks via toDataURL (LP: #1069817)
    - Extension options page is broken & does not work (LP: #1076452)
    - Race condition related to integration/install infobar (LP: #1068308)
    - WebApps Unity plugin for Chromium keeps crashing (LP: #1070433)
 -- Ken VanDine <email address hidden> Thu, 15 Nov 2012 15:23:34 -0500

Changed in unity-chromium-extension (Ubuntu Quantal):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.