Remove useless pstrdups in untransformRelOptions
The two strings are already a single palloc'd chunk, not freed; there's no reason to allocate separate copies that have the same lifetime. This code is only called in short-lived memory contexts (except in some cases in TopTransactionContext, which is still short-lived enough not to really matter), and typically only for short arrays, so the memory or computation saved is likely negligible. However, let's fix it to avoid leaving a bad example of code to copy. This is the only place I could find where we're doing this with makeDefElem(). Reported-by: Junwang Zhao <zhjwpku@gmail.com> Discussion: https://postgr.es/m/20220909142050.3vv2hjekppk265dd@alvherre.pgsql
This commit is contained in:
parent
fcf7b3a9d4
commit
6710e83a67
@ -1357,9 +1357,9 @@ untransformRelOptions(Datum options)
|
||||
if (p)
|
||||
{
|
||||
*p++ = '\0';
|
||||
val = (Node *) makeString(pstrdup(p));
|
||||
val = (Node *) makeString(p);
|
||||
}
|
||||
result = lappend(result, makeDefElem(pstrdup(s), val, -1));
|
||||
result = lappend(result, makeDefElem(s, val, -1));
|
||||
}
|
||||
|
||||
return result;
|
||||
|
Loading…
x
Reference in New Issue
Block a user