[ic] BUG in &charge= when passing options (IC 4.8.2)

Mike Heins interchange-users@interchange.redhat.com
Wed Oct 31 17:26:01 2001


Quoting Javier Martin (martin@trymedia.com):
> Hello,
> 
> I would like to share my experience with &charge and what I think it's a bug
> in a specific part of its implementation.
> 
> THE SCENARIO:
> 
> We use &charge=... in our profile and we want to specify options, for
> example 'transaction=mauthonly' to say that we don't want to capture, only
> authorize. The line for this would be:
> 
>   &charge=[var MV_PAYMENT_MODE] transaction=mauthonly
> 
> If we do so, as a result we see that all options are IGNORED, ie. no matter
> what parameters are passed they don't arrive to the payment module (say
> AuthorizeNet.pm).
 
> - Patch the interchange code to pass a copy of $2, instead of $2 itself:
> 
> 
> >>>>>>>>>>>>>>>>>>>>>
> 		else {
> 			$params =~ s/(\w+)\s*(.*)/$1/s;
> 			my $options = $2;
> 			$opt = get_option_hash($options);
> >>>>>>>>>>>>>>>>>>>>>
> 
> The last has worked for me.

Or do what I did, fix get_option_hash so it doesn't use the stupid
$_[0] method of manipulating arguments. It was a very false economy.
You should be able to pass $2 with no fear.

Thank you very much for your investigation and fix. It saved me a lot
of time. The change (to Util.pm) is in CVS, both stable and devel.

-- 
Red Hat, Inc., 3005 Nichols Rd., Hamilton, OH  45013
phone +1.513.523.7621      <mheins@redhat.com>

People who want to share their religious views with you
almost never want you to share yours with them. -- Dave Barry