Opened 22 months ago

Last modified 22 months ago

#5271 new defect

Restoring automated backups does not work correctly in migration builds

Reported by: Ross Assignee:
Priority: P3 Milestone:
Module: Core Keywords:
Cc: Blocked By:
Blocking: #5051 Platform: Firefox
Ready: yes Confidential: no
Tester: Unknown Verified working: no
Review URL(s):

Description (last modified by trev)

Environment

ABP 2.8.2.4246
Firefox Dev (54) / Windows 7

When upgrading from 2.8.2.4131 or 2.8.2.4146

How to reproduce

  1. Install one of the 413X builds.
  2. Modify the filter subscriptions and custom filters.
  3. Save a custom backup.
  4. Restart Firefox (not sure if required).
  5. Install the latest 4146 build. Filters/subscriptions are kept.
  6. After a minute or two, try [Backup & Restore] -> The latest automatic backup.
  7. Try restoring the custom backup.

Observed behaviour

Attempting to restore the automatic backup appears to remove all subscriptions and custom filters. This persists after browser restart. Restoring the user created backup, even from an earlier build appears to work as expected. There are no errors in the browser console.

Expected behaviour

No empty backup should be created, the backup should only be created after the initial subscriptions have been added.

Change History (4)

comment:1 Changed 22 months ago by Ross

  • Description modified (diff)

comment:2 Changed 22 months ago by Ross

From a clean state (removed all user data), using build 4231, the first automatic backup after install gives the message "The files data could not be processed, perhaps it is not an AdBlock Plus data file?".

In build 4246, it successfully loads the default state (EasyList + disabled adblock warning list).

Starting on build 4231 then updating to 4246 causes it to remove all lists and filters.

comment:3 Changed 22 months ago by trev

There are two issues here:

  • The first backup is created before any subscriptions are added, consequently it is empty. This behavior isn't new.
  • Restoring from an empty backup file is allowed. This wasn't the case before.

The difference in behavior between the builds is due to the fact that both manual and automatic backups were originally going through some sanity checks, now this is only the case for manual backups. Furthermore, these sanity checks no longer reject empty backups - the fact that they did previously was actually a bug (the code only accepted files with at least three lines when the intention was to require two lines). In fact, these backup files are valid even though not really helpful.

comment:4 Changed 22 months ago by trev

  • Component changed from Unknown to Core
  • Description modified (diff)
  • Milestone Adblock-Plus-2.9-for-Firefox deleted
  • Priority changed from Unknown to P3
  • Ready set
Note: See TracTickets for help on using tickets.