From e52a749a8e35fec40162b703976404c73d7640e3 Mon Sep 17 00:00:00 2001 From: "dp%netscape.com" Date: Fri, 9 Jul 1999 03:41:27 +0000 Subject: [PATCH] Fixed - Mismatched alloc/free - Guarded against null pointer and crash bug#8830 --- xpcom/io/nsFileSpec.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/xpcom/io/nsFileSpec.cpp b/xpcom/io/nsFileSpec.cpp index 78768faf9d88..12a4847a79e1 100644 --- a/xpcom/io/nsFileSpec.cpp +++ b/xpcom/io/nsFileSpec.cpp @@ -570,6 +570,7 @@ void nsFileURL::operator = (const nsFilePath& inOther) { mURL = kFileURLPrefix; char* original = (char*)(const char*)inOther; // we shall modify, but restore. + if (!original || !*original) return; #ifdef XP_PC // because we don't want to escape the '|' character, change it to a letter. NS_ASSERTION(original[2] == '|', "No drive letter part!"); @@ -819,7 +820,7 @@ void nsFileSpec::MakeUnique() } if (*suffix) nsCRT::free(suffix); - delete [] leafName; + nsCRT::free(leafName); } // nsFileSpec::MakeUnique //----------------------------------------------------------------------------------------