Closed Bug 207328 Opened 21 years ago Closed 21 years ago

@mozilla.org/scriptsecuritymanager;1 isn't registering itself correctly as an app-startup observer service

Categories

(Core :: Security: CAPS, defect)

x86
Windows 2000
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: timeless, Assigned: timeless)

Details

(Keywords: assertion)

Attachments

(1 file)

954 bytes, patch
security-bugs
: review+
Details | Diff | Splinter Review
[This is a cookie cutter bug]
http://lxr.mozilla.org/seamonkey/source/embedding/components/appstartup/src/nsIAppStartupNotifier.h#53
 53  We will have a category called "app-startup" which components register 
 54  themselves in using the CategoryManager.
 55 
 56  Components can also (optionally) add the word "service," as a prefix 
 57  to the "value" they pass in during a call to AddCategoryEntry() as

{7ee2a4c0-4b93-17d3-ba18-0060b0f199a2},@mozilla.org/scriptsecuritymanager;1,,scriptsecuritymanager,rel:caps.dll

Lists the prefix inplace of a name instead of including the optional prefix in
addition to a name and therefore causes xpcom to get a bit upset.
WARNING: Creation of "{7ee2a4c0-4b93-17d3-ba18-0060b0f199a2}" in progress
(Reentrant GS - see bug 194568), file
i:/build/mozilla/xpcom/components/nsComponentManager.cpp, line 1901
nsComponentManagerImpl::AddPendingCID(const nsID & {...}) line 1902
nsComponentManagerImpl::GetServiceByContractID(nsComponentManagerImpl * const
0x0043dc14, const char * 0x0382db80, const nsID & {...}, void * * 0x038ea914
class nsIScriptSecurityManager *  nsContentUtils::sSecurityManager) line 2459 +
15 bytes
CallGetService(const char * 0x0382db80, nsIScriptSecurityManager * * 0x038ea914
class nsIScriptSecurityManager *  nsContentUtils::sSecurityManager) line 184 +
37 bytes
nsContentUtils::Init() line 86 + 15 bytes
Initialize(nsIModule * 0x0306f878) line 225
nsGenericModule::Initialize(nsIComponentManager * 0x0043dc10) line 312 + 10 bytes
nsGenericModule::GetClassObject(nsGenericModule * const 0x0306f878,
nsIComponentManager * 0x0043dc10, const nsID & {...}, const nsID & {...}, void *
* 0x0012f900) line 420 + 12 bytes
nsNativeComponentLoader::GetFactoryFromModule(nsDll * 0x01048ca8, const nsID &
{...}, nsIFactory * * 0x0012f900) line 1059 + 44 bytes
nsNativeComponentLoader::GetFactory(nsNativeComponentLoader * const 0x0043e670,
const nsID & {...}, const char * 0x00fb8650, const char * 0x0043eac8, nsIFactory
* * 0x0012f900) line 134 + 20 bytes
nsFactoryEntry::GetFactory(nsIFactory * * 0x0012f900, nsComponentManagerImpl *
0x0043dc10) line 326 + 58 bytes
nsComponentManagerImpl::CreateInstance(nsComponentManagerImpl * const
0x0043dc10, const nsID & {...}, nsISupports * 0x00000000, const nsID & {...},
void * * 0x0012f94c) line 1967 + 16 bytes
nsCreateInstanceByCID::operator()(const nsID & {...}, void * * 0x0012f94c) line
55 + 45 bytes
nsCOMPtr<nsIDOMRange>::assign_from_helper(const nsCOMPtr_helper & {...}, const
nsID & {...}) line 988 + 18 bytes
nsCOMPtr<nsIDOMRange>::operator=(const nsCOMPtr_helper & {...}) line 611
nsTypeAheadFind::Init() line 195
nsTypeAheadFind::GetInstance() line 235 + 11 bytes
nsTypeAheadFindConstructor(nsISupports * 0x00000000, const nsID & {...}, void *
* 0x0012fb58) line 86 + 38 bytes
nsGenericFactory::CreateInstance(nsGenericFactory * const 0x0104c468,
nsISupports * 0x00000000, const nsID & {...}, void * * 0x0012fb58) line 86 + 21
bytes
nsComponentManagerImpl::CreateInstanceByContractID(nsComponentManagerImpl *
const 0x0043dc10, const char * 0x0012fcb4, nsISupports * 0x00000000, const nsID
& {...}, void * * 0x0012fb58) line 2051 + 24 bytes
nsComponentManagerImpl::GetServiceByContractID(nsComponentManagerImpl * const
0x0043dc14, const char * 0x0012fcb4, const nsID & {...}, void * * 0x0012fbbc)
line 2471 + 50 bytes
nsGetServiceByContractID::operator()(const nsID & {...}, void * * 0x0012fbbc)
line 121 + 38 bytes
nsCOMPtr<nsIObserver>::assign_from_helper(const nsCOMPtr_helper & {...}, const
nsID & {...}) line 988 + 18 bytes
nsCOMPtr<nsIObserver>::operator=(const nsCOMPtr_helper & {...}) line 611
nsAppStartupNotifier::Observe(nsAppStartupNotifier * const 0x00fd4608,
nsISupports * 0x00000000, const char * 0x00419ae4, const unsigned short *
0x00000000) line 99 + 57 bytes
main1(int 1, char * * 0x004443d0, nsISupports * 0x00fd4490) line 1106

WARNING: You are calling CreateInstance "@mozilla.org/scriptsecuritymanager;1"
when a service for this CID already exists!, file
i:/build/mozilla/xpcom/components/nsComponentManager.cpp, line 2041
nsComponentManagerImpl::CreateInstanceByContractID(nsComponentManagerImpl *
const 0x0043dc10, const char * 0x01043608, nsISupports * 0x00000000, const nsID
& {...}, void * * 0x0012fbbc) line 2041 + 24 bytes
nsCreateInstanceByContractID::operator()(const nsID & {...}, void * *
0x0012fbbc) line 76 + 45 bytes
nsCOMPtr<nsIObserver>::assign_from_helper(const nsCOMPtr_helper & {...}, const
nsID & {...}) line 988 + 18 bytes
nsCOMPtr<nsIObserver>::operator=(const nsCOMPtr_helper & {...}) line 611
nsAppStartupNotifier::Observe(nsAppStartupNotifier * const 0x00fd4608,
nsISupports * 0x00000000, const char * 0x00419ae4, const unsigned short *
0x00000000) line 103
main1(int 1, char * * 0x004443d0, nsISupports * 0x00fd4490) line 1106
Status: NEW → ASSIGNED
Summary: isn't registering itself correctly as an app-startup observer service → isn't registering itself correctly as an app-startup observer service
Summary: isn't registering itself correctly as an app-startup observer service → @mozilla.org/scriptsecuritymanager;1 isn't registering itself correctly as an app-startup observer service
Attached patch fixSplinter Review
Attachment #124368 - Flags: superreview?(alecf)
Attachment #124368 - Flags: review?(mstoltz)
Comment on attachment 124368 [details] [diff] [review]
fix

sr=alecf
Attachment #124368 - Flags: superreview?(alecf) → superreview+
Comment on attachment 124368 [details] [diff] [review]
fix

r=mstoltz as long as you have tested this and made sure that the startup
observer callback for nsScriptSecurityManager is still getting called at the
right time.
Attachment #124368 - Flags: review?(mstoltz) → review+
checked in
Status: ASSIGNED → RESOLVED
Closed: 21 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: