Bug 301200
| Summary: | ModelPlayerClient cannot be `ThreadSafeRefCountedAndCanMakeThreadSafeWeakPtr` | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Sam Weinig <sam> |
| Component: | New Bugs | Assignee: | Mike Wyrzykowski <mwyrzykowski> |
| Status: | RESOLVED FIXED | ||
| Severity: | Normal | CC: | webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | Safari 18 | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Sam Weinig
In 301613@main, ModelPlayerClient was made conditionally `ThreadSafeRefCountedAndCanMakeThreadSafeWeakPtr`, rather than `AbstractRefCountedAndCanMakeWeakPtr`. This won't work as HTMLModelElement inherits from ModelPlayerClient and it is already `RefCounted`.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Mike Wyrzykowski
Which type is in conflict?
Conditionally ModelPlayerType is now `ThreadSafeRefCountedAndCanMakeThreadSafeWeakPtr`. Which is the non-thread safe RefCounted type that HTMLModelElement inherits from?
Radar WebKit Bug Importer
<rdar://problem/163130598>
Mike Wyrzykowski
actually this doesn't need to be thread safe ref counted, it can be a non-thread safe pointer
Sam Weinig
Glad its not needed, but for completeness, HTMLModelElement inherits from HTMLElement, and all of the DOM is main thread only.
Sam Weinig
In WebCore/WebKit, "client" interfaces either need to not be ref counted at all, or be `AbstractRefCounted`, so that they can delegate their reference counting to type that implements them.
Mike Wyrzykowski
Pull request: https://github.com/WebKit/WebKit/pull/52749
EWS
Committed 301904@main (7d9a3479678b): <https://commits.webkit.org/301904@main>
Reviewed commits have been landed. Closing PR #52749 and removing active labels.