Skip site navigation (1) Skip section navigation (2)

Re: SQLGetInfo Bug

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Dave Page" <dpage(at)vale-housing(dot)co(dot)uk>
Cc: pgsql-odbc(at)postgresql(dot)org, "Didier Moens" <moensd(at)xs4all(dot)be>
Subject: Re: SQLGetInfo Bug
Date: 2003-01-02 15:03:12
Message-ID: 20229.1041519792@sss.pgh.pa.us (view raw or flat)
Thread:
Lists: pgsql-odbc
"Dave Page" <dpage(at)vale-housing(dot)co(dot)uk> writes:
> The garbage is not there if I use sprintf with a larger size of
> tmp. I've tried variations of the code to check (without luck) but I
> assume I'm not somehow knocking the null off the end of the string?

You would be losing the trailing null if the snprintf is unable to fit
its output into the buffer size it's told to use (at least, that's how
most implementations of snprintf react, I think).

It doesn't look like this should be enough data to overrun your buffer,
but I don't have a better theory at the moment.

Perhaps

	snprintf(tmp, sizeof(tmp) - 1, "%s %s", ...);
	tmp[sizeof(tmp) - 1] = '\0';

would be better coding practice if you don't want to actually check
snprintf's result.

			regards, tom lane

In response to

pgsql-odbc by date

Next:From: Dave PageDate: 2003-01-02 15:31:20
Subject: Re: SQLGetInfo Bug
Previous:From: Dave PageDate: 2003-01-02 14:47:41
Subject: Re: SQLGetInfo Bug

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group