Skip to content

Commit e0ac056

Browse files
committed
Update pgsql.c
1 parent 87b8345 commit e0ac056

1 file changed

Lines changed: 3 additions & 6 deletions

File tree

ext/pgsql/pgsql.c

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3428,12 +3428,9 @@ static zend_result pgsql_copy_from_query(PGconn *pgsql, PGresult *pgsql_result,
34283428

34293429
int result;
34303430
if (ZSTR_LEN(tmp) > 0 && ZSTR_VAL(tmp)[ZSTR_LEN(tmp) - 1] != '\n') {
3431-
char *zquery = emalloc(ZSTR_LEN(tmp) + 2);
3432-
memcpy(zquery, ZSTR_VAL(tmp), ZSTR_LEN(tmp) + 1);
3433-
zquery[ZSTR_LEN(tmp)] = '\n';
3434-
zquery[ZSTR_LEN(tmp) + 1] = '\0';
3435-
result = PQputCopyData(pgsql, zquery, ZSTR_LEN(tmp) + 1);
3436-
efree(zquery);
3431+
zend_string *new_tmp = zend_string_concat2(ZSTR_VAL(tmp), ZSTR_LEN(tmp), "\n", 1);
3432+
result = PQputCopyData(pgsql, ZSTR_VAL(new_tmp), ZSTR_LEN(new_tmp));
3433+
zend_string_release(new_tmp);
34373434
} else {
34383435
result = PQputCopyData(pgsql, ZSTR_VAL(tmp), ZSTR_LEN(tmp));
34393436
}

0 commit comments

Comments
 (0)