Opened on 05/10/2018 at 12:01:26 PM

Closed on 05/10/2018 at 01:40:28 PM

Last modified on 05/10/2018 at 09:55:09 PM

#6655 closed defect (fixed)

"setUninstallURL: String must not be more than 255 characters long." exception

Reported by: Ross Assignee: sebastian
Priority: P1 Milestone: Adblock-Plus-3.1-for-Chrome-Opera-Firefox
Module: Platform Keywords:
Cc: sebastian, kzar Blocked By:
Blocking: Platform: Chrome
Ready: yes Confidential: no
Tester: Ross Verified working: yes
Review URL(s):

https://codereview.adblockplus.org/29777640

Description (last modified by Ross)

Environment

ABP 3.0.4.2041
Chrome 66 / Windows 7

Could not reproduce in Chrome 49.
Could not reproduce in Firefox 59.

How to reproduce

  1. Install ABP.
  2. Open background_page console.

Observed behaviour

The following exceptions appears in the console after install. On uninstall the uninstall page is not displayed.

Uncaught (in promise) Error: Invalid value for argument 1. String must not be more than 255 characters long.
    at validate (extensions::schemaUtils:34:13)
    at Object.normalizeArgumentsAndValidate (extensions::schemaUtils:119:3)
    at Object.<anonymous> (extensions::binding:363:30)
    at Object.value [as setUninstallURL] (chrome-extension://ldcecbkkoecffmfljeihcmifjjdoepkn/polyfill.js:106:30)
    at Object.exports.setUninstallURL (chrome-extension://ldcecbkkoecffmfljeihcmifjjdoepkn/lib/adblockplus.js:7765:19)
    at Promise.all.then.then.then.then (chrome-extension://ldcecbkkoecffmfljeihcmifjjdoepkn/lib/adblockplus.js:5743:41)
Error in event handler for storage.onChanged: Error: Invalid value for argument 1. String must not be more than 255 characters long.
    at Object.value [as setUninstallURL] (chrome-extension://ldcecbkkoecffmfljeihcmifjjdoepkn/polyfill.js:106:30)
    at exports.setUninstallURL (chrome-extension://ldcecbkkoecffmfljeihcmifjjdoepkn/lib/adblockplus.js:7765:19)
    at exports.EventEmitter.emit (chrome-extension://ldcecbkkoecffmfljeihcmifjjdoepkn/lib/adblockplus.js:4625:7)
    at browser.storage.onChanged.addListener.changes (chrome-extension://ldcecbkkoecffmfljeihcmifjjdoepkn/lib/adblockplus.js:1641:24)

Expected behaviour

No exceptions in the background console. The uninstall page to work as expected.

Attachments (0)

Change History (7)

comment:1 Changed on 05/10/2018 at 12:08:10 PM by Ross

  • Description modified (diff)

comment:2 Changed on 05/10/2018 at 12:17:46 PM by sebastian

  • Owner set to sebastian
  • Priority changed from Unknown to P1
  • Ready set

comment:3 Changed on 05/10/2018 at 12:42:26 PM by sebastian

  • Review URL(s) modified (diff)
  • Status changed from new to reviewing

comment:4 Changed on 05/10/2018 at 12:48:26 PM by sebastian

This is caused by the new dataCorrupted parameter added in #6599. It can only be reproduced with the devbuilds from the Web Store because of the additional 5 characters in the version number (indicating the build number), causing the length of the uninstall URL to reach 256 characters.

For now, I'm just going to rename the parameter to corrupted. But we might want to consider to change all parameters to much shorter aliases (if we ever want to add new parameters in the future).

Last edited on 05/10/2018 at 12:53:02 PM by sebastian

comment:5 Changed on 05/10/2018 at 01:39:28 PM by abpbot

comment:6 Changed on 05/10/2018 at 01:40:28 PM by sebastian

  • Milestone set to Adblock-Plus-3.1-for-Chrome-Opera-Firefox
  • Resolution set to fixed
  • Status changed from reviewing to closed

comment:7 Changed on 05/10/2018 at 09:55:09 PM by Ross

  • Tester changed from Unknown to Ross
  • Verified working set

Fixed. Uninstall page now works again in Chrome 66 (and still works in other browsers).

ABP 3.0.4.2042
Firefox 59 / 55 / 51 / Windows 10
Chrome 66 / 58 / 49 / Windows 7
Opera 52 / 45 / 36 / Windows 10

Add Comment

Modify Ticket

Change Properties
Action
as closed .
The resolution will be deleted. Next status will be 'reopened'.
to The owner will be changed from sebastian.
 
Note: See TracTickets for help on using tickets.