stdlib: An implementation of SDL_scalbn using ldexp() (thanks, Ozkan!). Fixes Bugzilla #3767.
diff --git a/src/stdlib/SDL_stdlib.c b/src/stdlib/SDL_stdlib.c
index 194298d..36b5548 100644
--- a/src/stdlib/SDL_stdlib.c
+++ b/src/stdlib/SDL_stdlib.c
@@ -187,6 +187,10 @@ SDL_scalbn(double x, int n)
return scalbn(x, n);
#elif defined(HAVE__SCALB)
return _scalb(x, n);
+#elif defined(HAVE_LIBC) && defined(HAVE_FLOAT_H) && (FLT_RADIX == 2)
+/* from scalbn(3): If FLT_RADIX equals 2 (which is
+ * usual), then scalbn() is equivalent to ldexp(3). */
+ return ldexp(x, n);
#else
return SDL_uclibc_scalbn(x, n);
#endif /* HAVE_SCALBN */