annotate dvdread_internal.h @ 59:bfefcc426154 src

Provide BUP file support for more issues. The BUP file is only opened when the IFO file open fails. We have a few times where file corruption could happen and we could use the BUP instead. This patch attempts to address this by trying to open the BUP if there is any reported error w/ the IFO. Inspiration for this patch came from Rich E, thanks for the detailed bug report and attempts at using earlier patches.
author erik
date Sat, 31 Jul 2010 00:21:01 +0000
parents ef679522d00f
children 3bc841283972
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
25
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
1 /*
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
2 * This file is part of libdvdread.
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
3 *
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
4 * libdvdread is free software; you can redistribute it and/or modify
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
5 * it under the terms of the GNU General Public License as published by
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
6 * the Free Software Foundation; either version 2 of the License, or
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
7 * (at your option) any later version.
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
8 *
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
9 * libdvdread is distributed in the hope that it will be useful,
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
12 * GNU General Public License for more details.
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
13 *
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
14 * You should have received a copy of the GNU General Public License along
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
15 * with libdvdread; if not, write to the Free Software Foundation, Inc.,
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
17 */
17258a7b3239 Add missing license header.
diego
parents: 23
diff changeset
18
23
ac07d427fbc6 Use consistent multiple inclusion guards everywhere:
diego
parents: 3
diff changeset
19 #ifndef LIBDVDREAD_DVDREAD_INTERNAL_H
ac07d427fbc6 Use consistent multiple inclusion guards everywhere:
diego
parents: 3
diff changeset
20 #define LIBDVDREAD_DVDREAD_INTERNAL_H
3
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
21
41
ef679522d00f replaced conditional checks on MSC with _WIN32 to permit MINGW to mount and decrypt images; patch by John Stebbins (stebbing jetheaddev com)
nicodvb
parents: 27
diff changeset
22 #ifdef _WIN32
3
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
23 #include <unistd.h>
41
ef679522d00f replaced conditional checks on MSC with _WIN32 to permit MINGW to mount and decrypt images; patch by John Stebbins (stebbing jetheaddev com)
nicodvb
parents: 27
diff changeset
24 #endif /* _WIN32 */
3
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
25
27
98951f8ec89c cosmetics: Sync indentation and similar changes from libdvdread 0.9.5.
diego
parents: 25
diff changeset
26 #define CHECK_VALUE(arg) \
98951f8ec89c cosmetics: Sync indentation and similar changes from libdvdread 0.9.5.
diego
parents: 25
diff changeset
27 if(!(arg)) { \
98951f8ec89c cosmetics: Sync indentation and similar changes from libdvdread 0.9.5.
diego
parents: 25
diff changeset
28 fprintf(stderr, "\n*** libdvdread: CHECK_VALUE failed in %s:%i ***" \
98951f8ec89c cosmetics: Sync indentation and similar changes from libdvdread 0.9.5.
diego
parents: 25
diff changeset
29 "\n*** for %s ***\n\n", \
98951f8ec89c cosmetics: Sync indentation and similar changes from libdvdread 0.9.5.
diego
parents: 25
diff changeset
30 __FILE__, __LINE__, # arg ); \
98951f8ec89c cosmetics: Sync indentation and similar changes from libdvdread 0.9.5.
diego
parents: 25
diff changeset
31 }
3
fdbae45c30fc moved to src/ the sources files
nicodvb
parents:
diff changeset
32
23
ac07d427fbc6 Use consistent multiple inclusion guards everywhere:
diego
parents: 3
diff changeset
33 #endif /* LIBDVDREAD_DVDREAD_INTERNAL_H */