always call the internal errorHandler()
Signed-off-by: Jeff Carr <jcarr@wit.com>
This commit is contained in:
parent
f59e1b1f84
commit
091f89c221
15
shell.go
15
shell.go
|
@ -27,12 +27,12 @@ var msecDelay int = 20 // number of milliseconds to delay between reads with no
|
||||||
var bytesBuffer bytes.Buffer
|
var bytesBuffer bytes.Buffer
|
||||||
var bytesSplice []byte
|
var bytesSplice []byte
|
||||||
|
|
||||||
func handleShell(c interface{}, ret int) {
|
func handleError(c interface{}, ret int) {
|
||||||
log.Println("shell.Run() Returned", ret)
|
log.Println("shell.Run() Returned", ret)
|
||||||
}
|
}
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
callback = handleShell
|
callback = handleError
|
||||||
}
|
}
|
||||||
|
|
||||||
func InitCallback(f func(interface{}, int)) {
|
func InitCallback(f func(interface{}, int)) {
|
||||||
|
@ -82,7 +82,7 @@ func Run(cmdline string) string {
|
||||||
cmd := Chomp(cmdline) // this is like 'chomp' in perl
|
cmd := Chomp(cmdline) // this is like 'chomp' in perl
|
||||||
cmdArgs := strings.Fields(cmd)
|
cmdArgs := strings.Fields(cmd)
|
||||||
if (len(cmdArgs) == 0) {
|
if (len(cmdArgs) == 0) {
|
||||||
callback(fmt.Errorf("cmdline == ''"), 0)
|
handleError(fmt.Errorf("cmdline == ''"), 0)
|
||||||
log.Debug("END ", cmd)
|
log.Debug("END ", cmd)
|
||||||
return "" // nothing to do
|
return "" // nothing to do
|
||||||
}
|
}
|
||||||
|
@ -91,6 +91,7 @@ func Run(cmdline string) string {
|
||||||
log.Println("os.Chdir()", cmd)
|
log.Println("os.Chdir()", cmd)
|
||||||
os.Chdir(cmdArgs[1])
|
os.Chdir(cmdArgs[1])
|
||||||
}
|
}
|
||||||
|
handleError(nil, 0)
|
||||||
log.Debug("END ", cmd)
|
log.Debug("END ", cmd)
|
||||||
return "" // nothing to do
|
return "" // nothing to do
|
||||||
}
|
}
|
||||||
|
@ -169,7 +170,8 @@ func Run(cmdline string) string {
|
||||||
log.Debug("ERROR ", err.Error())
|
log.Debug("ERROR ", err.Error())
|
||||||
log.Debug("END ", cmdline)
|
log.Debug("END ", cmdline)
|
||||||
// return -1, "", fmt.Errorf(err.Error())
|
// return -1, "", fmt.Errorf(err.Error())
|
||||||
callback(fmt.Errorf(err.Error()), -1)
|
// handleError(fmt.Errorf(err.Error()), -1)
|
||||||
|
handleError(err, -1)
|
||||||
return ""
|
return ""
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -189,8 +191,8 @@ func Run(cmdline string) string {
|
||||||
tmp2 := string(b)
|
tmp2 := string(b)
|
||||||
tmp2 = strings.TrimSuffix(tmp2, "\n")
|
tmp2 = strings.TrimSuffix(tmp2, "\n")
|
||||||
log.Println("shell.Run() END ", cmdline)
|
log.Println("shell.Run() END ", cmdline)
|
||||||
log.Println("shell.Run() calling callback() :")
|
log.Println("shell.Run() calling handleError() :")
|
||||||
callback(fmt.Errorf("no error"), 0)
|
handleError(nil, 0)
|
||||||
return Chomp(b)
|
return Chomp(b)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -218,6 +220,7 @@ func NonBlockingReader(buffReader *bufio.Reader, writeFileHandle *os.File) {
|
||||||
count, err := nbr.Read(oneByte)
|
count, err := nbr.Read(oneByte)
|
||||||
if (err != nil) {
|
if (err != nil) {
|
||||||
log.Debug("count, err =", count, err)
|
log.Debug("count, err =", count, err)
|
||||||
|
handleError(err, -1)
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
totalCount += count
|
totalCount += count
|
||||||
|
|
Loading…
Reference in New Issue