diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2016-09-13 17:17:48 -0400 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2016-09-13 17:17:48 -0400 |
commit | 55c3391d1e6a201b5b891781d21fe682a8c64fe6 (patch) | |
tree | ecae37c23f41bef5a1921d1cf402ca8ca69825db /src/backend/commands/proclang.c | |
parent | fdc79e1909dc3866a385ffb74bdd6ce6a082a300 (diff) | |
download | postgresql-55c3391d1e6a201b5b891781d21fe682a8c64fe6.tar.gz postgresql-55c3391d1e6a201b5b891781d21fe682a8c64fe6.zip |
Be pickier about converting between Name and Datum.
We were misapplying NameGetDatum() to plain C strings in some places.
This worked, because it was just a pointer cast anyway, but it's a type
cheat in some sense. Use CStringGetDatum instead, and modify the
NameGetDatum macro so it won't compile if applied to something that's
not a pointer to NameData. This should result in no changes to
generated code, but it is logically cleaner.
Mark Dilger, tweaked a bit by me
Discussion: <EFD8AC94-4C1F-40C1-A5EA-304080089C1B@gmail.com>
Diffstat (limited to 'src/backend/commands/proclang.c')
-rw-r--r-- | src/backend/commands/proclang.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/backend/commands/proclang.c b/src/backend/commands/proclang.c index 761d08f604b..4f870e8d300 100644 --- a/src/backend/commands/proclang.c +++ b/src/backend/commands/proclang.c @@ -463,7 +463,7 @@ find_language_template(const char *languageName) ScanKeyInit(&key, Anum_pg_pltemplate_tmplname, BTEqualStrategyNumber, F_NAMEEQ, - NameGetDatum(languageName)); + CStringGetDatum(languageName)); scan = systable_beginscan(rel, PLTemplateNameIndexId, true, NULL, 1, &key); |