Author: turnstep
Date: Mon Mar 17 19:10:56 2008
New Revision: 10934

Modified:
   DBD-Pg/trunk/Changes
   DBD-Pg/trunk/dbdimp.c

Log:
Oops, pg_segments was not reachable.


Modified: DBD-Pg/trunk/Changes
==============================================================================
--- DBD-Pg/trunk/Changes        (original)
+++ DBD-Pg/trunk/Changes        Mon Mar 17 19:10:56 2008
@@ -1,5 +1,9 @@
 ('GSM' is Greg Sabino Mullane, [EMAIL PROTECTED])
 
+???
+
+       - Fix broken fetch of $sth->{pg_segments} [GSM]
+
 2.2.2 Released March 3, 2008 (subversion r10873)
 
        - Remove non-working tracing from types.c and quote.c

Modified: DBD-Pg/trunk/dbdimp.c
==============================================================================
--- DBD-Pg/trunk/dbdimp.c       (original)
+++ DBD-Pg/trunk/dbdimp.c       Mon Mar 17 19:10:56 2008
@@ -874,7 +874,7 @@
                        retsv = newSViv((IV)imp_sth->direct);
                break;
 
-       case 10: /* ParamTypes  pg_segments */
+       case 10: /* ParamTypes */
 
                if (strEQ("ParamTypes", key)) {
                        HV *pvhv = newHV();
@@ -894,18 +894,9 @@
                        }
                        retsv = newRV_noinc((SV*)pvhv);
                }
-               else if (strEQ("pg_segments", key)) {
-                       AV *arr = newAV();
-                       seg_t *currseg;
-                       int i;
-                       for (i=0,currseg=imp_sth->seg; NULL != currseg; 
currseg=currseg->nextseg,i++) {
-                               av_push(arr, newSVpv(currseg->segment ? 
currseg->segment : "NULL",0));
-                       }
-                       retsv = newRV_noinc((SV*)arr);
-               }
                break;
 
-       case 11: /* ParamValues */
+       case 11: /* ParamValues pg_segments */
 
                if (strEQ("ParamValues", key)) {
                        HV *pvhv = newHV();
@@ -927,6 +918,15 @@
                        }
                        retsv = newRV_noinc((SV*)pvhv);
                }
+               else if (strEQ("pg_segments", key)) {
+                       AV *arr = newAV();
+                       seg_t *currseg;
+                       int i;
+                       for (i=0,currseg=imp_sth->seg; NULL != currseg; 
currseg=currseg->nextseg,i++) {
+                               av_push(arr, newSVpv(currseg->segment ? 
currseg->segment : "NULL",0));
+                       }
+                       retsv = newRV_noinc((SV*)arr);
+               }
                break;
 
        case 14: /* pg_prepare_now */

Reply via email to