]> pd.if.org Git - pdclib/blob - functions/stdio/ftrylockfile.c
PDCLib includes with quotes, not <>.
[pdclib] / functions / stdio / ftrylockfile.c
1 /* ftrylockfile( FILE * )\r
2 \r
3    This file is part of the Public Domain C Library (PDCLib).\r
4    Permission is granted to use, modify, and / or redistribute at will.\r
5 */\r
6 \r
7 #include <stdio.h>\r
8 #include <stdarg.h>\r
9 \r
10 #ifndef REGTEST\r
11 #include "_PDCLIB_io.h"\r
12 #include <threads.h>\r
13 #include <stdlib.h>\r
14 \r
15 int _PDCLIB_ftrylockfile( FILE * file )\r
16 {\r
17     int res = mtx_trylock( &file->lock );\r
18     switch(res) {\r
19         case thrd_success:\r
20             return 0;\r
21         case thrd_busy:\r
22             return 1;\r
23 \r
24         default:\r
25             abort();\r
26     }\r
27 }\r
28 \r
29 #endif\r
30 \r
31 #ifdef TEST\r
32 #include "_PDCLIB_test.h"\r
33 \r
34 int main( void )\r
35 {\r
36     // Not tested here - tested by other stdio test drivers\r
37     return TEST_RESULTS;\r
38 }\r
39 \r
40 #endif\r