浏览代码

fix return value parsing

Darien Raymond 7 年之前
父节点
当前提交
07a7597ee8
共有 1 个文件被更改,包括 6 次插入2 次删除
  1. 6 2
      v2ray.go

+ 6 - 2
v2ray.go

@@ -71,8 +71,12 @@ func (r *resolution) resolve(allFeatures []features.Feature) (bool, error) {
 	ret := callback.Call(input)
 	errInterface := reflect.TypeOf((*error)(nil)).Elem()
 	for i := len(ret) - 1; i >= 0; i-- {
-		if ret[i].Type().Implements(errInterface) {
-			err = ret[i].Interface().(error)
+		if ret[i].Type() == errInterface {
+			v := ret[i].Interface()
+			if v != nil {
+				err = v.(error)
+			}
+			break
 		}
 	}