On Mon, Dec 06, 2004 at 10:30:03AM +0000, Tim Bunce wrote:
> I've appended a provisional patch.

Here's one that works:

@@ -2870,7 +2872,11 @@
        sprintf(intro,"%s %s %s: ", HvNAME(DBIc_IMP_STASH(imp_xxh)), 
err_meth_name,
            SvTRUE(err_sv) ? "failed" : is_warning ? "warning" : "information");
        msg = sv_2mortal(newSVpv(intro,0));
-       sv_catsv(msg, DBIc_ERRSTR(imp_xxh));
+       if (SvOK(DBIc_ERRSTR(imp_xxh)))
+           sv_catsv(msg, DBIc_ERRSTR(imp_xxh));
+       else
+           sv_catpvf(msg, "(err=%s, errstr=undef, state=%s)",
+               neatsvpv(DBIc_ERR(imp_xxh),0), neatsvpv(DBIc_STATE(imp_xxh),0) 
);

        if (    DBIc_has(imp_xxh, DBIcf_ShowErrorStatement)
            && (DBIc_TYPE(imp_xxh) == DBIt_ST || ima_flags & IMA_SHOW_ERR_STMT)

Tim.

Reply via email to