[interchange-cvs] interchange - jon modified lib/Vend/Data.pm

interchange-core@icdevgroup.org interchange-core@icdevgroup.org
Fri Feb 28 13:27:00 2003


User:      jon
Date:      2003-02-28 18:26:49 GMT
Modified:  lib/Vend Data.pm
Log:
Prevent internal server error if quantity pricing row cannot be found for
whatever reason.

Revision  Changes    Path
2.25      +6 -6      interchange/lib/Vend/Data.pm


rev 2.25, prev_rev 2.24
Index: Data.pm
===================================================================
RCS file: /var/cvs/interchange/lib/Vend/Data.pm,v
retrieving revision 2.24
retrieving revision 2.25
diff -u -u -r2.24 -r2.25
--- Data.pm	12 Feb 2003 03:59:12 -0000	2.24
+++ Data.pm	28 Feb 2003 18:26:49 -0000	2.25
@@ -1,6 +1,6 @@
 # Vend::Data - Interchange databases
 #
-# $Id: Data.pm,v 2.24 2003/02/12 03:59:12 mheins Exp $
+# $Id: Data.pm,v 2.25 2003/02/28 18:26:49 jon Exp $
 # 
 # Copyright (C) 1996-2002 Red Hat, Inc. <interchange@redhat.com>
 #
@@ -1542,11 +1542,11 @@
 					$test =~ s/\D+//;
 					redo CHAIN if $quantity < $test;
 
-					my $row = database_row(
-						($table || $item->{mv_ib} || $Vend::Cfg->{ProductFiles}[0]),
-						($key || $item->{code}),
-					);
-#::logDebug("database reference to price breaks found table=$table key=$key|$item->{$key}|$item->{code} row=" . ::uneval($row));
+					my $t = $table || $item->{mv_ib} || $Vend::Cfg->{ProductFiles}[0];
+					my $k = $key || $item->{code};
+					my $row = database_row($t, $k);
+#::logDebug("database reference to price breaks found table=$t key=$k row=" . ::uneval($row));
+					redo CHAIN if ref $row ne 'HASH';
 
 					my $keep;
 					$keep = $row->{$field} if $row->{$field} != 0;