Changed so that if Stats is logging to a Logger object it checks to see
[clearscm.git] / lib / Utils.pm
index 1bed47b..a21d996 100644 (file)
@@ -311,6 +311,41 @@ Returns:
 
 sub GetPassword (;$) {
   my ($prompt) = @_;
+
+=pod
+
+=head2 GetPassword (;$prompt)
+
+Prompt for a password
+
+Parameters:
+
+=for html <blockquote>
+
+=over
+
+=item $prompt
+
+Prompt string to use (Default: "Password:")
+
+=back
+
+=for html </blockquote>
+
+Returns:
+
+=for html <blockquote>
+
+=over
+
+=item $password
+
+=back
+
+=for html </blockquote>
+
+=cut  
+
   
   $prompt ||= 'Password';
   
@@ -792,7 +827,8 @@ and the values of the hash will be the counters.
 
 =item $log
 
-Logger object to log stats to (if specified)
+Logger object to log stats to (if specified). Note: if the Logger object has 
+errors or warnings then they will be automatically included in the output.
 
 =back
 
@@ -814,7 +850,12 @@ Returns:
 
   my $msg = "$FindBin::Script Run Statistics:";
   
-  if (scalar keys %$total) {
+  if ($log and ref $log eq 'Logger') {
+    $total->{errors}   = $log->{errors};
+    $total->{warnings} = $log->{warnings};
+  } # if
+  
+  if (keys %$total) {
     # Display statistics (if any)
     if ($log) {
       $log->msg ($msg);
@@ -823,10 +864,10 @@ Returns:
     } # if
 
     foreach (sort keys %$total) {
-      $msg = $$total{$_} . "\t $_";
+      $msg = $total->{$_} . "\t $_";
       
       if ($log) {
-        $log->msg ($$total{$_} . "\t $_");
+        $log->msg ($total->{$_} . "\t $_");
       } else {
         display $msg;
       } # if