|  line  | 
 true  | 
 false  | 
 branch  | 
 
| 
40
 | 
 0  | 
 101  | 
     DBISTATE_INIT;  | 
 
| 
71
 | 
 0  | 
 95  | 
     ST(0) = dbd_discon_all(drh, imp_drh) ? &PL_sv_yes : &PL_sv_no;  | 
 
| 
117
 | 
 51  | 
 203  | 
     char *u = (SvOK(username)) ? SvPV(username,lna) : (char*)"";  | 
 
| 
 | 
 51  | 
 0  | 
     char *u = (SvOK(username)) ? SvPV(username,lna) : (char*)"";  | 
 
| 
 | 
 0  | 
 51  | 
     char *u = (SvOK(username)) ? SvPV(username,lna) : (char*)"";  | 
 
| 
 | 
 203  | 
 0  | 
     char *u = (SvOK(username)) ? SvPV(username,lna) : (char*)"";  | 
 
| 
118
 | 
 51  | 
 203  | 
     char *p = (SvOK(password)) ? SvPV(password,lna) : (char*)"";  | 
 
| 
 | 
 51  | 
 0  | 
     char *p = (SvOK(password)) ? SvPV(password,lna) : (char*)"";  | 
 
| 
 | 
 0  | 
 51  | 
     char *p = (SvOK(password)) ? SvPV(password,lna) : (char*)"";  | 
 
| 
 | 
 203  | 
 0  | 
     char *p = (SvOK(password)) ? SvPV(password,lna) : (char*)"";  | 
 
| 
123
 | 
 254  | 
 0  | 
     ST(0) = dbd_db_login6(dbh, imp_dbh, SvPV_nolen(dbname), u, p, attribs) ? &PL_sv_yes : &PL_sv_no;  | 
 
| 
 | 
 248  | 
 6  | 
     ST(0) = dbd_db_login6(dbh, imp_dbh, SvPV_nolen(dbname), u, p, attribs) ? &PL_sv_yes : &PL_sv_no;  | 
 
| 
141
 | 
 81  | 
 253  | 
     if (items > 2) {  | 
 
| 
143
 | 
 51  | 
 30  | 
         if (SvROK(attr) &&  | 
 
| 
 | 
 47  | 
 4  | 
         if (SvROK(attr) &&  | 
 
| 
 | 
 0  | 
 47  | 
         if (SvROK(attr) &&  | 
 
| 
 | 
 0  | 
 47  | 
         if (SvROK(attr) &&  | 
 
| 
 | 
 0  | 
 47  | 
         if (SvROK(attr) &&  | 
 
| 
 | 
 0  | 
 47  | 
         if (SvROK(attr) &&  | 
 
| 
 | 
 0  | 
 0  | 
         if (SvROK(attr) &&  | 
 
| 
 | 
 0  | 
 0  | 
         if (SvROK(attr) &&  | 
 
| 
 | 
 0  | 
 0  | 
         if (SvROK(attr) &&  | 
 
| 
 | 
 0  | 
 0  | 
         if (SvROK(attr) &&  | 
 
| 
144
 | 
 51  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 51  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 51  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 47  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 47  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 4  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 4  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 4  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 4  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
 | 
 0  | 
 0  | 
                 (DBD_ATTRIB_TRUE(attr,"Slice",5,tmp_svp) || DBD_ATTRIB_TRUE(attr,"Columns",7,tmp_svp))  | 
 
| 
154
 | 
 0  | 
 287  | 
     if (SvROK(ST(1))) {  | 
 
| 
158
 | 
 0  | 
 0  | 
         if ( (mg = mg_find(SvRV(sth),'P')) )  | 
 
| 
164
 | 
 0  | 
 287  | 
         if (!SvROK(sth))  | 
 
| 
171
 | 
 34  | 
 253  | 
     if (items > 3) {    /* need to bind params before execute */  | 
 
| 
172
 | 
 0  | 
 34  | 
         if (!dbdxst_bind_params(sth, imp_sth, items-2, ax+2) ) {  | 
 
| 
178
 | 
 0  | 
 287  | 
     if ( dbd_st_execute(sth, imp_sth) <= -2 ) { /* -2 == error */  | 
 
| 
182
 | 
 287  | 
 0  | 
     maxrows_svp = DBD_ATTRIB_GET_SVP(attr, "MaxRows", 7);  | 
 
| 
 | 
 4  | 
 283  | 
     maxrows_svp = DBD_ATTRIB_GET_SVP(attr, "MaxRows", 7);  | 
 
| 
 | 
 4  | 
 0  | 
     maxrows_svp = DBD_ATTRIB_GET_SVP(attr, "MaxRows", 7);  | 
 
| 
183
 | 
 0  | 
 287  | 
     tmp_sv = dbdxst_fetchall_arrayref(sth, &PL_sv_undef, (maxrows_svp) ? *maxrows_svp : &PL_sv_undef);  | 
 
| 
198
 | 
 4  | 
 226  | 
     if (SvROK(ST(1))) {  | 
 
| 
202
 | 
 4  | 
 0  | 
         if ( (mg = mg_find(SvRV(sth),'P')) )  | 
 
| 
209
 | 
 2  | 
 224  | 
         if (!SvROK(sth)) {  | 
 
| 
210
 | 
 0  | 
 2  | 
             if (is_selectrow_array) { XSRETURN_EMPTY; } else { XSRETURN_UNDEF; }  | 
 
| 
217
 | 
 35  | 
 193  | 
     if (items > 3) {    /* need to bind params before execute */  | 
 
| 
218
 | 
 0  | 
 35  | 
         if (!dbdxst_bind_params(sth, imp_sth, items-2, ax+2) ) {  | 
 
| 
219
 | 
 0  | 
 0  | 
             if (is_selectrow_array) { XSRETURN_EMPTY; } else { XSRETURN_UNDEF; }  | 
 
| 
224
 | 
 6  | 
 222  | 
     if ( dbd_st_execute(sth, imp_sth) <= -2 ) { /* -2 == error */  | 
 
| 
225
 | 
 0  | 
 6  | 
         if (is_selectrow_array) { XSRETURN_EMPTY; } else { XSRETURN_UNDEF; }  | 
 
| 
229
 | 
 4  | 
 218  | 
     if (!row_av) {  | 
 
| 
230
 | 
 4  | 
 0  | 
         if (GIMME == G_SCALAR)  | 
 
| 
 | 
 0  | 
 4  | 
         if (GIMME == G_SCALAR)  | 
 
| 
233
 | 
 39  | 
 179  | 
     else if (is_selectrow_array) {  | 
 
| 
235
 | 
 0  | 
 39  | 
         int num_fields = AvFILL(row_av)+1;  | 
 
| 
236
 | 
 39  | 
 0  | 
         if (GIMME == G_SCALAR)  | 
 
| 
 | 
 5  | 
 34  | 
         if (GIMME == G_SCALAR)  | 
 
| 
238
 | 
 39  | 
 0  | 
         EXTEND(sp, num_fields);  | 
 
| 
 | 
 0  | 
 39  | 
         EXTEND(sp, num_fields);  | 
 
| 
239
 | 
 40  | 
 39  | 
         for(i=0; i < num_fields; ++i) {  | 
 
| 
302
 | 
 2  | 
 74  | 
     if (DBIc_has(imp_dbh,DBIcf_AutoCommit) && DBIc_WARN(imp_dbh))  | 
 
| 
 | 
 2  | 
 0  | 
     if (DBIc_has(imp_dbh,DBIcf_AutoCommit) && DBIc_WARN(imp_dbh))  | 
 
| 
304
 | 
 70  | 
 6  | 
     ST(0) = dbd_db_commit(dbh, imp_dbh) ? &PL_sv_yes : &PL_sv_no;  | 
 
| 
312
 | 
 2  | 
 21  | 
     if (DBIc_has(imp_dbh,DBIcf_AutoCommit) && DBIc_WARN(imp_dbh))  | 
 
| 
 | 
 2  | 
 0  | 
     if (DBIc_has(imp_dbh,DBIcf_AutoCommit) && DBIc_WARN(imp_dbh))  | 
 
| 
314
 | 
 21  | 
 2  | 
     ST(0) = dbd_db_rollback(dbh, imp_dbh) ? &PL_sv_yes : &PL_sv_no;  | 
 
| 
322
 | 
 2  | 
 90  | 
     if ( !DBIc_ACTIVE(imp_dbh) ) {  | 
 
| 
327
 | 
 1  | 
 89  | 
     if (DBIc_ACTIVE_KIDS(imp_dbh) && DBIc_WARN(imp_dbh) && !PL_dirty) {  | 
 
| 
 | 
 1  | 
 0  | 
     if (DBIc_ACTIVE_KIDS(imp_dbh) && DBIc_WARN(imp_dbh) && !PL_dirty) {  | 
 
| 
 | 
 1  | 
 0  | 
     if (DBIc_ACTIVE_KIDS(imp_dbh) && DBIc_WARN(imp_dbh) && !PL_dirty) {  | 
 
| 
329
 | 
 1  | 
 0  | 
         char *plural = (DBIc_ACTIVE_KIDS(imp_dbh)==1) ? (char*)"" : (char*)"s";  | 
 
| 
330
 | 
 0  | 
 1  | 
         warn("%s->disconnect invalidates %d active statement handle%s %s",  | 
 
| 
334
 | 
 90  | 
 0  | 
     ST(0) = dbd_db_disconnect(dbh, imp_dbh) ? &PL_sv_yes : &PL_sv_no;  | 
 
| 
335
 | 
 0  | 
 90  | 
     DBIc_ACTIVE_off(imp_dbh);   /* ensure it's off, regardless */  | 
 
| 
 | 
 0  | 
 0  | 
     DBIc_ACTIVE_off(imp_dbh);   /* ensure it's off, regardless */  | 
 
| 
 | 
 0  | 
 0  | 
     DBIc_ACTIVE_off(imp_dbh);   /* ensure it's off, regardless */  | 
 
| 
 | 
 0  | 
 0  | 
     DBIc_ACTIVE_off(imp_dbh);   /* ensure it's off, regardless */  | 
 
| 
 | 
 0  | 
 0  | 
     DBIc_ACTIVE_off(imp_dbh);   /* ensure it's off, regardless */  | 
 
| 
345
 | 
 0  | 
 1334  | 
     if (SvGMAGICAL(valuesv))  | 
 
| 
348
 | 
 965  | 
 369  | 
     if (!dbd_db_STORE_attrib(dbh, imp_dbh, keysv, valuesv))  | 
 
| 
349
 | 
 17  | 
 948  | 
         if (!DBIc_DBISTATE(imp_dbh)->set_attr(dbh, keysv, valuesv))  | 
 
| 
360
 | 
 287  | 
 2896  | 
     if (!valuesv)  | 
 
| 
372
 | 
 6  | 
 248  | 
     if (!DBIc_IMPSET(imp_dbh)) {        /* was never fully set up       */  | 
 
| 
374
 | 
 6  | 
 0  | 
         if (DBIc_WARN(imp_dbh) && !PL_dirty && DBIc_DBISTATE(imp_dbh)->debug >= 2)  | 
 
| 
 | 
 6  | 
 0  | 
         if (DBIc_WARN(imp_dbh) && !PL_dirty && DBIc_DBISTATE(imp_dbh)->debug >= 2)  | 
 
| 
 | 
 0  | 
 6  | 
         if (DBIc_WARN(imp_dbh) && !PL_dirty && DBIc_DBISTATE(imp_dbh)->debug >= 2)  | 
 
| 
375
 | 
 0  | 
 0  | 
              PerlIO_printf(DBIc_LOGPIO(imp_dbh),  | 
 
| 
380
 | 
 2  | 
 246  | 
         if (DBIc_IADESTROY(imp_dbh)) {            /* wants ineffective destroy */  | 
 
| 
381
 | 
 0  | 
 2  | 
             DBIc_ACTIVE_off(imp_dbh);  | 
 
| 
 | 
 0  | 
 0  | 
             DBIc_ACTIVE_off(imp_dbh);  | 
 
| 
 | 
 0  | 
 0  | 
             DBIc_ACTIVE_off(imp_dbh);  | 
 
| 
 | 
 0  | 
 0  | 
             DBIc_ACTIVE_off(imp_dbh);  | 
 
| 
 | 
 0  | 
 0  | 
             DBIc_ACTIVE_off(imp_dbh);  | 
 
| 
382
 | 
 0  | 
 2  | 
             if (DBIc_DBISTATE(imp_dbh)->debug)  | 
 
| 
383
 | 
 0  | 
 0  | 
                  PerlIO_printf(DBIc_LOGPIO(imp_dbh), "         DESTROY %s skipped due to InactiveDestroy\n", SvPV_nolen(dbh));  | 
 
| 
385
 | 
 156  | 
 92  | 
         if (DBIc_ACTIVE(imp_dbh)) {  | 
 
| 
386
 | 
 5  | 
 151  | 
             if (!DBIc_has(imp_dbh,DBIcf_AutoCommit)) {  | 
 
| 
397
 | 
 4  | 
 1  | 
                 if (DBIc_WARN(imp_dbh) /* only warn if likely to be useful... */  | 
 
| 
398
 | 
 0  | 
 4  | 
                 &&  DBIc_is(imp_dbh, DBIcf_Executed) /* has not just called commit/rollback */  | 
 
| 
400
 | 
 0  | 
 0  | 
                 && (!PL_dirty || DBIc_DBISTATE(imp_dbh)->debug >= 3)  | 
 
| 
 | 
 0  | 
 0  | 
                 && (!PL_dirty || DBIc_DBISTATE(imp_dbh)->debug >= 3)  | 
 
| 
402
 | 
 0  | 
 0  | 
                     warn("Issuing rollback() due to DESTROY without explicit disconnect() of %s handle %s",  | 
 
| 
 | 
 0  | 
 0  | 
                     warn("Issuing rollback() due to DESTROY without explicit disconnect() of %s handle %s",  | 
 
| 
410
 | 
 0  | 
 156  | 
             DBIc_ACTIVE_off(imp_dbh);   /* ensure it's off, regardless */  | 
 
| 
 | 
 0  | 
 0  | 
             DBIc_ACTIVE_off(imp_dbh);   /* ensure it's off, regardless */  | 
 
| 
 | 
 0  | 
 0  | 
             DBIc_ACTIVE_off(imp_dbh);   /* ensure it's off, regardless */  | 
 
| 
 | 
 0  | 
 0  | 
             DBIc_ACTIVE_off(imp_dbh);   /* ensure it's off, regardless */  | 
 
| 
 | 
 0  | 
 0  | 
             DBIc_ACTIVE_off(imp_dbh);   /* ensure it's off, regardless */  | 
 
| 
477
 | 
 787  | 
 350  | 
     DBD_ATTRIBS_CHECK("_prepare", sth, attribs);  | 
 
| 
 | 
 683  | 
 104  | 
     DBD_ATTRIBS_CHECK("_prepare", sth, attribs);  | 
 
| 
 | 
 683  | 
 0  | 
     DBD_ATTRIBS_CHECK("_prepare", sth, attribs);  | 
 
| 
 | 
 0  | 
 683  | 
     DBD_ATTRIBS_CHECK("_prepare", sth, attribs);  | 
 
| 
 | 
 104  | 
 0  | 
     DBD_ATTRIBS_CHECK("_prepare", sth, attribs);  | 
 
| 
 | 
 0  | 
 104  | 
     DBD_ATTRIBS_CHECK("_prepare", sth, attribs);  | 
 
| 
 | 
 0  | 
 0  | 
     DBD_ATTRIBS_CHECK("_prepare", sth, attribs);  | 
 
| 
 | 
 0  | 
 0  | 
     DBD_ATTRIBS_CHECK("_prepare", sth, attribs);  | 
 
| 
479
 | 
 1127  | 
 10  | 
     ST(0) = dbd_st_prepare_sv(sth, imp_sth, statement, attribs) ? &PL_sv_yes : &PL_sv_no;  | 
 
| 
510
 | 
 0  | 
 235  | 
     if (SvGMAGICAL(ref))  | 
 
| 
512
 | 
 145  | 
 90  | 
     if (attribs) {  | 
 
| 
513
 | 
 1  | 
 144  | 
         if (SvNIOK(attribs)) {  | 
 
| 
514
 | 
 1  | 
 0  | 
             sql_type = SvIV(attribs);  | 
 
| 
519
 | 
 144  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_col", sth, attribs);  | 
 
| 
 | 
 143  | 
 1  | 
             DBD_ATTRIBS_CHECK("bind_col", sth, attribs);  | 
 
| 
 | 
 143  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_col", sth, attribs);  | 
 
| 
 | 
 0  | 
 143  | 
             DBD_ATTRIBS_CHECK("bind_col", sth, attribs);  | 
 
| 
 | 
 1  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_col", sth, attribs);  | 
 
| 
 | 
 0  | 
 1  | 
             DBD_ATTRIBS_CHECK("bind_col", sth, attribs);  | 
 
| 
 | 
 0  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_col", sth, attribs);  | 
 
| 
 | 
 0  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_col", sth, attribs);  | 
 
| 
521
 | 
 1  | 
 143  | 
             DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);  | 
 
| 
 | 
 1  | 
 0  | 
             DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);  | 
 
| 
 | 
 1  | 
 0  | 
             DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);  | 
 
| 
 | 
 1  | 
 143  | 
             DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);  | 
 
| 
 | 
 1  | 
 0  | 
             DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);  | 
 
| 
529
 | 
 235  | 
 0  | 
                     ? &PL_sv_yes : &PL_sv_no;  | 
 
| 
548
 | 
 0  | 
 271  | 
     if (SvGMAGICAL(value))  | 
 
| 
550
 | 
 229  | 
 42  | 
     if (attribs) {  | 
 
| 
551
 | 
 162  | 
 67  | 
         if (SvNIOK(attribs)) {  | 
 
| 
552
 | 
 162  | 
 0  | 
             sql_type = SvIV(attribs);  | 
 
| 
557
 | 
 67  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_param", sth, attribs);  | 
 
| 
 | 
 64  | 
 3  | 
             DBD_ATTRIBS_CHECK("bind_param", sth, attribs);  | 
 
| 
 | 
 64  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_param", sth, attribs);  | 
 
| 
 | 
 0  | 
 64  | 
             DBD_ATTRIBS_CHECK("bind_param", sth, attribs);  | 
 
| 
 | 
 3  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_param", sth, attribs);  | 
 
| 
 | 
 0  | 
 3  | 
             DBD_ATTRIBS_CHECK("bind_param", sth, attribs);  | 
 
| 
 | 
 0  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_param", sth, attribs);  | 
 
| 
 | 
 0  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_param", sth, attribs);  | 
 
| 
559
 | 
 3  | 
 64  | 
             DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);  | 
 
| 
 | 
 3  | 
 0  | 
             DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);  | 
 
| 
 | 
 3  | 
 0  | 
             DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);  | 
 
| 
 | 
 3  | 
 64  | 
             DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);  | 
 
| 
 | 
 3  | 
 0  | 
             DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);  | 
 
| 
563
 | 
 270  | 
 1  | 
                 ? &PL_sv_yes : &PL_sv_no;  | 
 
| 
579
 | 
 0  | 
 0  | 
     if (!SvROK(value_ref) || SvTYPE(SvRV(value_ref)) > SVt_PVMG)  | 
 
| 
 | 
 0  | 
 0  | 
     if (!SvROK(value_ref) || SvTYPE(SvRV(value_ref)) > SVt_PVMG)  | 
 
| 
582
 | 
 0  | 
 0  | 
     if (SvREADONLY(value))  | 
 
| 
584
 | 
 0  | 
 0  | 
     if (SvGMAGICAL(value))  | 
 
| 
586
 | 
 0  | 
 0  | 
     if (attribs) {  | 
 
| 
587
 | 
 0  | 
 0  | 
         if (SvNIOK(attribs)) {  | 
 
| 
588
 | 
 0  | 
 0  | 
             sql_type = SvIV(attribs);  | 
 
| 
593
 | 
 0  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_param", sth, attribs);  | 
 
| 
 | 
 0  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_param", sth, attribs);  | 
 
| 
 | 
 0  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_param", sth, attribs);  | 
 
| 
 | 
 0  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_param", sth, attribs);  | 
 
| 
 | 
 0  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_param", sth, attribs);  | 
 
| 
 | 
 0  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_param", sth, attribs);  | 
 
| 
 | 
 0  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_param", sth, attribs);  | 
 
| 
 | 
 0  | 
 0  | 
             DBD_ATTRIBS_CHECK("bind_param", sth, attribs);  | 
 
| 
594
 | 
 0  | 
 0  | 
             DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);  | 
 
| 
 | 
 0  | 
 0  | 
             DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);  | 
 
| 
 | 
 0  | 
 0  | 
             DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);  | 
 
| 
 | 
 0  | 
 0  | 
             DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);  | 
 
| 
 | 
 0  | 
 0  | 
             DBD_ATTRIB_GET_IV(attribs, "TYPE",4, svp, sql_type);  | 
 
| 
598
 | 
 0  | 
 0  | 
                 ? &PL_sv_yes : &PL_sv_no;  | 
 
| 
608
 | 
 357  | 
 595  | 
     if (items > 1) {    /* need to bind params */  | 
 
| 
609
 | 
 0  | 
 357  | 
         if (!dbdxst_bind_params(sth, imp_sth, items, ax) ) {  | 
 
| 
617
 | 
 462  | 
 490  | 
     if (retval == 0)            /* ok with no rows affected     */  | 
 
| 
619
 | 
 11  | 
 479  | 
     else if (retval < -1)       /* -1 == unknown number of rows */  | 
 
| 
652
 | 
 876  | 
 313  | 
     ST(0) = (av) ? sv_2mortal(newRV((SV *)av)) : &PL_sv_undef;  | 
 
| 
664
 | 
 34  | 
 10  | 
     if (av) {  | 
 
| 
666
 | 
 0  | 
 34  | 
         int num_fields = AvFILL(av)+1;  | 
 
| 
667
 | 
 34  | 
 0  | 
         EXTEND(sp, num_fields);  | 
 
| 
 | 
 0  | 
 34  | 
         EXTEND(sp, num_fields);  | 
 
| 
668
 | 
 50  | 
 34  | 
         for(i=0; i < num_fields; ++i) {  | 
 
| 
681
 | 
 18  | 
 47  | 
     if (SvOK(slice)) {  /* fallback to perl implementation */  | 
 
| 
 | 
 18  | 
 0  | 
     if (SvOK(slice)) {  /* fallback to perl implementation */  | 
 
| 
 | 
 0  | 
 18  | 
     if (SvOK(slice)) {  /* fallback to perl implementation */  | 
 
| 
699
 | 
 44  | 
 17  | 
     if (!DBIc_ACTIVE(imp_sth)) {  | 
 
| 
703
 | 
 0  | 
 17  | 
     if (!DBIc_ACTIVE(imp_dbh)) {  | 
 
| 
706
 | 
 0  | 
 0  | 
         DBIc_ACTIVE_off(imp_sth);  | 
 
| 
 | 
 0  | 
 0  | 
         DBIc_ACTIVE_off(imp_sth);  | 
 
| 
 | 
 0  | 
 0  | 
         DBIc_ACTIVE_off(imp_sth);  | 
 
| 
 | 
 0  | 
 0  | 
         DBIc_ACTIVE_off(imp_sth);  | 
 
| 
 | 
 0  | 
 0  | 
         DBIc_ACTIVE_off(imp_sth);  | 
 
| 
710
 | 
 17  | 
 0  | 
     ST(0) = dbd_st_finish3(sth, imp_sth, 0) ? &PL_sv_yes : &PL_sv_no;  | 
 
| 
727
 | 
 0  | 
 0  | 
     if (!destrv)  | 
 
| 
729
 | 
 0  | 
 0  | 
     if (dbd_st_blob_read(sth, imp_sth, field, offset, len, destrv, destoffset))  | 
 
| 
742
 | 
 0  | 
 5  | 
     if (SvGMAGICAL(valuesv))  | 
 
| 
745
 | 
 5  | 
 0  | 
     if (!dbd_st_STORE_attrib(sth, imp_sth, keysv, valuesv))  | 
 
| 
746
 | 
 0  | 
 5  | 
         if (!DBIc_DBISTATE(imp_sth)->set_attr(sth, keysv, valuesv))  | 
 
| 
762
 | 
 199  | 
 686  | 
     if (!valuesv)  | 
 
| 
774
 | 
 10  | 
 1127  | 
     if (!DBIc_IMPSET(imp_sth)) {        /* was never fully set up       */  | 
 
| 
776
 | 
 10  | 
 0  | 
         if (DBIc_WARN(imp_sth) && !PL_dirty && DBIc_DBISTATE(imp_sth)->debug >= 2)  | 
 
| 
 | 
 10  | 
 0  | 
         if (DBIc_WARN(imp_sth) && !PL_dirty && DBIc_DBISTATE(imp_sth)->debug >= 2)  | 
 
| 
 | 
 0  | 
 10  | 
         if (DBIc_WARN(imp_sth) && !PL_dirty && DBIc_DBISTATE(imp_sth)->debug >= 2)  | 
 
| 
777
 | 
 0  | 
 0  | 
              PerlIO_printf(DBIc_LOGPIO(imp_sth),  | 
 
| 
782
 | 
 0  | 
 1127  | 
         if (DBIc_IADESTROY(imp_sth)) {  /* wants ineffective destroy    */  | 
 
| 
783
 | 
 0  | 
 0  | 
             DBIc_ACTIVE_off(imp_sth);  | 
 
| 
 | 
 0  | 
 0  | 
             DBIc_ACTIVE_off(imp_sth);  | 
 
| 
 | 
 0  | 
 0  | 
             DBIc_ACTIVE_off(imp_sth);  | 
 
| 
 | 
 0  | 
 0  | 
             DBIc_ACTIVE_off(imp_sth);  | 
 
| 
 | 
 0  | 
 0  | 
             DBIc_ACTIVE_off(imp_sth);  | 
 
| 
784
 | 
 0  | 
 0  | 
             if (DBIc_DBISTATE(imp_sth)->debug)  | 
 
| 
785
 | 
 0  | 
 0  | 
                  PerlIO_printf(DBIc_LOGPIO(imp_sth), "         DESTROY %s skipped due to InactiveDestroy\n", SvPV_nolen(sth));  | 
 
| 
787
 | 
 58  | 
 1069  | 
         if (DBIc_ACTIVE(imp_sth)) {  | 
 
| 
789
 | 
 58  | 
 0  | 
             if (!PL_dirty && DBIc_ACTIVE(imp_dbh)) {  | 
 
| 
 | 
 57  | 
 1  | 
             if (!PL_dirty && DBIc_ACTIVE(imp_dbh)) {  | 
 
| 
797
 | 
 1  | 
 0  | 
                 DBIc_ACTIVE_off(imp_sth);  | 
 
| 
 | 
 1  | 
 0  | 
                 DBIc_ACTIVE_off(imp_sth);  | 
 
| 
 | 
 1  | 
 0  | 
                 DBIc_ACTIVE_off(imp_sth);  | 
 
| 
 | 
 1  | 
 0  | 
                 DBIc_ACTIVE_off(imp_sth);  | 
 
| 
 | 
 0  | 
 1  | 
                 DBIc_ACTIVE_off(imp_sth);  |