From c7030fde80686d05805d02f3586ec23224e4c6e5 Mon Sep 17 00:00:00 2001 From: Michael Andreen Date: Sat, 5 May 2007 17:55:45 +0000 Subject: [PATCH] only update fleet when it was possible to parse something --- ND/Web/Pages/Main.pm | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/ND/Web/Pages/Main.pm b/ND/Web/Pages/Main.pm index 4fa2a31..0a795d0 100644 --- a/ND/Web/Pages/Main.pm +++ b/ND/Web/Pages/Main.pm @@ -47,15 +47,19 @@ sub render_body { ($id) = $DBH->selectrow_array($fleet,undef,$ND::UID); } my $delete = $DBH->prepare("DELETE FROM fleet_ships WHERE fleet = ?"); - $delete->execute($id); my $insert = $DBH->prepare('INSERT INTO fleet_ships (fleet,ship,amount) VALUES (?,?,?)'); $fleet = param('fleet'); $fleet =~ s/,//g; + my $match = 0; while ($fleet =~ m/((?:[A-Z][a-z]+ )*[A-Z][a-z]+)\s+(\d+)/g){ + unless($match){ + $match = 1; + $delete->execute($id); + } $insert->execute($id,$1,$2) or $error .= '

'.$DBH->errstr.'

'; } $fleet = $DBH->prepare('UPDATE fleets SET landing_tick = tick() WHERE id = ?'); - $fleet->execute($id); + $fleet->execute($id) if $match; $DBH->commit; }elsif (param('cmd') eq 'Recall Fleets'){ $DBH->begin_work; -- 2.39.2