aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/init/miscinit.c
diff options
context:
space:
mode:
authorPeter Eisentraut <peter_e@gmx.net>2013-10-13 00:09:18 -0400
committerPeter Eisentraut <peter_e@gmx.net>2013-10-13 00:09:18 -0400
commit5b6d08cd2992922b667564a49f19580f11676050 (patch)
tree4104a4255eeb88e78da71477b5f7b129f9a1b599 /src/backend/utils/init/miscinit.c
parenta53dee43fe585e673658b01e7354892dcede957e (diff)
downloadpostgresql-5b6d08cd2992922b667564a49f19580f11676050.tar.gz
postgresql-5b6d08cd2992922b667564a49f19580f11676050.zip
Add use of asprintf()
Add asprintf(), pg_asprintf(), and psprintf() to simplify string allocation and composition. Replacement implementations taken from NetBSD. Reviewed-by: Álvaro Herrera <alvherre@2ndquadrant.com> Reviewed-by: Asif Naeem <anaeem.it@gmail.com>
Diffstat (limited to 'src/backend/utils/init/miscinit.c')
-rw-r--r--src/backend/utils/init/miscinit.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/src/backend/utils/init/miscinit.c b/src/backend/utils/init/miscinit.c
index ed514f61280..381a629334b 100644
--- a/src/backend/utils/init/miscinit.c
+++ b/src/backend/utils/init/miscinit.c
@@ -165,12 +165,10 @@ make_absolute_path(const char *path)
}
}
- new = malloc(strlen(buf) + strlen(path) + 2);
- if (!new)
+ if (asprintf(&new, "%s/%s", buf, path) < 0)
ereport(FATAL,
(errcode(ERRCODE_OUT_OF_MEMORY),
errmsg("out of memory")));
- sprintf(new, "%s/%s", buf, path);
free(buf);
}
else
@@ -1286,9 +1284,7 @@ load_libraries(const char *libraries, const char *gucname, bool restricted)
{
char *expanded;
- expanded = palloc(strlen("$libdir/plugins/") + strlen(filename) + 1);
- strcpy(expanded, "$libdir/plugins/");
- strcat(expanded, filename);
+ expanded = psprintf("$libdir/plugins/%s", filename);
pfree(filename);
filename = expanded;
}