[vlc-commits] lib: check scale range in libvlc_video_set_scale()

Rémi Denis-Courmont git at videolan.org
Tue May 20 13:10:28 CEST 2014


vlc | branch: master | Rémi Denis-Courmont <remi at remlab.net> | Mon May 19 19:11:04 2014 +0800| [6e96d8a9158caf2551f363b6939765b08997d66d] | committer: Rémi Denis-Courmont

lib: check scale range in libvlc_video_set_scale()

> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6e96d8a9158caf2551f363b6939765b08997d66d
---

 lib/video.c |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/lib/video.c b/lib/video.c
index d6c2f94..c8b3711 100644
--- a/lib/video.c
+++ b/lib/video.c
@@ -38,6 +38,7 @@
 #include <vlc_vout.h>
 
 #include "media_player_internal.h"
+#include <math.h>
 #include <assert.h>
 
 /*
@@ -237,7 +238,7 @@ float libvlc_video_get_scale( libvlc_media_player_t *mp )
 
 void libvlc_video_set_scale( libvlc_media_player_t *p_mp, float f_scale )
 {
-    if (f_scale != 0.)
+    if (isfinite(f_scale) && f_scale != 0.f)
         var_SetFloat (p_mp, "scale", f_scale);
     var_SetBool (p_mp, "autoscale", f_scale == 0.f);
 
@@ -248,7 +249,7 @@ void libvlc_video_set_scale( libvlc_media_player_t *p_mp, float f_scale )
     {
         vout_thread_t *p_vout = pp_vouts[i];
 
-        if (f_scale != 0.)
+        if (isfinite(f_scale) && f_scale != 0.f)
             var_SetFloat (p_vout, "scale", f_scale);
         var_SetBool (p_vout, "autoscale", f_scale == 0.f);
         vlc_object_release (p_vout);



More information about the vlc-commits mailing list