Skip to content

Question: chain.Unwrap behaviour #53

@rickb777

Description

@rickb777

chain.Unwrap() has a test to see whether the end of the chain has been reached. I don't understand this; is it correct?

multierror.go:

// Unwrap implements errors.Unwrap by returning the next error in the
// chain or nil if there are no more errors.
func (e chain) Unwrap() error {
	if len(e) == 1 {  // line 106
		return nil
	}

	return e[1:]
}

It seems to me that line 106 might have a mistake and should be if len(e) < 1 {.

Have I misunderstood this?

I am using v1.1.1.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions