Re: [HACKERS] xlog.c.patch for cygwin port.
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Bruce Momjian <pgman@candle.pha.pa.us>
Cc: yutaka tanida <yutaka@marin.or.jp>, Alexei Zakharov <A.S.Zakharov@inp.nsk.su>, pgsql-hackers@postgreSQL.org
Date: 2000-03-08T01:01:16Z
Lists: pgsql-hackers
Bruce Momjian <pgman@candle.pha.pa.us> writes: > This looks interesting. We could remove some of our ifwin cruft. I have been thinking for quite some time that most of the CYGWIN32 ifdefs represent very poor programming. Instead of zillions of #ifndef __CYGWIN32__ fd = open(filename, O_RDONLY, 0666); #else fd = open(filename, O_RDONLY | O_BINARY, 0666); #endif we should have in one include file something like #ifndef __CYGWIN32__ #define OPEN_FLAGS_READ O_RDONLY #define OPEN_FLAGS_WRITE O_WRONLY // etc for the combinations we need #else #define OPEN_FLAGS_READ (O_RDONLY | O_BINARY) #define OPEN_FLAGS_WRITE (O_WRONLY | O_BINARY) // etc #endif and then the body of the code would have fd = open(filename, OPEN_FLAGS_READ, 0666); and no ifdef. This would also provide a single place to tweak open() flags for other platforms, whereas the existing method is exactly zero help for any non-CYGWIN platform that wants to add O_BINARY ... regards, tom lane