diff --git a/lib/WebGUI/Operation/VersionTag.pm b/lib/WebGUI/Operation/VersionTag.pm index fff665d9a..06523a8dd 100644 --- a/lib/WebGUI/Operation/VersionTag.pm +++ b/lib/WebGUI/Operation/VersionTag.pm @@ -243,10 +243,10 @@ sub www_commitVersionTagConfirm { if (defined $tag && $session->user->isInGroup($tag->get("groupToUse"))) { my $i18n = WebGUI::International->new($session, "VersionTag"); $tag->set({comments=>$session->form->process("comments", "textarea")}); - eval { $tag->requestCommit; }; + my $message = $tag->requestCommit; my $error = ""; - if ($@) { - $error .= $i18n->get("bad commit")." ".$@; + if ($message) { + $error .= $i18n->get("bad commit")." ".$message; } my $ac = WebGUI::AdminConsole->new($session,"versions"); my $default = WebGUI::Asset->getDefault($session); diff --git a/lib/WebGUI/VersionTag.pm b/lib/WebGUI/VersionTag.pm index 2483c6617..5ec7a969e 100644 --- a/lib/WebGUI/VersionTag.pm +++ b/lib/WebGUI/VersionTag.pm @@ -15,7 +15,6 @@ package WebGUI::VersionTag; =cut use strict; -use Carp qw(carp); use WebGUI::Asset; use WebGUI::Workflow::Instance; @@ -384,8 +383,8 @@ sub new { =head2 requestCommit ( ) -Locks the version tag and then kicks off the approval/commit workflow for it. A carp is thrown if workflow is -realtime and fails. +Locks the version tag and then kicks off the approval/commit workflow for it. Returns an error message if it +fails. =cut @@ -411,7 +410,7 @@ sub requestCommit { my $errorMessage = "Realtime workflow instance ".$instance->getId." returned status ".$status." where 'done' was expected"; $self->session->errorHandler->warn($errorMessage); - carp $errorMessage; + return $errorMessage; } } }