vlc | branch: master | Thomas Guillem <[email protected]> | Tue Nov 27 14:55:57 2018 +0100| [6fec0cfefcef1b4b5c807bd936765f6d4acf489d] | committer: Thomas Guillem
test: dump core on timeout > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=6fec0cfefcef1b4b5c807bd936765f6d4acf489d --- test/libvlc/test.h | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/test/libvlc/test.h b/test/libvlc/test.h index 57bf787514..efd0b3294b 100644 --- a/test/libvlc/test.h +++ b/test/libvlc/test.h @@ -41,7 +41,7 @@ #include <stdlib.h> #include <stdbool.h> #include <unistd.h> - +#include <signal.h> /********************************************************************* * Some useful global var @@ -65,6 +65,12 @@ static const char test_default_video[] = SRCDIR"/samples/image.jpg"; #define test_log( ... ) printf( "testapi: " __VA_ARGS__ ); +static inline void on_timeout(int signum) +{ + assert(signum == SIGALRM); + abort(); /* Cause a core dump */ +} + static inline void test_init (void) { (void)test_default_sample; /* This one may not be used */ @@ -84,7 +90,13 @@ static inline void test_init (void) alarm_timeout = val; } if (alarm_timeout != 0) + { + struct sigaction sig = { + .sa_handler = on_timeout, + }; + sigaction(SIGALRM, &sig, NULL); alarm (alarm_timeout); + } setenv( "VLC_PLUGIN_PATH", "../modules", 1 ); } _______________________________________________ vlc-commits mailing list [email protected] https://mailman.videolan.org/listinfo/vlc-commits
