RESOLVED FIXED 210509
Remove generic parameter serialization fallback
https://bugs.webkit.org/show_bug.cgi?id=210509
Summary Remove generic parameter serialization fallback
Brent Fulgham
Reported 2020-04-14 12:04:52 PDT
Improved injected bundle serialization was implemented in Bug 201810. It is time to remove the compatibility fallback so that we can ensure we are always using the modern implementation.
Attachments
Patch (3.49 KB, patch)
2020-04-14 12:07 PDT, Brent Fulgham
no flags
Patch (5.32 KB, patch)
2020-04-14 16:06 PDT, Brent Fulgham
no flags
Brent Fulgham
Comment 1 2020-04-14 12:07:49 PDT
Brent Fulgham
Comment 2 2020-04-14 12:09:30 PDT
Brent Fulgham
Comment 3 2020-04-14 14:53:40 PDT
The api-ios test failure looks relevant: u'TestWebKitAPI.WebKit.WKWebProcessPlugInWithoutRegisteredCustomClass
Brent Fulgham
Comment 4 2020-04-14 15:53:18 PDT
(In reply to Brent Fulgham from comment #3) > The api-ios test failure looks relevant: > > u'TestWebKitAPI.WebKit.WKWebProcessPlugInWithoutRegisteredCustomClass Oh! This is behaving correctly, now that we are denying serialization of unregistered classes. The related WKWebProcessPlugInWithRegisteredCustomClass works as expected. I'll update the test expectation.
Brent Fulgham
Comment 5 2020-04-14 16:06:23 PDT
Geoffrey Garen
Comment 6 2020-04-14 20:50:32 PDT
Comment on attachment 396471 [details] Patch r=me How did we determine that clients have stopped using the legacy code path?
EWS
Comment 7 2020-04-15 09:35:19 PDT
Committed r260134: <https://trac.webkit.org/changeset/260134> All reviewed patches have been landed. Closing bug and clearing flags on attachment 396471 [details].
Brent Fulgham
Comment 8 2020-04-15 09:36:20 PDT
(In reply to Geoffrey Garen from comment #6) > Comment on attachment 396471 [details] > Patch > > r=me > > How did we determine that clients have stopped using the legacy code path? In 2017 I reached out to the relevant clients (since injected bundles are SPI) and worked with them to stop using the old code path. Foundation now generates simulated crashes any time NSKeyedUnarchiver uses 'NSObject class' as the root for unarchiving so it was possible to see what wasn't updated yet.
Note You need to log in before you can comment on or make changes to this bug.