Преглед на файлове

Better edge case handling

Ben Hood преди 12 години
родител
ревизия
712d53a3dc
променени са 1 файла, в които са добавени 5 реда и са изтрити 1 реда
  1. 5 1
      marshal.go

+ 5 - 1
marshal.go

@@ -717,8 +717,12 @@ func unmarshalDecimal(info *TypeInfo, data []byte, value interface{}) error {
 			scale := decInt(data[0:4])
 			unscaled := decBigInt2C(data[4:])
 			*v = inf.NewDecBig(unscaled, inf.Scale(scale))
+			return nil
+		} else if len(data) == 0 {
+			return nil
+		} else {
+			return unmarshalErrorf("can not unmarshal %s into %T", info, value)
 		}
-		return nil
 	}
 	return unmarshalErrorf("can not unmarshal %s into %T", info, value)
 }