I have noticed that the "errno" variable is being
explicitly declared in the DVD input plugin as an int.
I think that this is a very bad idea. The errno
variable will (probably) only ever be an int if the
module is compiled as single-threaded. In a
multi-threaded build, each thread would need its own
errno, meaning that it could actually be a #define
hiding a more complicated use of thread-specific
storage. This is precisely why there is an errno.h
file, which is already being included.
Do many other xine modules do this, too?
$ cvsxine diff -u src/input/input_dvd.c
retrieving revision 1.124
diff -u -u -r1.124 input_dvd.c
--- src/input/input_dvd.c 22 Dec 2002 23:35:42
+++ src/input/input_dvd.c 27 Dec 2002 11:17:30
@@ -130,7 +130,6 @@
/* Globals */
-extern int errno;
/* Array to hold MRLs returned by get_autoplay_list
#define MAX_DIR_ENTRIES 1250
Do You Yahoo!?
Everything you'll ever need on one web page
from News and Sport to Email and Music Charts