diff --git a/cssmerger.go b/cssmerger.go index 2942b34..b1fa4bb 100644 --- a/cssmerger.go +++ b/cssmerger.go @@ -42,14 +42,9 @@ func Merge(root, output string, skipfiles []string) error { return nil } file.Close() - n, err := outFile.Write(data) + _, err = writeFile(outFile, data) if err != nil { - fmt.Printf("Failed to write %s file in %s\n", path, root) - return nil - } - // Если был пустой css, то не добавится перенос строки - if n > 0 { - outFile.WriteString("\n") + fmt.Printf("Failed to write in %s file\n", path) } } // Если возвращаемое значение nil, то обход продолжится @@ -60,6 +55,21 @@ func Merge(root, output string, skipfiles []string) error { return nil } +func writeFile(file *os.File, data []byte) (n int, err error) { + bcount := 0 + for _, char := range data { + if char == '\n' || char == ' ' { + continue + } + n, err := file.Write([]byte{byte(char)}) + if err != nil { + return n, err + } + bcount += n + } + return n, nil +} + // Проверяет есть ли строка в срезе строк func stringSliceContains(s []string, e string) bool { for _, a := range s {