diff options
author | Peter Eisentraut <peter_e@gmx.net> | 2013-10-13 00:09:18 -0400 |
---|---|---|
committer | Peter Eisentraut <peter_e@gmx.net> | 2013-10-13 00:09:18 -0400 |
commit | 5b6d08cd2992922b667564a49f19580f11676050 (patch) | |
tree | 4104a4255eeb88e78da71477b5f7b129f9a1b599 /src/bin/psql/large_obj.c | |
parent | a53dee43fe585e673658b01e7354892dcede957e (diff) |
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/bin/psql/large_obj.c')
-rw-r--r-- | src/bin/psql/large_obj.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/bin/psql/large_obj.c b/src/bin/psql/large_obj.c index faaecce6144..065e0c1cb24 100644 --- a/src/bin/psql/large_obj.c +++ b/src/bin/psql/large_obj.c @@ -200,12 +200,12 @@ do_lo_import(const char *filename_arg, const char *comment_arg) char *cmdbuf; char *bufptr; size_t slen = strlen(comment_arg); + int rv; - cmdbuf = malloc(slen * 2 + 256); - if (!cmdbuf) + rv = asprintf(&cmdbuf, "COMMENT ON LARGE OBJECT %u IS '", loid); + if (rv < 0) return fail_lo_xact("\\lo_import", own_transaction); - sprintf(cmdbuf, "COMMENT ON LARGE OBJECT %u IS '", loid); - bufptr = cmdbuf + strlen(cmdbuf); + bufptr = cmdbuf + rv; bufptr += PQescapeStringConn(pset.db, bufptr, comment_arg, slen, NULL); strcpy(bufptr, "'"); |