[Jifty-commit] r4162 - in jifty/trunk: lib/Jifty
jifty-commit at lists.jifty.org
jifty-commit at lists.jifty.org
Fri Sep 28 14:44:06 EDT 2007
Author: jesse
Date: Fri Sep 28 14:44:05 2007
New Revision: 4162
Modified:
jifty/trunk/ (props changed)
jifty/trunk/lib/Jifty/Request.pm
Log:
r67623 at pinglin: jesse | 2007-09-28 14:43:47 -0400
* When loading a web request from a data structure, don't totally throw away the path it was requested at.
Modified: jifty/trunk/lib/Jifty/Request.pm
==============================================================================
--- jifty/trunk/lib/Jifty/Request.pm (original)
+++ jifty/trunk/lib/Jifty/Request.pm Fri Sep 28 14:44:05 2007
@@ -123,9 +123,9 @@
# Check it for something appropriate
if ($data) {
if ($ct eq "text/x-json") {
- return $self->from_data_structure(eval{Jifty::JSON::jsonToObj($data)});
+ return $self->from_data_structure(eval{Jifty::JSON::jsonToObj($data)}, $cgi);
} elsif ($ct eq "text/x-yaml") {
- return $self->from_data_structure(eval{Jifty::YAML::Load($data)});
+ return $self->from_data_structure(eval{Jifty::YAML::Load($data)}, $cgi);
}
}
@@ -146,7 +146,16 @@
sub from_data_structure {
my $self = shift;
my $data = shift;
- $self->path( Jifty::Util->canonicalize_path( $data->{path} || "/" ) );
+ my $cgi = shift;
+
+ my $path = $data->{'path'};
+
+ unless ($path) {
+ $path = URI::Escape::uri_unescape($cgi->path_info);
+ $path =~ s/\?.*//;
+ };
+
+ $self->path( Jifty::Util->canonicalize_path( $path));
$self->just_validating( $data->{validating} ) if $data->{validating};
if ( ref $data->{continuation} eq "HASH" ) {
More information about the Jifty-commit
mailing list