Refactor component registration code
Categories
(Core :: IPC: MSCOM, task)
Tracking
()
Tracking | Status | |
---|---|---|
firefox84 | --- | fixed |
People
(Reporter: bugzilla, Assigned: bugzilla)
References
Details
Attachments
(4 files, 1 obsolete file)
I want to replace the registration code that we use in Handler
with a more generic implementation in Module
and also supports DLL surrogates.
Assignee | ||
Comment 1•3 years ago
|
||
We need this so that the registration code is more versatile and may be linked
from outside of xul.
Assignee | ||
Comment 2•3 years ago
|
||
We add new DLL registration code. This is a rather generic function that
permits the following:
- Registering multiple
CLSID
s for the same DLL; - Registering an optional
AppID
. Registering anAppID
allows us to use a
DllSurrogate
to host the DLL out-of-process using Windows' built-in
dllhost.exe
. I'll be using this feature in a future bug. - Supporting all available threading modelsl;
- Capable of registering either inproc servers or inproc handlers;
- Using the transaction-based registry API so that we can cleanly rollback
during registration if any part(s) of it fail.
Depends on D95605
Assignee | ||
Comment 3•3 years ago
|
||
Handler
should now delegate its registration to Module
.
Depends on D95606
Assignee | ||
Comment 4•3 years ago
|
||
We should delayload DLLs that for APIs that are only used during registration
so that they aren't referenced during normal operation.
Depends on D95608
Pushed by aklotz@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/7322c3af8006 Part 1 - Change mscom registration to dynamically link to GetProxyDllInfo when built outside of xul; r=Jamie https://hg.mozilla.org/integration/autoland/rev/660cdea23685 Part 2 - New dll registration code in mscom/oop/module; r=Jamie https://hg.mozilla.org/integration/autoland/rev/b3b7d68c33f6 Part 3 - Replace dll reg code in mscom/oop/Handler with calls to mscom/oop/Module; r=Jamie https://hg.mozilla.org/integration/autoland/rev/50576e0fbd98 Part 4 - Update AccessibleHandler to delayload dependencies that are only used during registration; r=Jamie
Assignee | ||
Comment 6•3 years ago
|
||
Now that non-XUL builds of Registration.cpp
use GetProcAddress
to resolve
GetProxyDllInfo
(from part 1), we need to ensure that we export the handler's
implementation.
Comment 7•3 years ago
|
||
Backed out 4 changesets (bug 1674904) for Build bustage in worker/checkouts/gecko/config/rules.mk. CLOSED TREE
Log:
https://treeherder.mozilla.org/logviewer?job_id=320754921&repo=autoland&lineNumber=8470
Push with failures:
https://treeherder.mozilla.org/jobs?repo=autoland&group_state=expanded&selectedTaskRun=YFu36-cgTIiPIcH3KyRtJQ.0&revision=50576e0fbd98256d86f411faa702a99d2ee1ea84
Backout:
https://hg.mozilla.org/integration/autoland/rev/260e4a7da897063f2c5c7541fe7d8dbc905b3a2b
Updated•3 years ago
|
Assignee | ||
Updated•3 years ago
|
Assignee | ||
Comment 8•3 years ago
|
||
https://treeherder.mozilla.org/#/jobs?repo=try&revision=ffbdcb624a139ac17ff11f196711e7fd4344ba03
Pushed by aklotz@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/bc27f9c33843 Part 1 - Change mscom registration to dynamically link to GetProxyDllInfo when built outside of xul; r=Jamie https://hg.mozilla.org/integration/autoland/rev/1ee6692a8dd0 Part 2 - New dll registration code in mscom/oop/module; r=Jamie https://hg.mozilla.org/integration/autoland/rev/0a275914d8a8 Part 3 - Replace dll reg code in mscom/oop/Handler with calls to mscom/oop/Module; r=Jamie https://hg.mozilla.org/integration/autoland/rev/1b99873f3735 Part 4 - Update AccessibleHandler to delayload dependencies that are only used during registration; r=Jamie
Comment 10•3 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/bc27f9c33843
https://hg.mozilla.org/mozilla-central/rev/1ee6692a8dd0
https://hg.mozilla.org/mozilla-central/rev/0a275914d8a8
https://hg.mozilla.org/mozilla-central/rev/1b99873f3735
Description
•