From: | Maciek Sakrejda <msakrejda(at)truviso(dot)com> |
---|---|
To: | Dave Cramer <pg(at)fastcrypt(dot)com> |
Cc: | Fedechicco <fedechicco(at)gmail(dot)com>, pgsql-jdbc(at)postgresql(dot)org |
Subject: | Re: Possible bug in ServerErrorMessage.java |
Date: | 2012-04-27 06:25:55 |
Message-ID: | CAH_hXRbsLzYBex1AdD+UW1bZdQCkoKTYf5e7_pOSNSTSytH6eQ@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc |
> From what I've seen the line 48 and the following are:
>
> while (l_chars[l_pos] != '\0' && l_pos < l_length)
> {
> l_pos++;
> }
>
> which IMO should be changed in:
> while (l_pos < l_length && l_chars[l_pos] != '\0')
This seems to be the code in question, to decode the wire ErrorResponse message:
https://github.com/pgjdbc/pgjdbc/blob/master/org/postgresql/util/ServerErrorMessage.java#L32
Although what you suggested would be more defensive coding, if you
look at the message specification [1], I believe the current code
*should* process any well-formed ErrorResponse message correctly. As
Dave asked, is this consistently reproducible? Also, are you in a
position to make the change you suggested, rebuild the driver, and
retry it yourself? If so, do you get a different message?
[1]: http://www.postgresql.org/docs/9.1/static/protocol-message-formats.html
---
Maciek Sakrejda | System Architect | Truviso
1065 E. Hillsdale Blvd., Suite 215
Foster City, CA 94404
(650) 242-3500 Main
www.truviso.com
From | Date | Subject | |
---|---|---|---|
Next Message | Fedechicco | 2012-04-27 07:48:57 | Re: Possible bug in ServerErrorMessage.java |
Previous Message | Dave Cramer | 2012-04-27 00:43:41 | Re: Possible bug in ServerErrorMessage.java |