Ah, I have found the cause of the crash, and added documentation about the cause:
On Win32, if the <application>ecpg</> libraries and application are compiled with different flags, this function call will crash the application because the internal representation of the <literal>FILE</> pointers differ. While such a mismatch is a problem on all platforms, it is more common on Win32 where the FILE structure changes for debug, for example. --------------------------------------------------------------------------- Michael Meskes wrote: > On Mon, Aug 15, 2005 at 07:39:42PM +0800, William ZHANG wrote: > > Yes. It is reproducible. But it works well in MinGW. > > Is there sth. wrong with the import library lib\ms\libecpg.lib or > > lib\libecpg.dll? > > > > "Joshua Masiko" <[EMAIL PROTECTED]> > > wrote:[EMAIL PROTECTED] > > > > > > ntdll.dll!7c918fea() > > > ntdll.dll!7c9106eb() > > > ntdll.dll!7c90104b() > > > msvcrt.dll!77c3b90d() > > > msvcrt.dll!77c420e7() > > > libecpg.dll!6d0c7471() > > >> ecpgtest.exe!main(int argc=1, char * * > > > argv=0x003c0d10) Line 5 + 0xc C > > > ecpgtest.exe!mainCRTStartup() Line 206 + 0x19 C > > > kernel32.dll!7c816d4f() > > > kernel32.dll!7c8399f3() > > > > > > > > > The offending line in ecpgtest.pgc is > > > > > > ECPGdebug(1,stderr); > > > > > > I get the same result even if I use a file handle > > > obtained by using fopen > > Could someone with access to a Windows system have a look at this? I do > not have one atm. In particular I'd like to know whether it makes a > difference if your compiled ecpg with threading enabled or not. After > all without threading the function called does not much, just changing > two variables and logging the change. > > Michael > -- > Michael Meskes > Email: Michael at Fam-Meskes dot De, Michael at Meskes dot (De|Com|Net|Org) > ICQ: 179140304, AIM/Yahoo: michaelmeskes, Jabber: [EMAIL PROTECTED] > Go SF 49ers! Go Rhein Fire! Use Debian GNU/Linux! Use PostgreSQL! > > ---------------------------(end of broadcast)--------------------------- > TIP 2: Don't 'kill -9' the postmaster > -- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073 ---------------------------(end of broadcast)--------------------------- TIP 6: explain analyze is your friend