From 183242a6ce35cfe0402626f797ab9cd8d6635e9d Mon Sep 17 00:00:00 2001 From: Graham Knop Date: Thu, 4 Oct 2007 18:29:51 +0000 Subject: [PATCH] fix automatic module loading --- lib/WebGUI/Asset.pm | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/lib/WebGUI/Asset.pm b/lib/WebGUI/Asset.pm index 98d676597..c61494ca0 100644 --- a/lib/WebGUI/Asset.pm +++ b/lib/WebGUI/Asset.pm @@ -1335,14 +1335,13 @@ Loads an asset module if it's not already in memory. This is a class method. Ret =cut sub loadModule { - my ($session, $className) = @_; - my $cmd = "use ".$className; - eval ($cmd); - if ($@) { - $session->errorHandler->error("Couldn't compile asset package: ".$className.". Root cause: ".$@); - return undef; - } - return $className; + my ($class, $session, $className) = @_; + (my $module = $className . '.pm') =~ s{::|'}{/}g; + if (eval { require $module; 1 }) { + return $className; + } + $session->errorHandler->error("Couldn't compile asset package: ".$className.". Root cause: ".$@); + return; } #-------------------------------------------------------------------