Re: SQLGetData() returns len 4095 for empty TEXT on AIX 6.1 without ClientCharset defined

Frediano Ziglio <[email protected]>
Newsgroups gmane.comp.db.tds.freetds
Message-ID <CAHt6W4eF+MjEeOYsCYiOQfQDCW-mF9Luo-Q2hsmuGDU04kQ6bw@mail.gmail.com>
Found!

Actually the problem is in iconv AIX implementation, iconv is a function
like

size_t iconv(iconv_t cd,
                    char **inbuf, size_t *inbytesleft,
                    char **outbuf, size_t *outbytesleft);

if *inbuf is NULL and *inbytesleft is 0 AIX threat input as an infinite
buffer with zeroes so it convert an empty string (cause for libTDS view is
an empty string) to a set of zeroes (actually up to the output buffer which
is 4095 if you take into account space for terminator).

The simpler fix is to test and assume empty string if *inbytesleft == 0 in
tds_iconv.

Frediano



2013/4/2 Sebastien FLAESCH <[email protected]>

> Ok thanks.
> We'll setup one of our AIX machines to give you access.
> Seb
>
> On 03/30/2013 04:24 PM, Frediano Ziglio wrote:
> > Can I have access to one of the AIX machines ??
> >
> > I'm currently on holidays, I'll be back on Thursday.
> >
> > Frediano
>
>
> _______________________________________________
> FreeTDS mailing list
> [email protected]
> http://lists.ibiblio.org/mailman/listinfo/freetds
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.