[vlc-commits] [Git][videolan/vlc][master] 5 commits: xiph: use truth value for test results
Hugo Beauzée-Luyssen (@chouquette)
gitlab at videolan.org
Tue Sep 14 11:31:54 UTC 2021
Hugo Beauzée-Luyssen pushed to branch master at VideoLAN / VLC
Commits:
262997e9 by Rémi Denis-Courmont at 2021-09-13T18:19:59+03:00
xiph: use truth value for test results
Not exact (and mismatched) defines.
- - - - -
ccef59c9 by Rémi Denis-Courmont at 2021-09-13T18:20:40+03:00
lua: match strerror() case
- - - - -
83541df6 by Rémi Denis-Courmont at 2021-09-13T18:20:48+03:00
include: map VLC_EGENERIC to INT_MIN
VLC_EGENERIC has no equivalent in <errno.h>, so it should not alias any
<errno.h> value. This maps it to INT_MIN. It works because -INT_MIN equals
INT_MAX + 1, which is out of range of `int`. As a reminder codes in
<errno.h> are positive integers.
The convoluted definition is to avoid pulling <limits.h> into
<vlc_common.h> and from there all over the code base.
- - - - -
2d80a675 by Rémi Denis-Courmont at 2021-09-13T18:20:49+03:00
include: use negated standard error codes
- - - - -
0f2a579a by Rémi Denis-Courmont at 2021-09-13T18:21:01+03:00
lua: simplify strerror() usage
- - - - -
3 changed files:
- include/vlc_common.h
- modules/demux/xiph_test.c
- modules/lua/libs/misc.c
Changes:
=====================================
include/vlc_common.h
=====================================
@@ -44,6 +44,7 @@
*****************************************************************************/
#include <stdlib.h>
#include <stdarg.h>
+#include <errno.h>
#include <string.h>
#include <stdio.h>
@@ -463,25 +464,29 @@ typedef union
} vlc_value_t;
-/*****************************************************************************
- * Error values (shouldn't be exposed)
- *****************************************************************************/
+/**
+ * \defgroup errors Error codes
+ * \ingroup cext
+ * @{
+ */
/** No error */
-#define VLC_SUCCESS (-0)
+#define VLC_SUCCESS 0
/** Unspecified error */
-#define VLC_EGENERIC (-1)
+#define VLC_EGENERIC (-2 * (1 << (sizeof (int) * 8 - 2))) /* INT_MIN */
/** Not enough memory */
-#define VLC_ENOMEM (-2)
+#define VLC_ENOMEM (-ENOMEM)
/** Timeout */
-#define VLC_ETIMEOUT (-3)
+#define VLC_ETIMEOUT (-ETIMEDOUT)
/** Not found */
-#define VLC_ENOENT (-4)
+#define VLC_ENOENT (-ENOENT)
/** Bad variable value */
-#define VLC_EINVAL (-7)
+#define VLC_EINVAL (-EINVAL)
/** Operation forbidden */
-#define VLC_EACCES (-9)
+#define VLC_EACCES (-EACCES)
/** Operation not supported */
-#define VLC_ENOTSUP (-10)
+#define VLC_ENOTSUP (-ENOTSUP)
+
+/** @} */
/*****************************************************************************
* Variable callbacks: called when the value is modified
=====================================
modules/demux/xiph_test.c
=====================================
@@ -41,12 +41,6 @@ static const uint8_t xiphlavc0[] = { 0x00, 30,
0x01,
0x00, 0x00 };
-enum
-{
- OK = VLC_SUCCESS,
- FAIL = VLC_EGENERIC,
-};
-
struct params_s
{
const void *packets[XIPH_MAX_HEADER_COUNT];
@@ -61,7 +55,10 @@ struct params_s
#define BAILOUT(run) { fprintf(stderr, "failed %s line %d\n", run, __LINE__); \
return 1; }
#define RUN(run, test, a, b, res) \
- if(test(#test " " run, a, b, ¶ms) != res) BAILOUT(#test " " run)
+ if((!test(#test " " run, a, b, ¶ms)) != res) \
+ BAILOUT(#test " " run)
+#define PASS(run, test, a, b) RUN(run, test, a, b, true)
+#define FAIL(run, test, a, b) RUN(run, test, a, b, false)
#define EXPECT(foo) if(!(foo)) BAILOUT(run)
#define EXPECT_CLEANUP(foo, cleanup) if(!(foo)) { cleanup; BAILOUT(run) }
@@ -70,7 +67,7 @@ static int test_xiph_IsLavcFormat(const char *run,
const struct params_s *source)
{
EXPECT(xiph_IsLavcFormat(p_extra, i_extra, source->codec) == source->lavc);
- return OK;
+ return 0;
}
static int test_xiph_CountHeaders(const char *run,
@@ -78,7 +75,7 @@ static int test_xiph_CountHeaders(const char *run,
const struct params_s *source)
{
EXPECT(xiph_CountHeaders(p_extra, i_extra) == source->packets_count);
- return OK;
+ return 0;
}
static int test_xiph_CountLavcHeaders(const char *run,
@@ -86,7 +83,7 @@ static int test_xiph_CountLavcHeaders(const char *run,
const struct params_s *source)
{
EXPECT(xiph_CountLavcHeaders(p_extra, i_extra) == source->packets_count);
- return OK;
+ return 0;
}
static int SplitCompare(const char *run,
@@ -174,44 +171,44 @@ int main(void)
params.codec = VLC_CODEC_VORBIS;
/* check if we can detect lavc format */
- RUN("0", test_xiph_IsLavcFormat, xiph0, 0, OK);
- RUN("1", test_xiph_IsLavcFormat, xiph0, 1, OK);
- RUN("2", test_xiph_IsLavcFormat, xiph0, 2, OK);
- RUN("3", test_xiph_IsLavcFormat, xiph0, 6, OK);
- RUN("lavc0", test_xiph_IsLavcFormat, xiph0, 0, OK);
- RUN("lavc1", test_xiph_IsLavcFormat, xiph0, 1, OK);
- RUN("lavc2", test_xiph_IsLavcFormat, xiph0, 6, OK);
- RUN("lavc3", test_xiph_IsLavcFormat, xiphlavc0, 0, OK);
- RUN("lavc4", test_xiph_IsLavcFormat, xiphlavc0, 1, OK);
+ PASS("0", test_xiph_IsLavcFormat, xiph0, 0);
+ PASS("1", test_xiph_IsLavcFormat, xiph0, 1);
+ PASS("2", test_xiph_IsLavcFormat, xiph0, 2);
+ PASS("3", test_xiph_IsLavcFormat, xiph0, 6);
+ PASS("lavc0", test_xiph_IsLavcFormat, xiph0, 0);
+ PASS("lavc1", test_xiph_IsLavcFormat, xiph0, 1);
+ PASS("lavc2", test_xiph_IsLavcFormat, xiph0, 6);
+ PASS("lavc3", test_xiph_IsLavcFormat, xiphlavc0, 0);
+ PASS("lavc4", test_xiph_IsLavcFormat, xiphlavc0, 1);
params.lavc = true;
- RUN("lavc5", test_xiph_IsLavcFormat, xiphlavc0, 37, OK);
+ PASS("lavc5", test_xiph_IsLavcFormat, xiphlavc0, 37);
params.codec = 0;
params.lavc = false;
- RUN("lavc6", test_xiph_IsLavcFormat, xiphlavc0, 37, OK);
+ PASS("lavc6", test_xiph_IsLavcFormat, xiphlavc0, 37);
/* check count and return 0 on error */
params.packets_count = 0;
- RUN("0", test_xiph_CountHeaders, xiph0, 0, OK);
+ PASS("0", test_xiph_CountHeaders, xiph0, 0);
params.packets_count = 1;
- RUN("1", test_xiph_CountHeaders, xiph0, 1, OK);
+ PASS("1", test_xiph_CountHeaders, xiph0, 1);
params.packets_count = 3;
- RUN("2", test_xiph_CountHeaders, xiph1, 11, OK);
+ PASS("2", test_xiph_CountHeaders, xiph1, 11);
/* check lavc only valid with count == 3 */
params.packets_count = 3;
params.codec = VLC_CODEC_VORBIS;
- RUN("lavc0", test_xiph_CountLavcHeaders, xiphlavc0, 37, OK);
+ PASS("lavc0", test_xiph_CountLavcHeaders, xiphlavc0, 37);
params.packets_count = 0;
- RUN("lavc1", test_xiph_CountLavcHeaders, xiphlavc0, 35, OK);
- RUN("lavc2", test_xiph_CountLavcHeaders, xiphlavc0, 0, OK);
+ PASS("lavc1", test_xiph_CountLavcHeaders, xiphlavc0, 35);
+ PASS("lavc2", test_xiph_CountLavcHeaders, xiphlavc0, 0);
/* check split on single/trail packet (no index) */
params.packets[0] = &xiph0[1];
params.packets_sizes[0] = 5;
params.packets_count = 1;
- RUN("0", test_xiph_SplitHeaders, xiph0, 6, OK);
+ PASS("0", test_xiph_SplitHeaders, xiph0, 6);
params.packets_sizes[0] = 0;
- RUN("1", test_xiph_SplitHeaders, xiph0, 1, OK);
+ PASS("1", test_xiph_SplitHeaders, xiph0, 1);
/* check split */
params.packets_count = 3;
@@ -221,22 +218,22 @@ int main(void)
params.packets_sizes[1] = 1;
params.packets[2] = &xiph1[9];
params.packets_sizes[2] = 2;
- RUN("2", test_xiph_SplitHeaders, xiph1, 11, OK);
- RUN("3", test_xiph_SplitHeaders, xiph1, 7, FAIL);
+ PASS("2", test_xiph_SplitHeaders, xiph1, 11);
+ FAIL("3", test_xiph_SplitHeaders, xiph1, 7);
/* check variable length decoding */
uint8_t xiph2[265];
memset(xiph2, 0xFF, 265);
- RUN("4", test_xiph_SplitHeaders, xiph2, 265, FAIL);
+ FAIL("4", test_xiph_SplitHeaders, xiph2, 265);
xiph2[0] = 1;
- RUN("5", test_xiph_SplitHeaders, xiph2, 265, FAIL);
+ FAIL("5", test_xiph_SplitHeaders, xiph2, 265);
xiph2[2] = 1;
params.packets_count = 2;
params.packets[0] = &xiph2[3];
params.packets_sizes[0] = 256;
params.packets[1] = &xiph2[3+256];
params.packets_sizes[1] = 6;
- RUN("6", test_xiph_SplitHeaders, xiph2, 265, OK);
+ PASS("6", test_xiph_SplitHeaders, xiph2, 265);
/* /!\ xiph2 content reused in another test below */
/* check lavc split */
@@ -247,21 +244,21 @@ int main(void)
params.packets_sizes[1] = 1;
params.packets[2] = &xiphlavc0[37];
params.packets_sizes[2] = 0;
- RUN("lavc0", test_xiph_SplitLavcHeaders, xiphlavc0, 37, OK);
- RUN("lavc1", test_xiph_SplitLavcHeaders, xiphlavc0, 36, FAIL);
- RUN("lavc2", test_xiph_SplitLavcHeaders, xiphlavc0, 31, FAIL);
+ PASS("lavc0", test_xiph_SplitLavcHeaders, xiphlavc0, 37);
+ FAIL("lavc1", test_xiph_SplitLavcHeaders, xiphlavc0, 36);
+ FAIL("lavc2", test_xiph_SplitLavcHeaders, xiphlavc0, 31);
/* Test single packet packing */
params.packets_count = XIPH_MAX_HEADER_COUNT + 1;
- RUN("0", test_xiph_PackHeaders, xiph0, 6, FAIL);
+ FAIL("0", test_xiph_PackHeaders, xiph0, 6);
params.packets_count = 1;
params.packets[0] = &xiph0[1];
params.packets_sizes[0] = 5;
- RUN("1", test_xiph_PackHeaders, xiph0, 6, OK);
+ PASS("1", test_xiph_PackHeaders, xiph0, 6);
/* Test multiple packets packing */
params.packets_count = 0;
- RUN("2", test_xiph_PackHeaders, xiph1, 11, FAIL);
+ FAIL("2", test_xiph_PackHeaders, xiph1, 11);
params.packets_count = 3;
params.packets[0] = &xiph1[3];
params.packets_sizes[0] = 5;
@@ -269,7 +266,7 @@ int main(void)
params.packets_sizes[1] = 1;
params.packets[2] = &xiph1[9];
params.packets_sizes[2] = 2;
- RUN("3", test_xiph_PackHeaders, xiph1, 11, OK);
+ PASS("3", test_xiph_PackHeaders, xiph1, 11);
/* Test multiple packets packing variable length encoding */
params.packets_count = 2;
@@ -277,20 +274,20 @@ int main(void)
params.packets_sizes[0] = 256;
params.packets[1] = &xiph2[3+256];
params.packets_sizes[1] = 6;
- RUN("4", test_xiph_PackHeaders, xiph2, 265, OK);
+ PASS("4", test_xiph_PackHeaders, xiph2, 265);
/* Appending */
params.i_append = 0;
params.p_append = NULL;
params.packets[0] = &xiph0[1];
params.packets_sizes[0] = 5;
- RUN("0", test_xiph_AppendHeaders, xiph0, 6, OK);
+ PASS("0", test_xiph_AppendHeaders, xiph0, 6);
/* append second time */
xiph2[0] = 1;
xiph2[1] = 5;
memcpy(&xiph2[2+0], &xiph0[1], 5);
memcpy(&xiph2[2+5], &xiph0[1], 5);
- RUN("1", test_xiph_AppendHeaders, xiph2, 12, OK);
+ PASS("1", test_xiph_AppendHeaders, xiph2, 12);
/* check append array overflow */
free(params.p_append);
params.i_append = 0;
@@ -301,7 +298,7 @@ int main(void)
xiph2[0] = i;
xiph2[1 + i] = 0;
RUN("2", test_xiph_AppendHeaders, xiph2, 1 + i,
- ((i < XIPH_MAX_HEADER_COUNT) ? OK : FAIL) );
+ (i < XIPH_MAX_HEADER_COUNT) );
}
free(params.p_append);
=====================================
modules/lua/libs/misc.c
=====================================
@@ -90,26 +90,16 @@ vlc_player_t *vlclua_get_player_internal( lua_State *L )
*****************************************************************************/
int vlclua_push_ret( lua_State *L, int i_error )
{
+ const char *str;
+
lua_pushnumber( L, i_error );
- int err;
-
- switch( i_error )
- {
- case VLC_SUCCESS: err = 0; break;
- case VLC_ENOMEM: err = ENOMEM; break;
- case VLC_ETIMEOUT: err = ETIMEDOUT; break;
- case VLC_EINVAL: err = EINVAL; break;
- case VLC_ENOENT: err = ENOENT; break;
- case VLC_EGENERIC:
- lua_pushstring( L, "generic error" );
- return 2;
- default:
- lua_pushstring( L, "unknown error" );
- return 2;
- }
-
- lua_pushstring( L, vlc_strerror_c(err) );
+ if( i_error == VLC_EGENERIC )
+ str = "Generic error";
+ else
+ str = vlc_strerror_c( -i_error );
+
+ lua_pushstring( L, str );
return 2;
}
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/10d1e17325e6058e0448081d5b68bdb29d9cf440...0f2a579ab27a76daf741313329426c16d7bf77e7
--
View it on GitLab: https://code.videolan.org/videolan/vlc/-/compare/10d1e17325e6058e0448081d5b68bdb29d9cf440...0f2a579ab27a76daf741313329426c16d7bf77e7
You're receiving this email because of your account on code.videolan.org.
More information about the vlc-commits
mailing list