null pointer fix

- need to nil check before pulling value
This commit is contained in:
jake 2025-06-19 17:28:56 -04:00
parent 7ff43c82c2
commit 71ace969d3
12 changed files with 53 additions and 31 deletions

View File

@ -41,9 +41,11 @@ var addCmd = &cobra.Command{
cobra.CheckErr(err) cobra.CheckErr(err)
err = db.SaveCmd(cfgname, cfgcmd) err = db.SaveCmd(cfgname, cfgcmd)
if err.Error() == ErrInit { if err != nil {
fmt.Println(ErrInitRsp) if err.Error() == ErrInit {
return fmt.Println(ErrInitRsp)
return
}
} }
cobra.CheckErr(err) cobra.CheckErr(err)

View File

@ -8,6 +8,8 @@ import (
) )
const ( const (
//sqlite doesn't have an error type for this error, but we want to catch when this error is thrown
//and provide the proper response. It should not be treated as an error if the db isn't setup.
ErrInit = "sqlite3: SQL logic error: no such table: commands" ErrInit = "sqlite3: SQL logic error: no such table: commands"
ErrInitRsp = "The 'init' command must be run before mctl can be used" ErrInitRsp = "The 'init' command must be run before mctl can be used"
) )

View File

@ -22,9 +22,11 @@ var deleteCmd = &cobra.Command{
defer db.Close() defer db.Close()
err = db.DeleteCmd(args[0]) err = db.DeleteCmd(args[0])
if err.Error() == ErrInit { if err != nil {
fmt.Println(ErrInitRsp) if err.Error() == ErrInit {
return fmt.Println(ErrInitRsp)
return
}
} }
cobra.CheckErr(err) cobra.CheckErr(err)

View File

@ -33,11 +33,11 @@ var runCmd = &cobra.Command{
defer db.Close() defer db.Close()
crun, err := db.GetCmd(cname) crun, err := db.GetCmd(cname)
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return nil
}
if err != nil { if err != nil {
if err.Error() == ErrInit {
fmt.Println(ErrInitRsp)
return nil
}
return err return err
} }

View File

@ -21,9 +21,11 @@ var viewCmd = &cobra.Command{
defer db.Close() defer db.Close()
ts, err := db.GetAllCmds() ts, err := db.GetAllCmds()
if err.Error() == ErrInit { if err != nil {
fmt.Println(ErrInitRsp) if err.Error() == ErrInit {
return fmt.Println(ErrInitRsp)
return
}
} }
cobra.CheckErr(err) cobra.CheckErr(err)

View File

@ -31,9 +31,11 @@ var destroyCmd = &cobra.Command{
defer db.Close() defer db.Close()
err = db.Destroy() err = db.Destroy()
if err.Error() == command.ErrInit { if err != nil {
fmt.Println(command.ErrInitRsp) if err.Error() == command.ErrInit {
return fmt.Println(command.ErrInitRsp)
return
}
} }
cobra.CheckErr(err) cobra.CheckErr(err)

View File

@ -22,9 +22,11 @@ var activeCmd = &cobra.Command{
defer db.Close() defer db.Close()
err = db.SetActiveServer(args[0]) err = db.SetActiveServer(args[0])
if err.Error() == ErrInit { if err != nil {
fmt.Println(ErrInitRsp) if err.Error() == ErrInit {
return fmt.Println(ErrInitRsp)
return
}
} }
cobra.CheckErr(err) cobra.CheckErr(err)

View File

@ -63,9 +63,11 @@ var addCmd = &cobra.Command{
Port: fp, Port: fp,
Password: base64.StdEncoding.EncodeToString(ps), Password: base64.StdEncoding.EncodeToString(ps),
}) })
if err.Error() == ErrInit { if err != nil {
fmt.Println(ErrInitRsp) if err.Error() == ErrInit {
return fmt.Println(ErrInitRsp)
return
}
} }
cobra.CheckErr(err) cobra.CheckErr(err)

View File

@ -22,9 +22,11 @@ var deleteCmd = &cobra.Command{
defer db.Close() defer db.Close()
err = db.DeleteServer(args[0]) err = db.DeleteServer(args[0])
if err.Error() == ErrInit { if err != nil {
fmt.Println(ErrInitRsp) if err.Error() == ErrInit {
return fmt.Println(ErrInitRsp)
return
}
} }
cobra.CheckErr(err) cobra.CheckErr(err)

View File

@ -8,6 +8,8 @@ import (
) )
const ( const (
//sqlite doesn't have an error type for this error, but we want to catch when this error is thrown
//and provide the proper response. It should not be treated as an error if the db isn't setup.
ErrInit = "sqlite3: SQL logic error: no such table: servers" ErrInit = "sqlite3: SQL logic error: no such table: servers"
ErrInitRsp = "The 'init' command must be run before mctl can be used" ErrInitRsp = "The 'init' command must be run before mctl can be used"
) )

View File

@ -30,9 +30,11 @@ var updateCmd = &cobra.Command{
defer db.Close() defer db.Close()
err = db.UpdateServer(args[0], base64.StdEncoding.EncodeToString(ps)) err = db.UpdateServer(args[0], base64.StdEncoding.EncodeToString(ps))
if err.Error() == ErrInit { if err != nil {
fmt.Println(ErrInitRsp) if err.Error() == ErrInit {
return fmt.Println(ErrInitRsp)
return
}
} }
cobra.CheckErr(err) cobra.CheckErr(err)

View File

@ -21,9 +21,11 @@ var viewCmd = &cobra.Command{
defer db.Close() defer db.Close()
ts, err := db.GetAllServers() ts, err := db.GetAllServers()
if err.Error() == ErrInit { if err != nil {
fmt.Println(ErrInitRsp) if err.Error() == ErrInit {
return fmt.Println(ErrInitRsp)
return
}
} }
cobra.CheckErr(err) cobra.CheckErr(err)