Change the version. We are moving towards the next release.

Fixed a nasty bug that messed up negative money amounts.
This commit is contained in:
D'Arcy J.M. Cain 2001-09-19 18:58:47 +00:00
parent 9e774ca45e
commit ae64196acb
1 changed files with 31 additions and 9 deletions

View File

@ -36,7 +36,7 @@
#include <string.h>
static PyObject *PGError;
static const char *PyPgVersion = "3.2";
static const char *PyPgVersion = "3.3";
/* taken from fileobject.c */
#define BUF(v) PyString_AS_STRING((PyStringObject *)(v))
@ -1844,21 +1844,32 @@ pgquery_getresult(pgqueryobject * self, PyObject * args)
val = PyFloat_FromDouble(strtod(s, NULL));
break;
case 3: /* get rid of the '$' and commas */
case 3:
{
int mult = 1;
if (*s == '$') /* there's talk of getting rid of
* it */
s++;
if ((s[0] == '-' || s[0] == '(') && s[1] == '$')
*(++s) = '-';
if (*s == '-' || *s == '(')
{
s++;
mult = -1;
}
/* get rid of the '$' and commas */
if (*s == '$') /* Just in case we exposed one */
s++;
for (k = 0; *s; s++)
if (*s != ',')
cashbuf[k++] = *s;
cashbuf[k] = 0;
val = PyFloat_FromDouble(strtod(cashbuf, NULL));
val = PyFloat_FromDouble(strtod(cashbuf, NULL) * mult);
break;
}
default:
val = PyString_FromString(s);
@ -1980,21 +1991,32 @@ pgquery_dictresult(pgqueryobject * self, PyObject * args)
val = PyFloat_FromDouble(strtod(s, NULL));
break;
case 3: /* get rid of the '$' and commas */
case 3:
{
int mult = 1;
if (*s == '$') /* there's talk of getting rid of
* it */
s++;
if ((s[0] == '-' || s[0] == '(') && s[1] == '$')
*(++s) = '-';
if (*s == '-' || *s == '(')
{
s++;
mult = -1;
}
/* get rid of the '$' and commas */
if (*s == '$') /* Just in case we exposed one */
s++;
for (k = 0; *s; s++)
if (*s != ',')
cashbuf[k++] = *s;
cashbuf[k] = 0;
val = PyFloat_FromDouble(strtod(cashbuf, NULL));
val = PyFloat_FromDouble(strtod(cashbuf, NULL) * mult);
break;
}
default:
val = PyString_FromString(s);