if(!filename || !buf || !w || !h || dstpf<0 || dstpf>=TJ_NUMPF)
_throw("loadbmp(): Invalid argument");
- if((file=fopen(filename, "rb"))==NULL)
+ if((file=fopen(filename, READ_BINARY))==NULL)
_throwunix("loadbmp(): Cannot open input file");
cinfo.err=jpeg_std_error(&jerr.pub);
if(!filename || !buf || w<1 || h<1 || srcpf<0 || srcpf>=TJ_NUMPF)
_throw("savebmp(): Invalid argument");
- if((file=fopen(filename, "wb"))==NULL)
+ if((file=fopen(filename, WRITE_BINARY))==NULL)
_throwunix("savebmp(): Cannot open output file");
dinfo.err=jpeg_std_error(&jerr.pub);
/* miscellaneous useful macros */
#ifdef DONT_USE_B_MODE /* define mode parameters for fopen() */
-#define READ_BINARY "r"
-#define WRITE_BINARY "w"
+#define READ_BINARY "re"
+#define WRITE_BINARY "we"
#else
#ifdef VMS /* VMS is very nonstandard */
#define READ_BINARY "rb", "ctx=stm"
#define WRITE_BINARY "wb", "ctx=stm"
#else /* standard ANSI-compliant case */
-#define READ_BINARY "rb"
-#define WRITE_BINARY "wb"
+#define READ_BINARY "rbe"
+#define WRITE_BINARY "wbe"
#endif
#endif
long val;
unsigned int table[DCTSIZE2];
- if ((fp = fopen(filename, "r")) == NULL) {
+ if ((fp = fopen(filename, READ_BINARY)) == NULL) {
fprintf(stderr, "Can't open table file %s\n", filename);
return FALSE;
}
#define MAX_SCANS 100 /* quite arbitrary limit */
jpeg_scan_info scans[MAX_SCANS];
- if ((fp = fopen(filename, "r")) == NULL) {
+ if ((fp = fopen(filename, READ_BINARY)) == NULL) {
fprintf(stderr, "Can't open scan definition file %s\n", filename);
return FALSE;
}
#endif
#ifdef DONT_USE_B_MODE /* define mode parameters for fopen() */
-#define READ_BINARY "r"
-#define WRITE_BINARY "w"
+#define READ_BINARY "re"
+#define WRITE_BINARY "we"
#else
#ifdef VMS /* VMS is very nonstandard */
#define READ_BINARY "rb", "ctx=stm"
#define WRITE_BINARY "wb", "ctx=stm"
#else /* standard ANSI-compliant case */
-#define READ_BINARY "rb"
-#define WRITE_BINARY "wb"
+#define READ_BINARY "rbe"
+#define WRITE_BINARY "wbe"
#endif
#endif
keep_COM = 0;
} else if (keymatch(arg, "cfile", 2)) {
if (++argn >= argc) usage();
- if ((comment_file = fopen(argv[argn], "r")) == NULL) {
+ if ((comment_file = fopen(argv[argn], READ_BINARY)) == NULL) {
fprintf(stderr, "%s: can't open %s\n", progname, argv[argn]);
exit(EXIT_FAILURE);
}