diff options
author | Sean Whitton <spwhitton@spwhitton.name> | 2021-01-23 18:11:51 -0700 |
---|---|---|
committer | Sean Whitton <spwhitton@spwhitton.name> | 2021-01-23 18:15:20 -0700 |
commit | b23033238d8ae711cdb9bddcf6a1b21b2066fb6d (patch) | |
tree | 1ea41257f21162b3b52ac8a7be1c872a31d0696e /gmi2email | |
parent | bd274a20b46202f3a7d53a51a117cfd4110c3a67 (diff) | |
download | mailscripts-b23033238d8ae711cdb9bddcf6a1b21b2066fb6d.tar.gz |
gmi2email: refactor to avoid a level of nesting
No functional change.
Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Diffstat (limited to 'gmi2email')
-rwxr-xr-x | gmi2email | 53 |
1 files changed, 26 insertions, 27 deletions
@@ -116,35 +116,34 @@ foreach my $sub (<$subs_fh>) { my ($rows) = $dbh->selectrow_array( "SELECT COUNT(*) FROM seen WHERE uri = \"$uri\""); - if ($rows == 0) { - my $mail = 1; - my ($type, $data); - #<<< - try { - ($type, $data) = gemini_fetch($uri, abs_links => 1); - } catch { - warn "when fetching $uri, $_"; - my ($code) = /"gemini error: ([1-6])/; - if ($code == 4) { - next; # try again next run - } else { - $mail = 0; # don't try this one again - } - }; - #>>> - $dbh->do("INSERT INTO seen VALUES (\"$uri\")"); - $mail or next; - if ($type =~ m{^text/gemini}) { - gemtext_to_mail( - $data, %to_mail_opts, - gemlog => $gemlog // "unknown gemlog", - link_title => $title, - date => email_date timelocal 0, - 0, 12, $d, $m - 1, $y - )->send; + next unless $rows == 0; + my $mail = 1; + my ($type, $data); + #<<< + try { + ($type, $data) = gemini_fetch($uri, abs_links => 1); + } catch { + warn "when fetching $uri, $_"; + my ($code) = /"gemini error: ([1-6])/; + if ($code == 4) { + next; # try again next run } else { - warn "$uri is not gemtext"; + $mail = 0; # don't try this one again } + }; + #>>> + $dbh->do("INSERT INTO seen VALUES (\"$uri\")"); + $mail or next; + if ($type =~ m{^text/gemini}) { + gemtext_to_mail( + $data, %to_mail_opts, + gemlog => $gemlog // "unknown gemlog", + link_title => $title, + date => email_date timelocal 0, + 0, 12, $d, $m - 1, $y + )->send; + } else { + warn "$uri is not gemtext"; } } } |