Author: turnstep
Date: Sun Aug 17 20:05:07 2008
New Revision: 11656
Modified:
DBD-Pg/trunk/Changes
DBD-Pg/trunk/META.yml
DBD-Pg/trunk/Makefile.PL
DBD-Pg/trunk/Pg.pm
DBD-Pg/trunk/README
DBD-Pg/trunk/dbdimp.c
DBD-Pg/trunk/lib/Bundle/DBD/Pg.pm
Log:
Fix incorrect mapping of PG array to Perl array. Reported by
Alex Cheshev on the dbi-users mailing list. CPAN bug #38552.
Bump version to 2.9.1.
Modified: DBD-Pg/trunk/Changes
==============================================================================
--- DBD-Pg/trunk/Changes (original)
+++ DBD-Pg/trunk/Changes Sun Aug 17 20:05:07 2008
@@ -1,5 +1,10 @@
('GSM' is Greg Sabino Mullane, [EMAIL PROTECTED])
+2.9.1 Released August 17, 2008
+
+ - Return undef when mapping Postgres array to Perl array and
+ the array is empty '{}'. (CPAN bug #38552) [GSM]
+
2.9.0 Released August 3, 2008 (subversion r11624)
- Add support for database handle attribute "ReadOnly". This allows
Modified: DBD-Pg/trunk/META.yml
==============================================================================
--- DBD-Pg/trunk/META.yml (original)
+++ DBD-Pg/trunk/META.yml Sun Aug 17 20:05:07 2008
@@ -1,6 +1,6 @@
--- #YAML:1.0
name : DBD-Pg
-version : 2.9.0
+version : 2.9.1
abstract : DBI PostgreSQL interface
author:
- Greg Sabino Mullane <[EMAIL PROTECTED]>
@@ -38,10 +38,10 @@
provides:
DBD::Pg:
file : Pg.pm
- version : 2.9.0
+ version : 2.9.1
Bundle::DBD::Pg:
file : lib/Bundle/DBD/Pg.pm
- version : 2.9.0
+ version : 2.9.1
keywords:
- Postgres
Modified: DBD-Pg/trunk/Makefile.PL
==============================================================================
--- DBD-Pg/trunk/Makefile.PL (original)
+++ DBD-Pg/trunk/Makefile.PL Sun Aug 17 20:05:07 2008
@@ -7,7 +7,7 @@
use 5.006001;
## No version.pm for this one, as the prereqs are not loaded yet.
-my $VERSION = '2.9.0';
+my $VERSION = '2.9.1';
my $lib;
BEGIN {
Modified: DBD-Pg/trunk/Pg.pm
==============================================================================
--- DBD-Pg/trunk/Pg.pm (original)
+++ DBD-Pg/trunk/Pg.pm Sun Aug 17 20:05:07 2008
@@ -17,7 +17,7 @@
{
package DBD::Pg;
- use version; our $VERSION = qv('2.9.0');
+ use version; our $VERSION = qv('2.9.1');
use DBI ();
use DynaLoader ();
@@ -1696,7 +1696,7 @@
=head1 VERSION
-This documents version 2.9.0 of the DBD::Pg module
+This documents version 2.9.1 of the DBD::Pg module
=head1 DESCRIPTION
Modified: DBD-Pg/trunk/README
==============================================================================
--- DBD-Pg/trunk/README (original)
+++ DBD-Pg/trunk/README Sun Aug 17 20:05:07 2008
@@ -6,7 +6,7 @@
DESCRIPTION:
------------
-This is version 2.9.0 of DBD::Pg, the Perl interface to Postgres using DBI.
+This is version 2.9.1 of DBD::Pg, the Perl interface to Postgres using DBI.
The web site for this interface, and the latest version, can be found at:
http://search.cpan.org/dist/DBD-Pg/
Modified: DBD-Pg/trunk/dbdimp.c
==============================================================================
--- DBD-Pg/trunk/dbdimp.c (original)
+++ DBD-Pg/trunk/dbdimp.c Sun Aug 17 20:05:07 2008
@@ -2471,6 +2471,7 @@
char* string;
STRLEN section_size = 0;
bool in_quote = 0;
+ bool seen_quotes = 0;
int opening_braces = 0;
int closing_braces = 0;
@@ -2522,7 +2523,7 @@
else if ('}' == *input) {
}
else if ('"' == *input) {
- in_quote = (bool)1;
+ in_quote = seen_quotes = (bool)1;
}
else {
string[section_size++] = *input;
@@ -2530,7 +2531,8 @@
if ('}' == *input || (coltype->array_delimeter == *input && '}'
!= *(input-1))) {
string[section_size] = '\0';
- if (4 == section_size && 0 == strncmp(string, "NULL",
4) && '"' != *(input-1)) {
+ if ((0 == section_size && !seen_quotes) ||
+ ((4 == section_size && 0 == strncmp(string,
"NULL", 4) && '"' != *(input-1)))) {
av_push(currentav, &PL_sv_undef);
}
else {
Modified: DBD-Pg/trunk/lib/Bundle/DBD/Pg.pm
==============================================================================
--- DBD-Pg/trunk/lib/Bundle/DBD/Pg.pm (original)
+++ DBD-Pg/trunk/lib/Bundle/DBD/Pg.pm Sun Aug 17 20:05:07 2008
@@ -4,7 +4,7 @@
use strict;
use warnings;
-$VERSION = '2.9.0';
+$VERSION = '2.9.1';
1;