diff -up ./nss/lib/util/utilmod.c.memleak ./nss/lib/util/utilmod.c --- ./nss/lib/util/utilmod.c.memleak 2012-12-06 18:57:17.000000000 -0800 +++ ./nss/lib/util/utilmod.c 2013-11-17 12:00:26.290467323 -0800 @@ -181,7 +181,7 @@ nssutil_ReadSecmodDB(const char *appName char *paramsValue=NULL; PRBool failed = PR_TRUE; - moduleList = (char **) PORT_ZAlloc(useCount*sizeof(char **)); + moduleList = (char **) PORT_ZAlloc(useCount*sizeof(char *)); if (moduleList == NULL) return NULL; if (dbname == NULL) { @@ -358,6 +358,7 @@ done: status = PR_Access(olddbname, PR_ACCESS_EXISTS); if (status == PR_SUCCESS) { PR_smprintf_free(olddbname); + PORT_ZFree(moduleList, useCount*sizeof(char *)); PORT_SetError(SEC_ERROR_LEGACY_DATABASE); return NULL; }