Index: mozilla/nsprpub/pr/tests/ipv6.c =================================================================== RCS file: /cvsroot/mozilla/nsprpub/pr/tests/ipv6.c,v retrieving revision 3.12 diff -pU10 -r3.12 mozilla/nsprpub/pr/tests/ipv6.c --- mozilla/nsprpub/pr/tests/ipv6.c +++ mozilla/nsprpub/pr/tests/ipv6.c @@ -143,21 +143,23 @@ PRIntn main(PRIntn argc, char **argv) if (version) { #if defined(WINNT) #define NSPR_LIB "libnspr4" #else #define NSPR_LIB "nspr4" #endif const PRVersionDescription *version_info; char *nspr_path = PR_GetEnv("LD_LIBRARY_PATH"); char *nspr_name = PR_GetLibraryName(nspr_path, NSPR_LIB); - PRLibrary *runtime = PR_LoadLibrary(nspr_name); + PRLibrary *runtime = NULL; + if (NULL != nspr_name) + runtime = PR_LoadLibrary(nspr_name); if (NULL == runtime) PL_FPrintError(err, "PR_LoadLibrary"); else { versionEntryPointType versionPoint = (versionEntryPointType) PR_FindSymbol(runtime, "libVersionPoint"); if (NULL == versionPoint) PL_FPrintError(err, "PR_FindSymbol"); else { @@ -187,20 +189,26 @@ PRIntn main(PRIntn argc, char **argv) (void)PR_fprintf(err, " comment: %s\n", version_info->comment); } } if (NULL != nspr_name) PR_FreeLibraryName(nspr_name); } { if (NULL == name) { char *me = (char*)PR_MALLOC(DNS_BUFFER); + if (NULL == me) + { + failed = PR_TRUE; + (void)PR_fprintf(err, "OOM\n"); + return 2; + } rv = PR_GetSystemInfo(PR_SI_HOSTNAME, me, DNS_BUFFER); if (PR_FAILURE == rv) { failed = PR_TRUE; PL_FPrintError(err, "PR_GetSystemInfo"); return 2; } name = me; /* just leak the storage */ } } Index: mozilla/nsprpub/pr/tests/libfilename.c =================================================================== RCS file: /cvsroot/mozilla/nsprpub/pr/tests/libfilename.c,v retrieving revision 1.2 diff -pU10 -r1.2 mozilla/nsprpub/pr/tests/libfilename.c --- mozilla/nsprpub/pr/tests/libfilename.c +++ mozilla/nsprpub/pr/tests/libfilename.c @@ -87,40 +87,57 @@ int main(int argc, char *argv[]) PRLibrary *lib; PRBool failed = PR_FALSE; if (argc >= 2 && strcmp(argv[1], "-d") == 0) { debug_mode = PR_TRUE; } /* First test a library that is implicitly linked. */ #ifdef WINNT name = PR_Malloc(strlen("libnspr4.dll")+1); + if (!name) { + fprintf(stderr, "OOM\n"); + exit(1); + } strcpy(name, "libnspr4.dll"); #else name = PR_GetLibraryName(NULL, "nspr4"); #endif addr = (PRFuncPtr)PR_GetTCPMethods()->close; if (RunTest(name, addr) == PR_FAILURE) { failed = PR_TRUE; } +#ifdef WINNT + PR_Free(name); +#else PR_FreeLibraryName(name); +#endif /* Next test a library that is dynamically loaded. */ name = PR_GetLibraryName("dll", "my"); + if (!name) { + fprintf(stderr, "OOM\n"); + exit(1); + } if (debug_mode) printf("Loading library %s\n", name); lib = PR_LoadLibrary(name); if (!lib) { fprintf(stderr, "PR_LoadLibrary failed\n"); exit(1); } PR_FreeLibraryName(name); name = PR_GetLibraryName(NULL, "my"); + if (!name) { + fprintf(stderr, "OOM\n"); + PR_UnloadLibrary(lib); + exit(1); + } addr = PR_FindFunctionSymbol(lib, "My_GetValue"); if (RunTest(name, addr) == PR_FAILURE) { failed = PR_TRUE; } PR_FreeLibraryName(name); PR_UnloadLibrary(lib); if (failed) { printf("FAIL\n"); return 1; }