summaryrefslogtreecommitdiff
path: root/convert-modeswitch.pl
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2013-05-30 19:06:05 +0200
committerFelix Fietkau <nbd@openwrt.org>2013-05-30 19:06:05 +0200
commited61a16faf025671d9ff751b827980cc44f9f088 (patch)
treee3bd806be9b0fec8ee931e019793fdc3d248d87a /convert-modeswitch.pl
parenta9aa888729f2564c14b668b19c9433d07d2669b5 (diff)
use an array for messages
Diffstat (limited to 'convert-modeswitch.pl')
-rw-r--r--convert-modeswitch.pl16
1 files changed, 10 insertions, 6 deletions
diff --git a/convert-modeswitch.pl b/convert-modeswitch.pl
index f7ac9ff..97f1d7b 100644
--- a/convert-modeswitch.pl
+++ b/convert-modeswitch.pl
@@ -153,12 +153,13 @@ sub dev_opt {
my @val = @$val;
undef $val;
foreach my $elem (@val) {
+ my $json = json_val($elem, $type);
+ next unless defined $json;
if (defined $val) {
- $val = "$val, "
+ $val = "$val, $json"
} else {
- $val = "";
+ $val = $json;
}
- $val .= json_val($elem, $type);
}
$val = "[ $val ]";
} else {
@@ -205,9 +206,12 @@ foreach my $devid (sort keys %devices) {
dev_opt($cur->{Mode}, "mode", "string", \$sep);
dev_opt($cur->{NoDriverLoading}, "no_driver", "bool", \$sep);
dev_opt($cur->{MessageEndpoint}, "msg_endpoint", "int", \$sep);
- dev_opt($cur->{MessageContent}, "msg", "int", \$sep);
- dev_opt($cur->{MessageContent2}, "msg2", "int", \$sep);
- dev_opt($cur->{MessageContent3}, "msg3", "int", \$sep);
+ my $msg = [
+ $cur->{MessageContent},
+ $cur->{MessageContent2},
+ $cur->{MessageContent3}
+ ];
+ dev_opt($msg, "msg", "array:int", \$sep);
dev_opt($cur->{WaitBefore}, "wait", "int", \$sep);
dev_opt($cur->{ReleaseDelay}, "release_delay", "int", \$sep);
dev_opt($cur->{NeedResponse}, "response", "bool", \$sep);