@@ -203,7 +203,7 @@ func (d *Datagram) String() string {
203203// Returns datagram body value as a float32
204204func (d * Datagram ) Float32 () (val float32 , err error ) {
205205 if len (d .Data ) != 4 {
206- return 0 , fmt .Errorf ("invalid data length %d" , len (d .Data ))
206+ return 0 , RecoverableError { fmt .Sprintf ("invalid data length %d" , len (d .Data ))}
207207 }
208208
209209 return math .Float32frombits (binary .BigEndian .Uint32 (d .Data )), nil
@@ -212,7 +212,7 @@ func (d *Datagram) Float32() (val float32, err error) {
212212// Returns datagram body value as a uint16
213213func (d * Datagram ) Uint16 () (val uint16 , err error ) {
214214 if len (d .Data ) != 2 {
215- return 0 , fmt .Errorf ("invalid data length %d" , len (d .Data ))
215+ return 0 , RecoverableError { fmt .Sprintf ("invalid data length %d" , len (d .Data ))}
216216 }
217217
218218 return binary .BigEndian .Uint16 (d .Data ), nil
@@ -221,7 +221,7 @@ func (d *Datagram) Uint16() (val uint16, err error) {
221221// Returns datagram body value as a uint8
222222func (d * Datagram ) Uint8 () (val uint8 , err error ) {
223223 if len (d .Data ) != 1 {
224- return 0 , fmt .Errorf ("invalid data length %d" , len (d .Data ))
224+ return 0 , RecoverableError { fmt .Sprintf ("invalid data length %d" , len (d .Data ))}
225225 }
226226
227227 return uint8 (d .Data [0 ]), nil
0 commit comments