From 338e973d44eb5ac66a63dd4df90c9c19f66fae6b Mon Sep 17 00:00:00 2001 From: "sspitzer%netscape.com" Date: Tue, 10 Sep 2002 06:32:51 +0000 Subject: [PATCH] supplimental fix for #43015 / #121122. wcyeh@zydas.com.tw points out that certain directory names (like "1234") don't come with a trailing slash where most others do. r/sr=bienvenu a=asa. git-svn-id: svn://10.0.0.236/trunk@129151 18797224-902f-48f8-a5cc-f745e15eee43 --- mozilla/widget/src/windows/nsFilePicker.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/mozilla/widget/src/windows/nsFilePicker.cpp b/mozilla/widget/src/windows/nsFilePicker.cpp index 8888c75664f..72c9bd24066 100644 --- a/mozilla/widget/src/windows/nsFilePicker.cpp +++ b/mozilla/widget/src/windows/nsFilePicker.cpp @@ -450,7 +450,12 @@ NS_IMETHODIMP nsFilePicker::Show(PRInt16 *aReturnVal) // This format enables the Explorer-style dialog boxes // to return long file names that include spaces. char *current = fileBuffer; - const char *dirName = current; + + nsCAutoString dirName(current); + // sometimes dirName contains a trailing slash + // and sometimes it doesn't. + if (current[dirName.Length() - 1] != '\\') + dirName += '\\'; while (current && *current && *(current + strlen(current) + 1)) { current = current + strlen(current) + 1; @@ -458,8 +463,7 @@ NS_IMETHODIMP nsFilePicker::Show(PRInt16 *aReturnVal) nsCOMPtr file = do_CreateInstance("@mozilla.org/file/local;1", &rv); NS_ENSURE_SUCCESS(rv,rv); - // dirName contains a trailing slash - rv = file->InitWithNativePath(nsDependentCString(dirName) + nsDependentCString(current)); + rv = file->InitWithNativePath(dirName + nsDependentCString(current)); NS_ENSURE_SUCCESS(rv,rv); rv = mFiles->AppendElement(file);