From e491447ed9798731c901aa249c22100e503b3087 Mon Sep 17 00:00:00 2001 From: Colin Kuskie Date: Thu, 31 Jan 2008 04:49:59 +0000 Subject: [PATCH] Fix JSON handling in WebGUI::Workflow::Cron. There's gonna be a whole bunch of these, since JSON throws an exception unless you pass it something that looks like valid JSON. --- lib/WebGUI/Workflow/Cron.pm | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/lib/WebGUI/Workflow/Cron.pm b/lib/WebGUI/Workflow/Cron.pm index 9d04967a0..0bf196817 100644 --- a/lib/WebGUI/Workflow/Cron.pm +++ b/lib/WebGUI/Workflow/Cron.pm @@ -113,13 +113,18 @@ Returns the value for a given property. See the set() method for details. =cut sub get { - my $self = shift; - my $name = shift; - if ($name eq "parameters") { - my $parameters = JSON::from_json($self->{_data}{$name}); - return $parameters->{parameters}; - } - return $self->{_data}{$name}; + my $self = shift; + my $name = shift; + if ($name eq "parameters") { + if (exists $self->{_data}{parameters} and ref($self->{_data}{parameters}) eq 'HASH' ) { + my $parameters = JSON::from_json($self->{_data}{$name}); + return $parameters->{parameters}; + } + else { + return undef; + } + } + return $self->{_data}{$name}; } #-------------------------------------------------------------------