Re: [PATCHES] Anoter JDBC Error - Mailing list pgsql-jdbc
From | Barry Lind |
---|---|
Subject | Re: [PATCHES] Anoter JDBC Error |
Date | |
Msg-id | 3DB1D920.2040801@xythos.com Whole thread Raw |
In response to | Re: Anoter JDBC Error (Kris Jurka <books@ejurka.com>) |
List | pgsql-jdbc |
Patch applied. --Barry Kris Jurka wrote: > This is doing a getInt on a field with a value of the empty string. The > application will still get an error after this patch, but it will be more > obvious where the error is coming from. > > This patch also fixes a problem when retrieving negative monetary values. > > On Wed, 9 Oct 2002, Aaron Mulder wrote: > > >> Haven't had a chance to look into this one yet -- came up in >>DBVis, while looking for the columns for a new table, so it's probably >>another DBMD query. Something assuming a String won't be empty? >> >>java.lang.StringIndexOutOfBoundsException: String index out of range: 0 >> at java.lang.String.charAt(String.java:460) >> at org.postgresql.jdbc1.AbstractJdbc1ResultSet.getFixedString(AbstractJdbc1ResultSet.java:650) >> at org.postgresql.jdbc1.AbstractJdbc1ResultSet.getInt(AbstractJdbc1ResultSet.java:144) >> >> BTW, thanks for the ' fix. >> >>Aaron >> >> >>---------------------------(end of broadcast)--------------------------- >>TIP 3: if posting/reading through Usenet, please send an appropriate >>subscribe-nomail command to majordomo@postgresql.org so that your >>message can get through to the mailing list cleanly >> >> >> >>------------------------------------------------------------------------ >> >>Index: src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSet.java >>=================================================================== >>RCS file: /projects/cvsroot/pgsql-server/src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSet.java,v >>retrieving revision 1.6 >>diff -c -r1.6 AbstractJdbc1ResultSet.java >>*** src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSet.java 2002/09/06 21:23:06 1.6 >>--- src/interfaces/jdbc/org/postgresql/jdbc1/AbstractJdbc1ResultSet.java 2002/10/11 23:02:46 >>*************** >>*** 646,651 **** >>--- 646,655 ---- >> if (wasNullFlag) >> return null; >> >>+ // if we don't have at least 2 characters it can't be money. >>+ if (s.length() < 2) >>+ return s; >>+ >> // Handle Money >> if (s.charAt(0) == '(') >> { >>*************** >>*** 654,659 **** >>--- 658,667 ---- >> if (s.charAt(0) == '$') >> { >> s = s.substring(1); >>+ } >>+ else if (s.charAt(0) == '-' && s.charAt(1) == '$') >>+ { >>+ s = "-" + s.substring(2); >> } >> >> return s; >> >> >>------------------------------------------------------------------------ >> >> >>---------------------------(end of broadcast)--------------------------- >>TIP 2: you can get off all lists at once with the unregister command >> (send "unregister YourEmailAddressHere" to majordomo@postgresql.org) >
pgsql-jdbc by date: