Re: Build failure with VS 2012 due to uninitialized pointers
От | Inoue, Hiroshi |
---|---|
Тема | Re: Build failure with VS 2012 due to uninitialized pointers |
Дата | |
Msg-id | 539C4FF6.2080906@tpf.co.jp обсуждение исходный текст |
Ответ на | Build failure with VS 2012 due to uninitialized pointers (Craig Ringer <craig@2ndquadrant.com>) |
Ответы |
Re: Build failure with VS 2012 due to uninitialized pointers
|
Список | pgsql-odbc |
Thanks. Confirmed and committed. regards, Hiroshi Inoue (2014/06/12 16:53), Craig Ringer wrote: > Hi folks > > VS 2012 reports possibly uninitialized pointer access: > > > > > c:\users\administrator\desktop\psqlodbc\connection.c(2073): error C4703: > potentially uninitialized local pointer variable 'sock' used > > which is > > if (0 != (sockerr = SOCK_get_errcode(sock))) > { > > in original_CC_connect(...). > > > > c:\users\administrator\desktop\psqlodbc\dlg_wingui.c(177): error C4703: > potentially uninitialized local pointer variable 'comval' used > > which is > > CheckDlgButton(hdlg, DRV_COMMLOG, comval->commlog); > > > > > By default it treats these as fatal errors, so the codebase won't build > on VS 2012. BuildAll.ps1 doesn't seem to provide a simple way to pass > extra CFLAGS into the build (to pass /sdl- per > http://msdn.microsoft.com/en-us/library/jj161081.aspx), and it isn't > really desirable to just turn the warning off anyway. > > > I've taken a look at what's going on. In the case of the first one the > function is not small and its flow isn't simple. I thought I'd mention > the issue here first, in case somebody was able to immediately see > what's missing. While I could just: > > > - SocketClass *sock; > + SocketClass *sock = NULL; > > I'm pretty sure that's just papering over whatever the real problem is. > > > The second, the comval error, looks to be a missing default: clause in > the case. If this were backend code I'd just toss in an > > elog(FATAL,"Unreachable code reached"); > > but that's not going to be much good in psqlODBC.
В списке pgsql-odbc по дате отправления: