Opened 12 months ago

Last modified 9 months ago

#7153 closed defect

setUninstallURL: String must not be more than 255 characters long. — at Initial Version

Reported by: greiner Assignee:
Priority: P2 Milestone: Adblock-Plus-3.5-for-Chrome-Opera-Firefox
Module: Platform Keywords:
Cc: sebastian, kzar, sporz, Kirill Blocked By:
Blocking: Platform: Unknown / Cross platform
Ready: yes Confidential: no
Tester: Unknown Verified working: yes
Review URL(s):

https://gitlab.com/eyeo/adblockplus/adblockpluschrome/merge_requests/21/

Description

Environment

Chrome 70
Adblock Plus 3.4.2.2206

How to reproduce

Open background page console.

Observed behaviour

The following error is shown:

Uncaught (in promise) Error: Invalid value for argument 1. String must not be more than 255 characters long.
    at validate (extensions::schemaUtils:34)
    at Object.normalizeArgumentsAndValidate (extensions::schemaUtils:119)
    at Object.<anonymous> (extensions::binding:363)
    at Object.value [as setUninstallURL] (polyfill.js:108)
    at Object.exports.setUninstallURL (uninstall.js:60)
    at Promise.all.then.then.then.then (subscriptionInit.js:311)

Expected behaviour

No such error is shown.

Further information

This is the same issue as #6655 where we ended up shortening the "dataCorrupted" parameter to "corrupted".

The uninstall URL it tries to set has 256 characters:

https://adblockplus.org/redirect
  ?link=uninstalled
  &lang=en-US
  &addonName=adblockpluschrome
  &addonVersion=3.4.2.2206
  &application=chrome
  &applicationVersion=70.0.3538.110
  &platform=chromium
  &platformVersion=70.0.3538.110
  &notificationDownloadCount=30-89
  &corrupted=0

Regardless of the approach we choose, we may want to calculate the maximum possible length of the URL, considering the various values for each parameter, so that we can find out by how much we need to compress the string.

Change History (0)

Note: See TracTickets for help on using tickets.