From a17310fd2b8bf2c1fca8fc453b95fac4af68aea8 Mon Sep 17 00:00:00 2001 From: Marcel de Rooy Date: Thu, 2 Nov 2017 10:55:42 +0100 Subject: [PATCH] Bug 19585: Inventory: Allow additional separators in a barcode file Content-Type: text/plain; charset=utf-8 This patch makes \n, \r, |, comma, semicolon and hyphen ('-') all valid separators between barcodes passed to inventory. An additional grep removes empty barcodes. (Note: The grep looks for at least one non-whitespace character. We could be more specific, but this allows for more flexibility like testing with alphanumeric barcodes etc.) Test plan: Upload a barcode file that contains various allowed separators. Signed-off-by: Marcel de Rooy --- tools/inventory.pl | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/tools/inventory.pl b/tools/inventory.pl index 8df02ab..dd67e4d 100755 --- a/tools/inventory.pl +++ b/tools/inventory.pl @@ -154,10 +154,7 @@ if ( $uploadbarcodes && length($uploadbarcodes) > 0 ) { my $lines_read=0; binmode($uploadbarcodes, ":encoding(UTF-8)"); while (my $barcode=<$uploadbarcodes>) { - $barcode =~ s/\r/\n/g; - $barcode =~ s/\n\n/\n/g; - my @data = split(/\n/,$barcode); - push @uploadedbarcodes, @data; + push @uploadedbarcodes, grep { /\S/ } split( /[\n\r,;|-]/, $barcode ); } for my $barcode (@uploadedbarcodes) { next unless $barcode; -- 2.1.4