Closed
Bug 1647249
Opened 4 years ago
Closed 4 years ago
Address book migration fails on "bad" mailing list name
Categories
(MailNews Core :: Address Book, defect)
Tracking
(thunderbird78 fixed)
RESOLVED
FIXED
Thunderbird 79.0
Tracking | Status | |
---|---|---|
thunderbird78 | --- | fixed |
People
(Reporter: jorgk-bmo, Assigned: darktrojan)
Details
Attachments
(1 file)
10.43 KB,
patch
|
mkmelin
:
review+
wsmwk
:
approval-comm-beta+
|
Details | Diff | Splinter Review |
I have a mailing list called "a, b, c" from ancient times. This made the AB migration from TB 68 to TB 78 fail.
Assignee | ||
Comment 1•4 years ago
|
||
I've mitigated this problem in two ways: put the list migration into a try/catch block so that one bad list doesn't prevent a migration, and converting invalid or duplicate list names into valid list names.
Assignee: nobody → geoff
Status: NEW → ASSIGNED
Attachment #9158401 -
Flags: review?(mkmelin+mozilla)
Assignee | ||
Updated•4 years ago
|
status-thunderbird78:
--- → affected
Assignee | ||
Comment 2•4 years ago
|
||
Comment on attachment 9158401 [details] [diff] [review] 1647249-migrate-bad-lists-1.diff This could break address book migration, and we only really get one shot at that, so it has to be in 78.
Attachment #9158401 -
Flags: approval-comm-beta?
Comment 3•4 years ago
|
||
Comment on attachment 9158401 [details] [diff] [review] 1647249-migrate-bad-lists-1.diff Review of attachment 9158401 [details] [diff] [review]: ----------------------------------------------------------------- r=mkmelin with the changes below ::: mail/base/modules/MailMigrator.jsm @@ +781,5 @@ > if (cardMap.size > 0) { > await newBook._bulkAddCards(cardMap.values()); > > for (let card of database.enumerateCards(directory)) { > if (card.isMailList) { could just do an early continue here @@ +785,5 @@ > if (card.isMailList) { > + try { > + let listName = card.displayName > + .trim() > + .replace(/ +/g, " ") maybe use `.replace(/\s+/g, " ")` - I don't know if that's been (ever) possible to enter throuh @@ +786,5 @@ > + try { > + let listName = card.displayName > + .trim() > + .replace(/ +/g, " ") > + .replace(/[,;"<>]/g, ""); I think you want to do the double space replacements later, and the trimming last. Otherwise you could get double spaces due to removing junk.
Attachment #9158401 -
Flags: review?(mkmelin+mozilla) → review+
Pushed by geoff@darktrojan.net:
https://hg.mozilla.org/comm-central/rev/a8766e0cda5d
Fix address book migration failure with invalid mailing list names. r=mkmelin DONTBUILD
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Assignee | ||
Updated•4 years ago
|
Target Milestone: --- → Thunderbird 79.0
Comment 5•4 years ago
|
||
Comment on attachment 9158401 [details] [diff] [review] 1647249-migrate-bad-lists-1.diff Approved for beta. good thing there are tests ;)
Attachment #9158401 -
Flags: approval-comm-beta? → approval-comm-beta+
Comment 6•4 years ago
|
||
bugherder uplift |
Thunderbird 78.0b4:
https://hg.mozilla.org/releases/comm-beta/rev/5ece8ea9b110
Updated•4 years ago
|
You need to log in
before you can comment on or make changes to this bug.
Description
•