logo       

Weird correlation between CGI and CGI::Session when uploading files: msg#00010

Subject: Weird correlation between CGI and CGI::Session when uploading files
Hi *,
I've just found a quite curious behaviour when using standard Perl-CGI module and CGI::Session in an upload script. Maybe somebody can explain that to me? Or is it a bug somewhere?

Description: I use the uploadInfo method of the CGI module for getting the content type of an uploaded file. If I first create the CGI object and afterwards the new CGI::Session object, everything works fine as intended.

<snippet>
use CGI qw/:standard/;
use CGI::Carp qw/fatalsToBrowser/;
use CGI::Session;

# this is the place to focus on ;)
my $cgi = new CGI;  # create CGI instance
                               # create CGI::Session instance
my $CGISession = new CGI::Session(undef, undef, {Directory=>'./_tmp__SESSIONS', UMask=>0664}) or die CGI::Session->errstr;


my $uploadedFile = $cgi->param('uploadedFile');
my $ContentType = $cgi->uploadInfo($uploadedFile)->{'Content-Type'};  # <= here it is working...
print "the determined content-type is: ".$ContentType."<br />";
</snippet>

But: When switching the instantiation lines for CGI and CGI::Session, the uploadInfo method suddenly returns an error:
...
# this breaks the uploadInfo() method (it returns undef instead of a hash reference)
my $CGISession = new CGI::Session(undef, undef, {Directory=>'./_tmp__SESSIONS', UMask=>0664}) or die CGI::Session->errstr;
my $cgi = new CGI;  # create CGI instance
                               # create CGI::Session instance

...
> upload.pl: Can't use an undefined value as a HASH reference at ... (=> the line with uploadInfo)

Does anybody know why that happens? I had some restless hours until I found the problem (by chance!)...
While writing this down, I could imagine that maybe the import of :standard CGI methods into local namespace has something to do with it?!

Best regards so far, and have a nice weekend.
Stefan.

-------------------------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc.
Still grepping through log files to find problems?  Stop.
Now Search log events and configuration files using AJAX and a browser.
Download your FREE copy of Splunk now >>  http://get.splunk.com/
_______________________________________________
Cgi-session-user mailing list
Cgi-session-user-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@xxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/cgi-session-user
<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

Recently Viewed:
audio.irate.dev...    yellowdog.gener...    ietf.ips/2002-0...    xfree86.fonts/2...    busybox/2003-07...    emacs.jdee/2004...    linux.mandrake....    hardware.microc...    user-groups.lin...    science.analysi...    version-control...    db.filemaker.de...    cluster.openmos...    mail.eyebrowse....    text.xml.xerces...    kde.devel.kwrit...    finance.moneyda...    gcc.regression/...    network.routing...    os.freebsd.deve...    recreation.radi...    qnx.openqnx.dev...    python.xml/2002...   
Home | blog view | USPTO Patent Archive | advertise | OSDir is an inevitable website. super tiny logo

Free Magazines

Cisco News
Receive a free quarterly e-newsletter with exclusive articles on how Cisco IT uses its own products and solutions to enable the business.
subscribe

Systems Management News, the newspaper for IT systems administration and data center managers! Each issue of Systems Management News is chock-full of news and analysis to help you understand what's happening in your field.
subscribe

The Enterprise Newsweekly eWeek is the essential technology information source for builders of e-business.
subscribe

Oracle Magazine Oracle Magazine contains technology strategy articles, sample code, tips, Oracle and partner news, how to articles for developers and DBAs, and more. Oracle (NASDAQ: ORCL) is the world's largest enterprise software company.
subscribe

Total Telecom Total Telecom is "The Economist of the communications industry".
subscribe