diff --git a/widget/windows/nsFilePicker.cpp b/widget/windows/nsFilePicker.cpp index 67063d2ef127..ae28a4ad5c9e 100644 --- a/widget/windows/nsFilePicker.cpp +++ b/widget/windows/nsFilePicker.cpp @@ -271,7 +271,11 @@ bool nsFilePicker::ShowFilePicker(const nsString& aInitialDir) { // default extension to append to new files if (!mDefaultExtension.IsEmpty()) { - hr = dialog->SetDefaultExtension(mDefaultExtension.get()); + // We don't want environment variables expanded in the extension either. + nsAutoString sanitizedExtension(mDefaultExtension); + sanitizedExtension.ReplaceChar('%', '_'); + + hr = dialog->SetDefaultExtension(sanitizedExtension.get()); if (FAILED(hr)) { return false; }