summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormartin f. krafft2017-02-24 07:33:08 +1300
committermartin f. krafft2017-02-24 07:44:45 +1300
commit74c036b5a725d8d268ea62ace595bce9d4eaf36f (patch)
tree2f4bb3fbbb9046b3caa7962d7a885537fa9b7437
parentb3a8e7731bc5e12822820efc88491e05ffe8f556 (diff)
downloadscripts.irssi.org-74c036b5a725d8d268ea62ace595bce9d4eaf36f.tar.bz2
Fix network matching for query subcommand
In the absence of a network tag passed to the `query` subcommand, no rules but the default would match and so the returned match(es) would potentially not actually be the ones used in context of ctrlact's normal operation. This commit fixes #354 by special-casing the threshold match when the data to be looked up doesn't actually specify a network tag. In this case, the output for net will be '(ignored)'. Signed-off-by: martin f. krafft <madduck@madduck.net>
-rw-r--r--scripts/ctrlact.pl7
1 files changed, 4 insertions, 3 deletions
diff --git a/scripts/ctrlact.pl b/scripts/ctrlact.pl
index 534b00a..aa9dcfb 100644
--- a/scripts/ctrlact.pl
+++ b/scripts/ctrlact.pl
@@ -111,7 +111,7 @@ use Carp qw( croak );
use Irssi;
use Text::ParseWords;
-our $VERSION = '1.1';
+our $VERSION = '1.2';
our %IRSSI = (
authors => 'martin f. krafft',
@@ -119,7 +119,7 @@ our %IRSSI = (
name => 'ctrlact',
description => 'allows per-channel control over activity indication',
license => 'MIT',
- changed => '2017-02-15'
+ changed => '2017-02-24'
);
### DEFAULTS AND SETTINGS ######################################################
@@ -208,7 +208,8 @@ sub from_data_level {
sub walk_match_array {
my ($name, $net, $type, @arr) = @_;
foreach my $quadruplet (@arr) {
- my $netmatch = match($quadruplet->[0], $net);
+ my $netmatch = $net eq '*' ? '(ignored)'
+ : match($quadruplet->[0], $net);
my $match = match($quadruplet->[1], $name);
next unless $netmatch and $match;