mirror of
https://github.com/celogeek/go-comic-converter.git
synced 2025-05-24 15:52:38 +02:00
combine print and exit 1 to fatal
This commit is contained in:
parent
0c8e54f0c4
commit
2755aae487
@ -407,8 +407,7 @@ func (c *Converter) Validate() error {
|
|||||||
// Fatal Helper to show usage, err and exit 1
|
// Fatal Helper to show usage, err and exit 1
|
||||||
func (c *Converter) Fatal(err error) {
|
func (c *Converter) Fatal(err error) {
|
||||||
c.Cmd.Usage()
|
c.Cmd.Usage()
|
||||||
utils.Printf("\nError: %s\n", err)
|
utils.Fatalf("\nError: %s\n", err)
|
||||||
os.Exit(1)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *Converter) Stats() {
|
func (c *Converter) Stats() {
|
||||||
|
@ -319,8 +319,7 @@ func (e EPUBImageProcessor) loadCbr() (totalImages int, output chan task, err er
|
|||||||
if isSolid && !e.Dry {
|
if isSolid && !e.Dry {
|
||||||
r, rerr := rardecode.OpenReader(e.Input)
|
r, rerr := rardecode.OpenReader(e.Input)
|
||||||
if rerr != nil {
|
if rerr != nil {
|
||||||
utils.Printf("\nerror processing image %s: %s\n", e.Input, rerr)
|
utils.Fatalf("\nerror processing image %s: %s\n", e.Input, rerr)
|
||||||
os.Exit(1)
|
|
||||||
}
|
}
|
||||||
defer func(r *rardecode.ReadCloser) {
|
defer func(r *rardecode.ReadCloser) {
|
||||||
_ = r.Close()
|
_ = r.Close()
|
||||||
@ -331,15 +330,13 @@ func (e EPUBImageProcessor) loadCbr() (totalImages int, output chan task, err er
|
|||||||
if rerr == io.EOF {
|
if rerr == io.EOF {
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
utils.Printf("\nerror processing image %s: %s\n", f.Name, rerr)
|
utils.Fatalf("\nerror processing image %s: %s\n", f.Name, rerr)
|
||||||
os.Exit(1)
|
|
||||||
}
|
}
|
||||||
if i, ok := indexedNames[f.Name]; ok {
|
if i, ok := indexedNames[f.Name]; ok {
|
||||||
var b bytes.Buffer
|
var b bytes.Buffer
|
||||||
_, rerr = io.Copy(&b, r)
|
_, rerr = io.Copy(&b, r)
|
||||||
if rerr != nil {
|
if rerr != nil {
|
||||||
utils.Printf("\nerror processing image %s: %s\n", f.Name, rerr)
|
utils.Fatalf("\nerror processing image %s: %s\n", f.Name, rerr)
|
||||||
os.Exit(1)
|
|
||||||
}
|
}
|
||||||
jobs <- job{i, f.Name, func() (io.ReadCloser, error) {
|
jobs <- job{i, f.Name, func() (io.ReadCloser, error) {
|
||||||
return io.NopCloser(bytes.NewReader(b.Bytes())), nil
|
return io.NopCloser(bytes.NewReader(b.Bytes())), nil
|
||||||
|
@ -5,7 +5,6 @@ import (
|
|||||||
"image"
|
"image"
|
||||||
"image/color"
|
"image/color"
|
||||||
"image/draw"
|
"image/draw"
|
||||||
"os"
|
|
||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
"github.com/disintegration/gift"
|
"github.com/disintegration/gift"
|
||||||
@ -84,8 +83,7 @@ func (e EPUBImageProcessor) Load() (images []epubimage.EPUBImage, err error) {
|
|||||||
e.EPUBOptions.Image.AutoSplitDoublePage && !e.EPUBOptions.Image.KeepDoublePageIfSplit) {
|
e.EPUBOptions.Image.AutoSplitDoublePage && !e.EPUBOptions.Image.KeepDoublePageIfSplit) {
|
||||||
if err = imgStorage.Add(img.EPUBImgPath(), img.Raw, e.Image.Quality); err != nil {
|
if err = imgStorage.Add(img.EPUBImgPath(), img.Raw, e.Image.Quality); err != nil {
|
||||||
_ = bar.Close()
|
_ = bar.Close()
|
||||||
utils.Printf("error with %s: %s", input.Name, err)
|
utils.Fatalln("error with %s: %s", input.Name, err)
|
||||||
os.Exit(1)
|
|
||||||
}
|
}
|
||||||
// do not keep raw image except for cover
|
// do not keep raw image except for cover
|
||||||
if img.Id > 0 {
|
if img.Id > 0 {
|
||||||
@ -105,8 +103,7 @@ func (e EPUBImageProcessor) Load() (images []epubimage.EPUBImage, err error) {
|
|||||||
img = e.transformImage(input, i+1, b)
|
img = e.transformImage(input, i+1, b)
|
||||||
if err = imgStorage.Add(img.EPUBImgPath(), img.Raw, e.Image.Quality); err != nil {
|
if err = imgStorage.Add(img.EPUBImgPath(), img.Raw, e.Image.Quality); err != nil {
|
||||||
_ = bar.Close()
|
_ = bar.Close()
|
||||||
utils.Printf("error with %s: %s", input.Name, err)
|
utils.Fatalf("error with %s: %s", input.Name, err)
|
||||||
os.Exit(1)
|
|
||||||
}
|
}
|
||||||
img.Raw = nil
|
img.Raw = nil
|
||||||
imageOutput <- img
|
imageOutput <- img
|
||||||
|
@ -10,10 +10,20 @@ func Printf(format string, a ...interface{}) {
|
|||||||
_, _ = fmt.Fprintf(os.Stderr, format, a...)
|
_, _ = fmt.Fprintf(os.Stderr, format, a...)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func Fatalf(format string, args ...interface{}) {
|
||||||
|
Printf(format, args...)
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
|
||||||
func Println(a ...interface{}) {
|
func Println(a ...interface{}) {
|
||||||
_, _ = fmt.Fprintln(os.Stderr, a...)
|
_, _ = fmt.Fprintln(os.Stderr, a...)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func Fatalln(a ...interface{}) {
|
||||||
|
Println(a...)
|
||||||
|
os.Exit(1)
|
||||||
|
}
|
||||||
|
|
||||||
func IntToString(i int) string {
|
func IntToString(i int) string {
|
||||||
return strconv.FormatInt(int64(i), 10)
|
return strconv.FormatInt(int64(i), 10)
|
||||||
}
|
}
|
||||||
|
9
main.go
9
main.go
@ -46,8 +46,7 @@ func main() {
|
|||||||
func version() {
|
func version() {
|
||||||
bi, ok := debug.ReadBuildInfo()
|
bi, ok := debug.ReadBuildInfo()
|
||||||
if !ok {
|
if !ok {
|
||||||
utils.Println("failed to fetch current version")
|
utils.Fatalln("failed to fetch current version")
|
||||||
os.Exit(1)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
githubTag := &latest.GithubTag{
|
githubTag := &latest.GithubTag{
|
||||||
@ -56,8 +55,7 @@ func version() {
|
|||||||
}
|
}
|
||||||
v, err := githubTag.Fetch()
|
v, err := githubTag.Fetch()
|
||||||
if err != nil || len(v.Versions) < 1 {
|
if err != nil || len(v.Versions) < 1 {
|
||||||
utils.Println("failed to fetch the latest version")
|
utils.Fatalln("failed to fetch the latest version")
|
||||||
os.Exit(1)
|
|
||||||
}
|
}
|
||||||
latestVersion := v.Versions[0]
|
latestVersion := v.Versions[0]
|
||||||
|
|
||||||
@ -184,8 +182,7 @@ func generate(cmd *converter.Converter) {
|
|||||||
AppleBookCompatibility: cmd.Options.AppleBookCompatibility,
|
AppleBookCompatibility: cmd.Options.AppleBookCompatibility,
|
||||||
},
|
},
|
||||||
}).Write(); err != nil {
|
}).Write(); err != nil {
|
||||||
utils.Printf("Error: %v\n", err)
|
utils.Fatalf("Error: %v\n", err)
|
||||||
os.Exit(1)
|
|
||||||
}
|
}
|
||||||
if !cmd.Options.Dry {
|
if !cmd.Options.Dry {
|
||||||
cmd.Stats()
|
cmd.Stats()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user