[FFmpeg-cvslog] avdevice/x11grab: use av_clip() instead of nested min & max

Clément Bœsch git at videolan.org
Sat Jun 6 13:18:36 CEST 2015


ffmpeg | branch: master | Clément Bœsch <u at pkh.me> | Sat Jun  6 12:59:46 2015 +0200| [272f87fc5ca9fe8a0bee3f0ea2037b4626454195] | committer: Clément Bœsch

avdevice/x11grab: use av_clip() instead of nested min & max

Note: [xy]_off and screen_[wh] variables are int, as well as
X11GrabContext.{width,height,x_off,y_off}.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=272f87fc5ca9fe8a0bee3f0ea2037b4626454195
---

 libavdevice/x11grab.c |    8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/libavdevice/x11grab.c b/libavdevice/x11grab.c
index d3b0b02..bdfaa66 100644
--- a/libavdevice/x11grab.c
+++ b/libavdevice/x11grab.c
@@ -315,8 +315,8 @@ static int x11grab_read_header(AVFormatContext *s1)
                       &ret, &ret, &ret);
         x_off -= x11grab->width / 2;
         y_off -= x11grab->height / 2;
-        x_off  = FFMIN(FFMAX(x_off, 0), screen_w - x11grab->width);
-        y_off  = FFMIN(FFMAX(y_off, 0), screen_h - x11grab->height);
+        x_off = av_clip(x_off, 0, screen_w - x11grab->width);
+        y_off = av_clip(y_off, 0, screen_h - x11grab->height);
         av_log(s1, AV_LOG_INFO,
                "followmouse is enabled, resetting grabbing region to x: %d y: %d\n",
                x_off, y_off);
@@ -587,8 +587,8 @@ static int x11grab_read_packet(AVFormatContext *s1, AVPacket *pkt)
                 y_off -= (y_off + follow_mouse) - pointer_y;
         }
         // adjust grabbing region position if it goes out of screen.
-        s->x_off = x_off = FFMIN(FFMAX(x_off, 0), screen_w - s->width);
-        s->y_off = y_off = FFMIN(FFMAX(y_off, 0), screen_h - s->height);
+        s->x_off = x_off = av_clip(x_off, 0, screen_w - s->width);
+        s->y_off = y_off = av_clip(y_off, 0, screen_h - s->height);
 
         if (s->show_region && s->region_win)
             XMoveWindow(dpy, s->region_win,



More information about the ffmpeg-cvslog mailing list