From 3b9be360359acb93bc1ee919fe7896339c70a7a5 Mon Sep 17 00:00:00 2001 From: Doug Bell Date: Thu, 24 Jan 2008 18:01:57 +0000 Subject: [PATCH] fix: newByDynamicClass cannot die if given bad arguments, should return undef instead. --- lib/WebGUI/Asset.pm | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/lib/WebGUI/Asset.pm b/lib/WebGUI/Asset.pm index 30fc3d833..49732b902 100644 --- a/lib/WebGUI/Asset.pm +++ b/lib/WebGUI/Asset.pm @@ -1787,12 +1787,16 @@ sub newByDynamicClass { my $session = shift; my $assetId = shift; my $revisionDate = shift; - - confess "newByDynamicClass requires WebGUI::Session" - unless $session && blessed $session eq 'WebGUI::Session'; - confess "newByDynamicClass requires assetId" - unless $assetId; - + +# Some code requires that these situations not die. +# confess "newByDynamicClass requires WebGUI::Session" +# unless $session && blessed $session eq 'WebGUI::Session'; +# confess "newByDynamicClass requires assetId" +# unless $assetId; +# So just return instead + return unless ( $session && blessed $session eq 'WebGUI::Session' ) + && $assetId; + # Cache the className lookup my $assetClass = $session->stow->get("assetClass"); my $className = $assetClass->{$assetId};