This commit is contained in:
2tef
2024-01-13 00:20:41 -07:00
committed by GitHub
5 changed files with 8 additions and 18 deletions

View File

@ -20,4 +20,3 @@ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

@ -196,7 +196,7 @@ func loadFile(filename string, overload bool) error {
for key, value := range envMap { for key, value := range envMap {
if !currentEnv[key] || overload { if !currentEnv[key] || overload {
_ = os.Setenv(key, value) os.Setenv(key, value)
} }
} }
@ -222,7 +222,7 @@ func doubleQuoteEscape(line string) string {
if c == '\r' { if c == '\r' {
toReplace = `\r` toReplace = `\r`
} }
line = strings.Replace(line, string(c), toReplace, -1) line = strings.ReplaceAll(line, string(c), toReplace)
} }
return line return line
} }

View File

@ -18,7 +18,7 @@ const (
) )
func parseBytes(src []byte, out map[string]string) error { func parseBytes(src []byte, out map[string]string) error {
src = bytes.Replace(src, []byte("\r\n"), []byte("\n"), -1) src = bytes.ReplaceAll(src, []byte("\r\n"), []byte("\n"))
cutset := src cutset := src
for { for {
cutset = getStatementStart(cutset) cutset = getStatementStart(cutset)
@ -44,7 +44,7 @@ func parseBytes(src []byte, out map[string]string) error {
return nil return nil
} }
// getStatementPosition returns position of statement begin. // getStatementStart returns position of statement begin.
// //
// It skips any comment line or non-whitespace character. // It skips any comment line or non-whitespace character.
func getStatementStart(src []byte) []byte { func getStatementStart(src []byte) []byte {
@ -231,21 +231,12 @@ func isCharFunc(char rune) func(rune) bool {
} }
// isSpace reports whether the rune is a space character but not line break character // isSpace reports whether the rune is a space character but not line break character
//
// this differs from unicode.IsSpace, which also applies line break as space
func isSpace(r rune) bool { func isSpace(r rune) bool {
switch r { return unicode.IsSpace(r) && r != '\n'
case '\t', '\v', '\f', '\r', ' ', 0x85, 0xA0:
return true
}
return false
} }
func isLineEnd(r rune) bool { func isLineEnd(r rune) bool {
if r == '\n' || r == '\r' { return r == '\n' || r == '\r'
return true
}
return false
} }
var ( var (