resetting controllers on new repo

This commit is contained in:
Jesse Duffield 2022-01-31 22:11:34 +11:00
parent eb056576cf
commit 2a1e3faa0c
76 changed files with 514 additions and 370 deletions

View file

@ -79,3 +79,4 @@ This package is licensed under the MIT license, see LICENSE.MIT for details.
> ```
* v1.4.0 *BREAKING* v1.4.0 reverted all changes from v1.3.0 and is identical to v1.2.0
* v1.4.1 no code change, but now without an unnecessary cover.out file.
* v1.4.2 performance improvement to ErrorStack() to avoid unnecessary work https://github.com/go-errors/errors/pull/40

View file

@ -53,7 +53,7 @@ func (frame *StackFrame) Func() *runtime.Func {
func (frame *StackFrame) String() string {
str := fmt.Sprintf("%s:%d (0x%x)\n", frame.File, frame.LineNumber, frame.ProgramCounter)
source, err := frame.SourceLine()
source, err := frame.sourceLine()
if err != nil {
return str
}
@ -63,13 +63,21 @@ func (frame *StackFrame) String() string {
// SourceLine gets the line of code (from File and Line) of the original source if possible.
func (frame *StackFrame) SourceLine() (string, error) {
source, err := frame.sourceLine()
if err != nil {
return source, New(err)
}
return source, err
}
func (frame *StackFrame) sourceLine() (string, error) {
if frame.LineNumber <= 0 {
return "???", nil
}
file, err := os.Open(frame.File)
if err != nil {
return "", New(err)
return "", err
}
defer file.Close()
@ -82,7 +90,7 @@ func (frame *StackFrame) SourceLine() (string, error) {
currentLine++
}
if err := scanner.Err(); err != nil {
return "", New(err)
return "", err
}
return "???", nil