From 151b4ea3cd6f4b6b431284daf8a90c51765f22fa Mon Sep 17 00:00:00 2001 From: Dmitry Stogov Date: Wed, 8 Apr 2015 17:06:03 +0300 Subject: [PATCH] Fixed unsigned underflow --- ext/pgsql/pgsql.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/ext/pgsql/pgsql.c b/ext/pgsql/pgsql.c index 9beb72890f..536c94157a 100644 --- a/ext/pgsql/pgsql.c +++ b/ext/pgsql/pgsql.c @@ -882,15 +882,14 @@ static char *php_pgsql_PQescapeInternal(PGconn *conn, const char *str, size_t le /* {{{ _php_pgsql_trim_message */ static char * _php_pgsql_trim_message(const char *message, size_t *len) { - register size_t i = strlen(message)-1; + register size_t i = strlen(message); - if (i>1 && (message[i-1] == '\r' || message[i-1] == '\n') && message[i] == '.') { + if (i>2 && (message[i-2] == '\r' || message[i-2] == '\n') && message[i-1] == '.') { --i; } - while (i>0 && (message[i] == '\r' || message[i] == '\n')) { + while (i>1 && (message[i-1] == '\r' || message[i-1] == '\n')) { --i; } - ++i; if (len) { *len = i; } -- 2.40.0