aboutsummaryrefslogtreecommitdiff
path: root/multimedia/transcode/files/patch-libtc-tc_functions.c
diff options
context:
space:
mode:
Diffstat (limited to 'multimedia/transcode/files/patch-libtc-tc_functions.c')
-rw-r--r--multimedia/transcode/files/patch-libtc-tc_functions.c33
1 files changed, 33 insertions, 0 deletions
diff --git a/multimedia/transcode/files/patch-libtc-tc_functions.c b/multimedia/transcode/files/patch-libtc-tc_functions.c
new file mode 100644
index 000000000000..0104d1240ecb
--- /dev/null
+++ b/multimedia/transcode/files/patch-libtc-tc_functions.c
@@ -0,0 +1,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