Re: Fix possible dereference null pointer (PQprint)
Em sex., 31 de mai. de 2024 às 05:03, Daniel Gustafsson escreveu: > > On 27 May 2024, at 16:52, Ranier Vilela wrote: > > > In the function *PQprint*, the variable po->fieldName can be NULL. > > Yes. > > > See the checks a few lines up. > > Indeed, let's check it. > > for (numFieldName = 0; > po->fieldName && po->fieldName[numFieldName]; > numFieldName++) > ; > for (j = 0; j < nFields; j++) > { > int len; > const char *s = (j < numFieldName && po->fieldName[j][0]) ? > po->fieldName[j] : PQfname(res, j); > > If po->fieldName is NULL then numFieldName won't be incremented and will > remain > zero. In the check you reference we check (j < numFieldName) which will > check > the j in the range 0..nFields for being less than zero. The code thus does > seem quite correct to me. > You are completely correct. My bad. Thank you Daniel. best regards, Ranier Vilela
Re: Fix possible dereference null pointer (PQprint)
> On 27 May 2024, at 16:52, Ranier Vilela wrote: > In the function *PQprint*, the variable po->fieldName can be NULL. Yes. > See the checks a few lines up. Indeed, let's check it. for (numFieldName = 0; po->fieldName && po->fieldName[numFieldName]; numFieldName++) ; for (j = 0; j < nFields; j++) { int len; const char *s = (j < numFieldName && po->fieldName[j][0]) ? po->fieldName[j] : PQfname(res, j); If po->fieldName is NULL then numFieldName won't be incremented and will remain zero. In the check you reference we check (j < numFieldName) which will check the j in the range 0..nFields for being less than zero. The code thus does seem quite correct to me. -- Daniel Gustafsson
Fix possible dereference null pointer (PQprint)
Hi. In the function *PQprint*, the variable po->fieldName can be NULL. See the checks a few lines up. for (numFieldName = 0; po->fieldName && po->fieldName[numFieldName]; numFieldName++) So, I think that must be checked, when used, in the loop below. best regards, Ranier Vilela fix-possible-dereference-null-pointer-PQprint.patch Description: Binary data