[FFmpeg-cvslog] avutil/log: added test case for av_log_format_line2

Andreas Weis git at videolan.org
Wed Apr 27 19:25:17 CEST 2016


ffmpeg | branch: master | Andreas Weis <github at ghulbus-inc.de> | Wed Apr 27 08:15:18 2016 +0200| [333207224fd8b81a8376c0b6d39bdf2421d53180] | committer: Michael Niedermayer

avutil/log: added test case for av_log_format_line2

Signed-off-by: Andreas Weis <github at ghulbus-inc.de>
Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>

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

 libavutil/log.c |   30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/libavutil/log.c b/libavutil/log.c
index 0efba7a..7e279ad 100644
--- a/libavutil/log.c
+++ b/libavutil/log.c
@@ -444,6 +444,17 @@ void avpriv_report_missing_feature(void *avc, const char *msg, ...)
 // LCOV_EXCL_START
 #include <string.h>
 
+static int call_log_format_line2(const char *fmt, char *buffer, int buffer_size, ...)
+{
+    va_list args;
+    int ret;
+    int print_prefix=1;
+    va_start(args, buffer_size);
+    ret = av_log_format_line2(NULL, AV_LOG_INFO, fmt, args, buffer, buffer_size, &print_prefix);
+    va_end(args);
+    return ret;
+}
+
 int main(int argc, char **argv)
 {
     int i;
@@ -458,6 +469,25 @@ int main(int argc, char **argv)
         }
         av_log(NULL, AV_LOG_PANIC, "\n");
     }
+    {
+        int result;
+        char buffer[4];
+        result = call_log_format_line2("foo", NULL, 0);
+        if(result != 3) {
+            printf("Test NULL buffer failed.\n");
+            return 1;
+        }
+        result = call_log_format_line2("foo", buffer, 2);
+        if(result != 3 || strncmp(buffer, "f", 2)) {
+            printf("Test buffer too small failed.\n");
+            return 1;
+        }
+        result = call_log_format_line2("foo", buffer, 4);
+        if(result != 3 || strncmp(buffer, "foo", 4)) {
+            printf("Test buffer sufficiently big failed.\n");
+            return 1;
+        }
+    }
     return 0;
 }
 // LCOV_EXCL_STOP



More information about the ffmpeg-cvslog mailing list