[interchange-cvs] interchange - heins modified lib/Vend/Scan.pm

interchange-core@interchange.redhat.com interchange-core@interchange.redhat.com
Thu Jan 31 11:23:01 2002


User:      heins
Date:      2002-01-31 16:22:57 GMT
Modified:  lib/Vend Scan.pm
Log:
	* Back out change with urldecode handling. It is indeed needed in some
	  situations. Analysis to follow....

Revision  Changes    Path
2.6       +4 -3      interchange/lib/Vend/Scan.pm


rev 2.6, prev_rev 2.5
Index: Scan.pm
===================================================================
RCS file: /anon_cvs/repository/interchange/lib/Vend/Scan.pm,v
retrieving revision 2.5
retrieving revision 2.6
diff -u -r2.5 -r2.6
--- Scan.pm	30 Jan 2002 22:01:00 -0000	2.5
+++ Scan.pm	31 Jan 2002 16:22:57 -0000	2.6
@@ -1,6 +1,6 @@
 # Vend::Scan - Prepare searches for Interchange
 #
-# $Id: Scan.pm,v 2.5 2002/01/30 22:01:00 racke Exp $
+# $Id: Scan.pm,v 2.6 2002/01/31 16:22:57 mheins Exp $
 #
 # Copyright (C) 1996-2001 Red Hat, Inc. <interchange@redhat.com>
 #
@@ -29,7 +29,7 @@
 			perform_search
 			);
 
-$VERSION = substr(q$Revision: 2.5 $, 10);
+$VERSION = substr(q$Revision: 2.6 $, 10);
 
 use strict;
 use Vend::Util;
@@ -251,7 +251,7 @@
 		$c = \%CGI::values;
 	}
 	else {
-		$param =~ s/__NULL__/\0/g;
+		$param =~ s/-_NULL_-/\0/g;
 		@args = split m:/:, $param;
 	}
 
@@ -261,6 +261,7 @@
 		($var,$val) = split /=/, $_, 2;
 		next unless defined $Scan{$var};
 		$val =~ s!::!/!g;
+		$val =~ s/%([A-Fa-f0-9][A-Fa-f0-9])/chr(hex($1))/ge;
 		$c->{$Scan{$var}} = defined $c->{$Scan{$var}}
 							? ($c->{$Scan{$var}} . "\0$val" )
 							: $val;