Added better error checking on MAPSDeliver
authorAndrew DeFaria <Andrew@DeFaria.com>
Thu, 4 Nov 2021 22:19:43 +0000 (15:19 -0700)
committerAndrew DeFaria <Andrew@DeFaria.com>
Thu, 4 Nov 2021 22:19:43 +0000 (15:19 -0700)
maps/index.php
maps/lib/MAPS.pm

index 263ff44..63c3e7c 100755 (executable)
@@ -2,8 +2,8 @@
 include "site-functions.php";\r
 include "MAPS.php";\r
 \r
-$logout   = $_REQUEST[logout];\r
-$errormsg = $_REQUEST[errormsg];\r
+$logout   = $_REQUEST['logout'];\r
+$errormsg = $_REQUEST['errormsg'];\r
 \r
 if (isset ($logout)) {\r
   setcookie ("MAPSUser", "", time()+60*60*24*30, "/maps");\r
index 793f015..9627612 100644 (file)
@@ -1481,7 +1481,22 @@ sub Whitelist ($$;$$) {
   close $message;
 
   # Now call MAPSDeliver
-  my $status = system "$FindBin::Bin/MAPSDeliver $userid /tmp/MAPSMessage.$$";
+  my ($status, @output) = Execute "$FindBin::Bin/MAPSDeliver $userid /tmp/MAPSMessage.$$";
+  #my $status = system "$FindBin::Bin/MAPSDeliver $userid /tmp/MAPSMessage.$$";
+
+  if ($status != 0) {
+    my $msg =  "Unable to deliver message (message left at /tmp/MAPSMessage.%%\n\n";
+       $msg .= join "\n", @output;
+
+    Logmsg(
+      userid  => $userid,
+      type    => 'whitelist',
+      sender  => $sender,
+      message => $msg,
+    );
+
+    Error ($msg, 1);
+  } # if
 
   unlink "/tmp/MAPSMessage.$$";