another try at dealing with CGI.pm problem
open the temp file if all attempts to get a fd failmaster
parent
5ccd0cb518
commit
66f35e30dc
|
@ -88,6 +88,10 @@ sub formbuilder (@) { #{{{
|
|||
# of the temp file that CGI writes the upload to.
|
||||
my $tempfile=$q->tmpFileName($filename);
|
||||
|
||||
if (! defined $tempfile) {
|
||||
error("failed to determine temp filename");
|
||||
}
|
||||
|
||||
$filename=IkiWiki::titlepage(
|
||||
IkiWiki::possibly_foolish_untaint(
|
||||
attachment_location($form->field('page')).
|
||||
|
@ -136,7 +140,9 @@ sub formbuilder (@) { #{{{
|
|||
# needed by old CGI versions
|
||||
$fh=$q->param('attachment');
|
||||
if (! defined $fh || ! ref $fh) {
|
||||
error("failed to get filehandle");
|
||||
# even that doesn't always work,
|
||||
# fall back to opening the tempfile
|
||||
open($fh, "<", $tempfile) || error("failed to open $tempfile: $!");
|
||||
}
|
||||
}
|
||||
binmode($fh);
|
||||
|
|
|
@ -54,6 +54,15 @@ the error message like below:
|
|||
|
||||
>>>>>> --[[Paweł|ptecza]]
|
||||
|
||||
>>>>>>> Well then, your CGI.pm is somehow not behaving as its documentation
|
||||
>>>>>>> describes, in two ways:
|
||||
>>>>>>> 1. `upload()` is not returning a reference to the filehandle
|
||||
>>>>>>> 2. The filename returned by `param("attachment")` is not also
|
||||
>>>>>>> a file handle.
|
||||
>>>>>>> That seems very broken. I can try to work around it some more
|
||||
>>>>>>> though. I've checked in a second try at dealing with things, can
|
||||
>>>>>>> you try it? --[[Joey]]
|
||||
|
||||
The same message I can see in the Apache log file. There is also
|
||||
following warning:
|
||||
|
||||
|
|
Loading…
Reference in New Issue