This removes the resulting binary dependency on cpuguy83/md2man and
russross/blackfriday, which saves more than 400 KB (more than 300 KB
once stripped) from the resulting binary.
Document this in README.
strings.Split(s, sep) returns a slice of a single element containing s
if sep is not found in s. This is true even if s is empty.
As a result, every call to flagFromEnvOrFile results in an attempt to
open a file with empty name. This is seen from strace as
[pid 3287620] openat(AT_FDCWD, "", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
[pid 3287620] openat(AT_FDCWD, "", O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
...
To fix, check if the string is empty before calling ReadFile.
This also fixes cases where filePath is non-empty but has extra commas.
Signed-off-by: Kir Kolyshkin <kolyshkin@gmail.com>