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): |
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
- Install ABP.
- 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: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
comment:5 Changed on 05/10/2018 at 01:39:28 PM by abpbot
A commit referencing this issue has landed:
Issue 6655 - Shortened dataCorrupted parameter in query string of uninstall page
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
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).