| @@ -1,28 +1,40 @@ | | | @@ -1,28 +1,40 @@ |
1 | $NetBSD: patch-aa,v 1.1 2005/10/03 12:35:39 joerg Exp $ | | 1 | $NetBSD: patch-aa,v 1.2 2013/01/21 22:24:56 jperkin Exp $ |
2 | | | 2 | |
3 | --- cd-discid.c.orig 2005-07-22 16:14:41.000000000 +0000 | | 3 | - Add support for DragonFly |
4 | +++ cd-discid.c | | 4 | - Fix output on OSX |
| | | 5 | |
| | | 6 | --- cd-discid.c.orig 2003-12-15 23:55:00.000000000 +0000 |
| | | 7 | +++ cd-discid.c 2013-01-21 22:20:21.000000000 +0000 |
5 | @@ -37,7 +37,7 @@ | | 8 | @@ -37,7 +37,7 @@ |
6 | * to compile on Solaris */ | | 9 | * to compile on Solaris */ |
7 | #define cdte_track_address cdte_addr.lba | | 10 | #define cdte_track_address cdte_addr.lba |
8 | | | 11 | |
9 | -#elif defined(__FreeBSD__) | | 12 | -#elif defined(__FreeBSD__) |
10 | +#elif defined(__FreeBSD__) || defined(__DragonFly__) | | 13 | +#elif defined(__FreeBSD__) || defined(__DragonFly__) |
11 | | | 14 | |
12 | #include <sys/cdio.h> | | 15 | #include <sys/cdio.h> |
13 | #define CDROM_LBA CD_LBA_FORMAT /* first frame is 0 */ | | 16 | #define CDROM_LBA CD_LBA_FORMAT /* first frame is 0 */ |
14 | @@ -214,12 +214,12 @@ int main(int argc, char *argv[]) | | 17 | @@ -194,7 +194,7 @@ |
| | | 18 | * TocEntry[last-1].lastRecordedAddress + 1, so we compute the start |
| | | 19 | * of leadout from the start+length of the last track instead |
| | | 20 | */ |
| | | 21 | - TocEntry[last].cdte_track_address = TocEntry[last-1].trackSize + TocEntry[last-1].trackStartAddress; |
| | | 22 | + TocEntry[last].cdte_track_address = htonl(ntohl(TocEntry[last-1].trackSize) + ntohl(TocEntry[last-1].trackStartAddress)); |
| | | 23 | #else /* FreeBSD, Linux, Solaris */ |
| | | 24 | for (i=0; i < last; i++) { |
| | | 25 | /* tracks start with 1, but I must start with 0 on OpenBSD */ |
| | | 26 | @@ -214,12 +214,12 @@ |
15 | } | | 27 | } |
16 | #endif | | 28 | #endif |
17 | | | 29 | |
18 | -#if defined(__FreeBSD__) | | 30 | -#if defined(__FreeBSD__) |
19 | +#if defined(__FreeBSD__) || defined(__DragonFly__) | | 31 | +#if defined(__FreeBSD__) || defined(__DragonFly__) || defined(__APPLE__) |
20 | TocEntry[i].cdte_track_address = ntohl(TocEntry[i].cdte_track_address); | | 32 | TocEntry[i].cdte_track_address = ntohl(TocEntry[i].cdte_track_address); |
21 | #endif | | 33 | #endif |
22 | | | 34 | |
23 | for (i=0; i < last; i++) { | | 35 | for (i=0; i < last; i++) { |
24 | -#if defined(__FreeBSD__) | | 36 | -#if defined(__FreeBSD__) |
25 | +#if defined(__FreeBSD__) || defined(__DragonFly__) | | 37 | +#if defined(__FreeBSD__) || defined(__DragonFly__) || defined(__APPLE__) |
26 | TocEntry[i].cdte_track_address = ntohl(TocEntry[i].cdte_track_address); | | 38 | TocEntry[i].cdte_track_address = ntohl(TocEntry[i].cdte_track_address); |
27 | #endif | | 39 | #endif |
28 | cksum += cddb_sum((TocEntry[i].cdte_track_address + CD_MSF_OFFSET) / CD_FRAMES); | | 40 | cksum += cddb_sum((TocEntry[i].cdte_track_address + CD_MSF_OFFSET) / CD_FRAMES); |