- Patch to build with system sqlite 3.3.x (#183530).
- Patch to avoid VIEW type information segv (#187873).f38
parent
5e5916115b
commit
801210e216
@ -0,0 +1,22 @@
|
|||||||
|
diff -ur DBD-SQLite-1.11.orig/dbdimp.c DBD-SQLite-1.11/dbdimp.c
|
||||||
|
--- DBD-SQLite-1.11.orig/dbdimp.c 2005-12-02 17:28:53.000000000 +0000
|
||||||
|
+++ DBD-SQLite-1.11/dbdimp.c 2006-02-06 12:10:31.000000000 +0000
|
||||||
|
@@ -677,11 +677,15 @@
|
||||||
|
retsv = sv_2mortal(newRV(sv_2mortal((SV*)av)));
|
||||||
|
for (n = 0; n < i; n++) {
|
||||||
|
const char *fieldtype = sqlite3_column_decltype(imp_sth->stmt, n);
|
||||||
|
- int type = sqlite3_column_type(imp_sth->stmt, n);
|
||||||
|
+ /* int type = sqlite3_column_type(imp_sth->stmt, n); */
|
||||||
|
/* warn("got type: %d = %s\n", type, fieldtype); */
|
||||||
|
- type = type_to_odbc_type(type);
|
||||||
|
+ /* type = type_to_odbc_type(type); */
|
||||||
|
/* av_store(av, n, newSViv(type)); */
|
||||||
|
- av_store(av, n, newSVpv(fieldtype, 0));
|
||||||
|
+ if (fieldtype == NULL) {
|
||||||
|
+ av_store(av, n, newSVpv("INTEGER", 0));
|
||||||
|
+ } else {
|
||||||
|
+ av_store(av, n, newSVpv(fieldtype, 0));
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (strEQ(key, "NULLABLE")) {
|
@ -0,0 +1,21 @@
|
|||||||
|
diff -durN DBD-SQLite-1.11/dbdimp.c DBD-SQLite-1.11.new/dbdimp.c
|
||||||
|
--- DBD-SQLite-1.11/dbdimp.c Sat Dec 3 01:28:53 2005
|
||||||
|
+++ DBD-SQLite-1.11.new/dbdimp.c Mon Mar 27 09:18:19 2006
|
||||||
|
@@ -260,7 +260,7 @@
|
||||||
|
imp_sth->retval = SQLITE_OK;
|
||||||
|
imp_sth->params = newAV();
|
||||||
|
|
||||||
|
- if ((retval = sqlite3_prepare(imp_dbh->db, statement, 0, &(imp_sth->stmt), &extra))
|
||||||
|
+ if ((retval = sqlite3_prepare(imp_dbh->db, statement, -1, &(imp_sth->stmt), &extra))
|
||||||
|
!= SQLITE_OK)
|
||||||
|
{
|
||||||
|
if (imp_sth->stmt) {
|
||||||
|
@@ -320,7 +320,7 @@
|
||||||
|
psv = hv_fetch((HV*)SvRV(sth), "Statement", 9, 0);
|
||||||
|
statement = (psv && SvOK(*psv)) ? SvPV_nolen(*psv) : "";
|
||||||
|
sqlite_trace(3, "re-prepare statement %s", statement);
|
||||||
|
- if ((retval = sqlite3_prepare(imp_dbh->db, statement, 0, &(imp_sth->stmt), &extra))
|
||||||
|
+ if ((retval = sqlite3_prepare(imp_dbh->db, statement, -1, &(imp_sth->stmt), &extra))
|
||||||
|
!= SQLITE_OK)
|
||||||
|
{
|
||||||
|
if (imp_sth->stmt) {
|
Loading…
Reference in new issue