Don't compile the regex if no valid files were given (eg. all files are directories); print error if file is a binary file (contains NULL character)
This commit is contained in:
@@ -1,6 +1,11 @@
|
||||
package main
|
||||
|
||||
import "slices"
|
||||
import (
|
||||
"bufio"
|
||||
"os"
|
||||
"slices"
|
||||
"strings"
|
||||
)
|
||||
|
||||
type character interface {
|
||||
int | rune
|
||||
@@ -25,3 +30,15 @@ func genRange[T character](start, end T) []T {
|
||||
}
|
||||
return toRet
|
||||
}
|
||||
|
||||
// Returns whether or not the given file contains a NULL character
|
||||
func fileContainsNullChar(file *os.File) bool {
|
||||
scanner := bufio.NewScanner(file)
|
||||
for scanner.Scan() {
|
||||
line := scanner.Text()
|
||||
if strings.Contains(line, "\000") {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
Reference in New Issue
Block a user