blob: 0104d1240ecbfc4de057258abdf88c8e716e2489 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
--- libtc/tc_functions.c.orig 2008-08-09 17:24:38.000000000 -0400
+++ libtc/tc_functions.c 2009-02-01 22:13:42.000000000 -0500
@@ -534,6 +534,15 @@
/* char device could be several things, depending on system */
/* *BSD DVD device? v4l? bktr? sunau? */
if(S_ISCHR(fbuf.st_mode)) {
+#ifdef __FreeBSD__
+ if (strstr(name, "bktr") || strstr(name, "tuner") || strstr(name, "wbi"))
+ return TC_PROBE_PATH_BKTR;
+ else if (strstr(name, "dsp") || strstr(name, "audio") || strstr(name, "music"))
+ return TC_PROBE_PATH_OSS;
+ else
+ return TC_PROBE_PATH_ABSPATH;
+#endif
+
switch (major(fbuf.st_rdev)) {
#ifdef OS_BSD
# ifdef __OpenBSD__
@@ -544,14 +553,6 @@
case 49: /* bktr */
return TC_PROBE_PATH_BKTR;
# endif
-# ifdef __FreeBSD__
- case 4: /* acd */
- return TC_PROBE_PATH_ABSPATH;
- case 229: /* bktr */
- return TC_PROBE_PATH_BKTR;
- case 0: /* OSS */
- return TC_PROBE_PATH_OSS;
-# endif
default: /* libdvdread uses "raw" disk devices here */
return TC_PROBE_PATH_ABSPATH;
#else
|