Thread: Code not compiling since 19d5486 due to concatenate operators in macros
Hi all, (resending patch as it looks that it was stuck in administration queue of this ML...) I noticed this morning that ODBC does not compile correctly since commit 19d5486 due to some macros using concatenate operators used with CORR_STRCPY and CORR_VALCPY in psqlodbc.c and connection.c. In the case of CORR_VALCPY the macro simply needs to copy a field one by one, and for CORR_STRCPY only a string is copied, so concatenate operators are not necessary IMO. Please find a patch fixing that by removing the unnecessary operators. Regards, -- Michael
Attachment
Re: Code not compiling since 19d5486 due to concatenate operators in macros
From
Heikki Linnakangas
Date:
On 28.10.2013 10:10, Michael Paquier wrote: > Hi all, > (resending patch as it looks that it was stuck in administration queue > of this ML...) > > I noticed this morning that ODBC does not compile correctly since > commit 19d5486 due to some macros using concatenate operators used > with CORR_STRCPY and CORR_VALCPY in psqlodbc.c and connection.c. > > In the case of CORR_VALCPY the macro simply needs to copy a field one > by one, and for CORR_STRCPY only a string is copied, so concatenate > operators are not necessary IMO. Please find a patch fixing that by > removing the unnecessary operators. Thanks, committed to fix the build. Hiroshi, I didn't understand the point of that change in the first place. The old memcpy method of copying these objects seemed fine to me. Can you elaborate? PS. I just noticed that the email address in your git commit messages is misspelled, "inoue@tpf.co.p". Check your .gitconfig file. - Heikki
Re: Code not compiling since 19d5486 due to concatenate operators in macros
From
Hiroshi Inoue
Date:
(2013/10/28 19:53), Heikki Linnakangas wrote: > On 28.10.2013 10:10, Michael Paquier wrote: >> Hi all, >> (resending patch as it looks that it was stuck in administration queue >> of this ML...) >> >> I noticed this morning that ODBC does not compile correctly since >> commit 19d5486 due to some macros using concatenate operators used >> with CORR_STRCPY and CORR_VALCPY in psqlodbc.c and connection.c. >> >> In the case of CORR_VALCPY the macro simply needs to copy a field one >> by one, and for CORR_STRCPY only a string is copied, so concatenate >> operators are not necessary IMO. Please find a patch fixing that by >> removing the unnecessary operators. > > Thanks, committed to fix the build. > > Hiroshi, I didn't understand the point of that change in the first > place. The old memcpy method of copying these objects seemed fine to me. > Can you elaborate? password member of ConnInfo struct was changed to be of pgNAME type. pgNAME type essetially means a pointer. It's dangerous to simply copy a pointer to another one and I forgot the operation needed for password member of pgNAME type and it caused a double free crash later. I dislike the double free bug and changed CC_copy_conninfo to copy each item one by one for future changes. > PS. I just noticed that the email address in your git commit messages is > misspelled, "inoue@tpf.co.p". Check your .gitconfig file. Oops you are right. Thanks. regards, Hiroshi Inoue