Only call isqrt32() with a positive argument

Fixes test_opus_projection failure under ubsan, due to clz(0).
This commit is contained in:
Mark Harris 2018-05-27 17:47:28 -07:00
parent 287cb030ab
commit 697beca22d
No known key found for this signature in database
GPG key ID: 92293B4D0118BDB0
3 changed files with 12 additions and 7 deletions

View file

@ -38,7 +38,8 @@
#include "mathops.h"
/*Compute floor(sqrt(_val)) with exact arithmetic.
This has been tested on all possible 32-bit inputs.*/
_val must be greater than 0.
This has been tested on all possible 32-bit inputs greater than 0.*/
unsigned isqrt32(opus_uint32 _val){
unsigned b;
unsigned g;