File tree 1 file changed +14
-2
lines changed
1 file changed +14
-2
lines changed Original file line number Diff line number Diff line change @@ -7,7 +7,13 @@ import (
7
7
)
8
8
9
9
// Encode a Go interface into a Value interface.
10
- func Encode (v interface {}) (Value , error ) {
10
+ func Encode (v interface {}) (val Value , err error ) {
11
+ defer func () {
12
+ if r := recover (); r != nil {
13
+ err = fmt .Errorf ("recovered: %v" , err )
14
+ return
15
+ }
16
+ }()
11
17
12
18
// If the interface is already a value, then immediately return the
13
19
// interface without modification.
@@ -126,7 +132,13 @@ func Encode(v interface{}) (Value, error) {
126
132
127
133
// Decode a Value interface into a Go interface. The Go interface must be a
128
134
// pointer.
129
- func Decode (interf interface {}, v Value ) error {
135
+ func Decode (interf interface {}, v Value ) (err error ) {
136
+ defer func () {
137
+ if r := recover (); r != nil {
138
+ err = fmt .Errorf ("recovered: %v" , err )
139
+ return
140
+ }
141
+ }()
130
142
131
143
// If the interface-to-be-decoded-into is a value, then check the type of
132
144
// the value-to-be-decoded, and assign.
You can’t perform that action at this time.
0 commit comments