1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
From 466d70bd1187419cd8daa4503653da58cb1b54d0 Mon Sep 17 00:00:00 2001
From: Benjamin Mako Hill <mako@atdot.cc>
Date: Sat, 12 Feb 2011 16:13:46 -0500
Subject: fix error reporting IRT UNIVERAL::isa
---
bin/mvs | 38 ++++++++++++++++++++++++--------------
1 files changed, 24 insertions(+), 14 deletions(-)
diff --git a/bin/mvs b/bin/mvs
index 2bd8505..5d54edd 100755
--- a/bin/mvs
+++ b/bin/mvs
@@ -86,23 +86,33 @@ sub main {
if $opt_verbose >= 1;
print $message unless $opt_verbose <= -1;
eval { $wmc->$method(@files) };
- if (UNIVERSAL::isa($@, 'WWW::Mediawiki::Client::Exception')) {
+
+ my $tmp_error = $@;
+
+ if (UNIVERSAL::isa($tmp_error, 'WWW::Mediawiki::Client::Exception')) {
open (LOG, ">>$LOGFILE");
- print LOG "\n-----------------\n$@";
- warn "\n-----------------\n$@" if $opt_verbose >= 1;
- if ($@->isa('WWW::Mediawiki::Client::LoginException')) {
- print LOG Data::Dumper->Dump([$@->res], ['res'] ) . "\n";
- print LOG Data::Dumper->Dump([$@->cookie_jar], ['cookie_jar']) . "\n";
+ print LOG "\n-----------------\n$tmp_error";
+ warn "\n-----------------\n$tmp_error" if $opt_verbose >= 1;
+
+ if (UNIVERSAL::isa($tmp_error, 'WWW::Mediawiki::Client::LoginException')) {
+ print LOG Data::Dumper->Dump([$tmp_error->res], ['res'] ) . "\n";
+ print LOG Data::Dumper->Dump([$tmp_error->cookie_jar],
+ ['cookie_jar']) . "\n";
close LOG;
- die $@->error . " See $LOGFILE for details.\n" ;
- } elsif ($@->isa('WWW::Mediawiki::Client::CommitException')) {
- print LOG Data::Dumper->Dump([$@->res], ['res']) . "\n";
- } elsif ($@->isa('WWW::Mediawiki::Client::ServerPageException')) {
- print LOG Data::Dumper->Dump([$@->res], ['res']) . "\n";
+ die $tmp_error->error . "See $LOGFILE for details.\n" ;
+ } elsif (UNIVERSAL::isa($tmp_error,
+ 'WWW::Mediawiki::Client::CommitException')) {
+ print LOG Data::Dumper->Dump([$tmp_error->res], ['res']) . "\n";
+
+ } elsif (UNIVERSAL::isa($tmp_error,
+ 'WWW::Mediawiki::Client::ServerPageException')) {
+ print LOG Data::Dumper->Dump([$tmp_error->res], ['res']) . "\n";
}
- warn $@->error . " See $LOGFILE for details.\n" ;
- } elsif ($@) {
- die $@;
+
+ warn $tmp_error->error, "\n", "See $LOGFILE for details.\n";
+
+ } elsif ($tmp_error) {
+ die $tmp_error->error;
}
return 1 unless $wmc->status;
my %status = %{$wmc->status};
--
1.7.2.3
|