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