Closed
Bug 527817
Opened 16 years ago
Closed 16 years ago
Downloading from a CGI whose output specifies a Content-Disposition: attachment; filename="foo.txt" header no longer works
Categories
(Firefox :: File Handling, defect)
Tracking
()
RESOLVED
INVALID
People
(Reporter: edwardjsabol, Unassigned)
Details
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5
Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5
I've developed an intranet-only CGI application which outputs in a variety of different formats based on user-selection. Specifically, it can output in HTML, plain text, and Excel formats using (mod_perl) code like the following:
$m->clear_buffer;
$r->content_type('application/vnd.ms-excel');
$r->header_out("Content-Disposition" => qq{attachment; filename="${filename}.xls"});
$m->flush_buffer;
print $ss->data;
$m->flush_buffer;
This worked just fine in all Firefox and Mozilla versions prior to 3.5, and it works fine in Safari, Chrome, Opera, and Internet Explorer.
In Firefox 3.5.x (and confirmed with latest 3.5.5), when I click on the link to download either plain text or Excel format, I get the usual dialog which says
You have chosen to open
foo.txt
which is a: plain text document
from: http://my.work.server....
What should Firefox do with this file?
( ) Open with ....
(x) Save File
etc.
When I click the "OK" button, the dialog goes away, but nothing happens. I would expect the downloaded file to appear in my downloads directory and for an entry to appear in the Downloads window logging the details of the download, but the file doesn't appear and nothing is displayed.
Upon further investigation, I noticed that a temporary file is created at /tmp/RANDOMSTRING.types.part which contains the download.
In previous versions of Firefox, the file would appear in my downloads directory and in the Downloads window with the file name specified by the server (foo.txt in the example above).
Reproducible: Always
Steps to Reproduce:
1. Download a non-HTML content type from a CGI with Content-Disposition:attachment; filename="foo.txt" header
2. Click the radio button next to "Save File" if that's not already selected.
3. Click the "OK" button.
Actual Results:
File is not downloaded to the downloads directory, and no entry appears in the Downloads window. A temporary file is left at /tmp/RANDOMSTRING.types.part.
Expected Results:
The file should download to the configured downloads directory and an entry should appear in the Downloads window logging the details of the download.
This as a regression from all versions of Firefox prior to 3.5.
I tested it on Mac OS X, and the problem did NOT occur there. This is apparently a Linux-only problem. I haven't tested on Windows.
Tested on RHEL 5.3.
I just noticed the following output on stderr when testing in safe mode:
*** exception in validateLeafName: [Exception... "Component returned failure code: 0x80520015 (NS_ERROR_FILE_ACCESS_DENIED) [nsILocalFile.create]" nsresult: "0x80520015 (NS_ERROR_FILE_ACCESS_DENIED)" location: "JS frame :: file:///software/linux/usr1/local/firefox-3.5/components/nsHelperAppDlg.js :: anonymous :: line 292" data: no]
The "Save files to" directory specified in Firefox Preferences -> Main is definitely writeable....
Version: unspecified → 3.5 Branch
Comment 2•16 years ago
|
||
Your reports looks like bug 429827 (the exception in comment #77 is the same)
Maybe, although that exception appears to be from Thunderbird and the line number is different.
Also, I'm 100% positive that my browser.download.dir exists and is writeable. It's not on an external drive either. *shrug*
I'll see if I can apply that bug's patch to see if it helps though. Thanks for the pointer.
Comment 4•16 years ago
|
||
Do you have this issue only with your downloads or with all downloads ?
What happens if you change the preferences for the file save to ask every timer where to download the file (no default location) ?
Belated follow up on this bug.... It turns out I think this was due to a corrupted sqlite file in my profile. Actually, I think pretty much all of the sqlite files in my profile were corrupt. I deleted the ones that were corrupt and the problem went away when I restarted Firefox. Closing this bug. Thanks for taking a look, Matthias.
Status: UNCONFIRMED → RESOLVED
Closed: 16 years ago
Resolution: --- → INVALID
You need to log in
before you can comment on or make changes to this bug.
Description
•