landing XPCOM_BRANCH

git-svn-id: svn://10.0.0.236/trunk@2218 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
hardts
1998-05-22 21:56:30 +00:00
parent d583c3a3b9
commit 217d4a9900
47 changed files with 1759 additions and 491 deletions

View File

@@ -23,13 +23,32 @@
static PRBool gUnreg = PR_FALSE;
void print_err(nsresult err)
{
switch (err) {
case NS_ERROR_FACTORY_NOT_LOADED:
cerr << "Factory not loaded";
break;
case NS_NOINTERFACE:
cerr << "No Interface";
break;
case NS_ERROR_NULL_POINTER:
cerr << "Null pointer";
break;
case NS_ERROR_OUT_OF_MEMORY:
cerr << "Out of memory";
break;
default:
cerr << hex << err << dec;
}
}
PRLibrary *GetLib(const char *path) {
return PR_LoadLibrary(path);
}
int Register(const char *path)
nsresult Register(const char *path)
{
int res = NS_OK;
nsresult res = NS_OK;
PRLibrary *instance = GetLib(path);
if (instance != NULL) {
nsRegisterProc proc = (nsRegisterProc) PR_FindSymbol(instance,
@@ -45,9 +64,9 @@ int Register(const char *path)
return res;
}
int Unregister(const char *path)
nsresult Unregister(const char *path)
{
int res = NS_OK;
nsresult res = NS_OK;
PRLibrary *instance = GetLib(path);
if (instance != NULL) {
nsUnregisterProc proc = (nsUnregisterProc) PR_FindSymbol(instance,
@@ -87,14 +106,18 @@ int ProcessArgs(int argc, char *argv[])
if (NS_SUCCEEDED(res)) {
cout << "Successfully unregistered: " << argv[i] << "\n";
} else {
cerr << "Unregister failed (" << res << "): " << argv[i] << "\n";
cerr << "Unregister failed (";
print_err(res);
cerr << "): " << argv[i] << "\n";
}
} else {
res = Register(argv[i]);
if (NS_SUCCEEDED(res)) {
cout << "Successfully registered: " << argv[i] << "\n";
} else {
cerr << "Register failed (" << res << "): " << argv[i] << "\n";
cerr << "Register failed (";
print_err(res);
cerr << "): " << argv[i] << "\n";
}
}
i++;