Hello community,

here is the log from the commit of package libdbi-drivers for openSUSE:Factory 
checked in at 2014-05-13 20:44:44
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libdbi-drivers (Old)
 and      /work/SRC/openSUSE:Factory/.libdbi-drivers.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libdbi-drivers"

Changes:
--------
--- /work/SRC/openSUSE:Factory/libdbi-drivers/libdbi-drivers.changes    
2014-04-30 15:05:52.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.libdbi-drivers.new/libdbi-drivers.changes       
2014-05-13 20:44:45.000000000 +0200
@@ -1,0 +2,6 @@
+Thu May  8 21:15:16 UTC 2014 - [email protected]
+
+- Update to new git snapshot 0.9.0+git42
+* dbd_mysql, dbd_msql: avoid NULL dereference
+
+-------------------------------------------------------------------

Old:
----
  libdbi-drivers-0.9.0.g40.tar.xz

New:
----
  libdbi-drivers-0.9.0.g42.tar.xz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libdbi-drivers.spec ++++++
--- /var/tmp/diff_new_pack.GTmJrZ/_old  2014-05-13 20:44:46.000000000 +0200
+++ /var/tmp/diff_new_pack.GTmJrZ/_new  2014-05-13 20:44:46.000000000 +0200
@@ -17,8 +17,8 @@
 
 
 Name:           libdbi-drivers
-Version:        0.9.0.g40
-#Snapshot:     libdbi-drivers-0.9.0-40-gb48dd7e
+Version:        0.9.0.g42
+#Snapshot:     libdbi-drivers-0.9.0-42-g209e317
 Release:        0
 Summary:        Database drivers for libdbi
 License:        LGPL-2.1+

++++++ libdbi-drivers-0.9.0.g40.tar.xz -> libdbi-drivers-0.9.0.g42.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libdbi-drivers/drivers/db2/Makefile.am 
new/libdbi-drivers/drivers/db2/Makefile.am
--- old/libdbi-drivers/drivers/db2/Makefile.am  2014-04-17 16:50:49.000000000 
+0200
+++ new/libdbi-drivers/drivers/db2/Makefile.am  2014-05-01 17:11:16.000000000 
+0200
@@ -31,7 +31,8 @@
 AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/include @DBI_INCLUDE@ 
@DB2_INCLUDE@
 
 driver_LTLIBRARIES = $(db2_ltlibs)
-libdbddb2_la_LDFLAGS = $(db2_ldflags) @DB2_LDFLAGS@ @DB2_LIBS@ @LIBADD_LIBDBI@
+libdbddb2_la_LDFLAGS = $(db2_ldflags)
+libdbddb2_la_LIBADD = @DB2_LDFLAGS@ @DB2_LIBS@ @LIBADD_LIBDBI@
 libdbddb2_la_SOURCES = $(db2_sources)
 libdbddb2_la_DEPENDENCIES = dbd_db2.h
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libdbi-drivers/drivers/firebird/Makefile.am 
new/libdbi-drivers/drivers/firebird/Makefile.am
--- old/libdbi-drivers/drivers/firebird/Makefile.am     2014-04-17 
16:50:49.000000000 +0200
+++ new/libdbi-drivers/drivers/firebird/Makefile.am     2014-05-01 
17:11:16.000000000 +0200
@@ -29,7 +29,8 @@
 AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/include @DBI_INCLUDE@ 
@FIREBIRD_INCLUDE@
 
 driver_LTLIBRARIES = $(firebird_ltlibs)
-libdbdfirebird_la_LDFLAGS = $(firebird_ldflags) @FIREBIRD_LDFLAGS@ 
@FIREBIRD_LIBS@ @LIBADD_LIBDBI@
+libdbdfirebird_la_LDFLAGS = $(firebird_ldflags)
+libdbdfirebird_la_LIBADD = @FIREBIRD_LDFLAGS@ @FIREBIRD_LIBS@ @LIBADD_LIBDBI@
 libdbdfirebird_la_SOURCES = $(firebird_sources)
 libdbdfirebird_la_DEPENDENCIES = dbd_firebird.h utility.h firebird_charsets.h
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libdbi-drivers/drivers/freetds/Makefile.am 
new/libdbi-drivers/drivers/freetds/Makefile.am
--- old/libdbi-drivers/drivers/freetds/Makefile.am      2014-04-17 
16:50:49.000000000 +0200
+++ new/libdbi-drivers/drivers/freetds/Makefile.am      2014-05-01 
17:11:16.000000000 +0200
@@ -30,7 +30,8 @@
 AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/include @DBI_INCLUDE@ 
@FREETDS_INCLUDE@
 
 driver_LTLIBRARIES = $(freetds_ltlibs)
-libdbdfreetds_la_LDFLAGS = $(freetds_ldflags) @FREETDS_LDFLAGS@ @FREETDS_LIBS@ 
@LIBADD_LIBDBI@
+libdbdfreetds_la_LDFLAGS = $(freetds_ldflags)
+libdbdfreetds_la_LIBADD = @FREETDS_LDFLAGS@ @FREETDS_LIBS@ @LIBADD_LIBDBI@
 libdbdfreetds_la_SOURCES = $(freetds_sources)
 libdbdfreetds_la_DEPENDENCIES = dbd_freetds.h
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libdbi-drivers/drivers/msql/Makefile.am 
new/libdbi-drivers/drivers/msql/Makefile.am
--- old/libdbi-drivers/drivers/msql/Makefile.am 2014-04-17 16:50:49.000000000 
+0200
+++ new/libdbi-drivers/drivers/msql/Makefile.am 2014-05-01 17:11:16.000000000 
+0200
@@ -31,7 +31,8 @@
 AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/include @DBI_INCLUDE@ 
@MSQL_INCLUDE@
 
 driver_LTLIBRARIES = $(msql_ltlibs)
-libdbdmsql_la_LDFLAGS = $(msql_ldflags) @MSQL_LDFLAGS@ @MSQL_LIBS@ 
@LIBADD_LIBDBI@
+libdbdmsql_la_LDFLAGS = $(msql_ldflags)
+libdbdmsql_la_LIBADD = @MSQL_LDFLAGS@ @MSQL_LIBS@ @LIBADD_LIBDBI@
 libdbdmsql_la_SOURCES = $(msql_sources)
 libdbdmsql_la_DEPENDENCIES = dbd_msql.h
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libdbi-drivers/drivers/msql/dbd_msql.c 
new/libdbi-drivers/drivers/msql/dbd_msql.c
--- old/libdbi-drivers/drivers/msql/dbd_msql.c  2014-04-17 16:50:49.000000000 
+0200
+++ new/libdbi-drivers/drivers/msql/dbd_msql.c  2014-05-04 10:41:08.000000000 
+0200
@@ -462,6 +462,8 @@
   
        msqlDataSeek(_res, rowidx);
        _row = msqlFetchRow(_res);
+       if (_row == NULL)
+               return;
        while ( curfield < result->numfields  ) {
                raw = _row[curfield];
                data = &row->field_values[curfield];
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libdbi-drivers/drivers/mysql/Makefile.am 
new/libdbi-drivers/drivers/mysql/Makefile.am
--- old/libdbi-drivers/drivers/mysql/Makefile.am        2014-04-17 
16:50:49.000000000 +0200
+++ new/libdbi-drivers/drivers/mysql/Makefile.am        2014-05-01 
17:11:16.000000000 +0200
@@ -33,7 +33,8 @@
 AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/include @DBI_INCLUDE@ 
@MYSQL_INCLUDE@
 
 driver_LTLIBRARIES = $(mysql_ltlibs)
-libdbdmysql_la_LDFLAGS = $(mysql_ldflags) @MYSQL_LDFLAGS@ @MYSQL_LIBS@ 
@LIBADD_LIBDBI@
+libdbdmysql_la_LDFLAGS = $(mysql_ldflags)
+libdbdmysql_la_LIBADD = @MYSQL_LDFLAGS@ @MYSQL_LIBS@ @LIBADD_LIBDBI@
 libdbdmysql_la_SOURCES = $(mysql_sources)
 libdbdmysql_la_DEPENDENCIES = dbd_mysql.h
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libdbi-drivers/drivers/mysql/dbd_mysql.c 
new/libdbi-drivers/drivers/mysql/dbd_mysql.c
--- old/libdbi-drivers/drivers/mysql/dbd_mysql.c        2014-04-17 
16:50:49.000000000 +0200
+++ new/libdbi-drivers/drivers/mysql/dbd_mysql.c        2014-05-04 
10:41:08.000000000 +0200
@@ -272,14 +272,23 @@
        return 0;
 }
 
-int dbd_goto_row(dbi_result_t *result, unsigned long long rowidx, unsigned 
long long currowidx) {
-  if (rowidx != currowidx+1) {
-       mysql_data_seek((MYSQL_RES *)result->result_handle, rowidx);
-       /* the return type of this function is indeed void, so it is
-          unclear what happens if rowidx is outside the range. The
-          calling function must make sure the row index is valid */
-  }
-  /* else: nothing to do, next fetch will fetch next row */
+int dbd_goto_row(dbi_result_t *result, unsigned long long rowidx,
+    unsigned long long currowidx)
+{
+       /*
+        * libmysqlclient, as of mysql-community-server-5.6.12, still uses
+        * a singly-linked list to collect rows, which explains the abysmal
+        * performance when seeking to large row indices.
+        */
+       if (rowidx != currowidx + 1) {
+               /*
+                * The return type of this function is indeed void, so it is
+                * unspecified what happens if rowidx is outside the range. The
+                * calling function must therefore make sure the row index is
+                * valid.
+                */
+               mysql_data_seek((MYSQL_RES *)result->result_handle, rowidx);
+       }
        return 1;
 }
 
@@ -837,6 +846,8 @@
        dbi_data_t *data;       
 
        _row = mysql_fetch_row(_res);
+       if (_row == NULL)
+               return;
        strsizes = (size_t *)mysql_fetch_lengths(_res);
 
        while (curfield < result->numfields) {
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libdbi-drivers/drivers/oracle/Makefile.am 
new/libdbi-drivers/drivers/oracle/Makefile.am
--- old/libdbi-drivers/drivers/oracle/Makefile.am       2014-04-17 
16:50:49.000000000 +0200
+++ new/libdbi-drivers/drivers/oracle/Makefile.am       2014-05-01 
17:11:16.000000000 +0200
@@ -31,7 +31,8 @@
 AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/include @DBI_INCLUDE@ 
@ORACLE_INCLUDE@
 
 driver_LTLIBRARIES = $(oracle_ltlibs)
-libdbdoracle_la_LDFLAGS = $(oracle_ldflags) @ORACLE_LDFLAGS@ @ORACLE_LIBS@ 
@LIBADD_LIBDBI@
+libdbdoracle_la_LDFLAGS = $(oracle_ldflags)
+libdbdoracle_la_LIBADD = @ORACLE_LDFLAGS@ @ORACLE_LIBS@ @LIBADD_LIBDBI@
 libdbdoracle_la_SOURCES = $(oracle_sources)
 libdbdoracle_la_DEPENDENCIES = dbd_oracle.h
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libdbi-drivers/drivers/pgsql/Makefile.am 
new/libdbi-drivers/drivers/pgsql/Makefile.am
--- old/libdbi-drivers/drivers/pgsql/Makefile.am        2014-04-17 
16:50:49.000000000 +0200
+++ new/libdbi-drivers/drivers/pgsql/Makefile.am        2014-05-01 
17:11:16.000000000 +0200
@@ -31,7 +31,8 @@
 AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/include @DBI_INCLUDE@ 
@PGSQL_INCLUDE@
 
 driver_LTLIBRARIES = $(pgsql_ltlibs)
-libdbdpgsql_la_LDFLAGS = $(pgsql_ldflags) @PGSQL_LDFLAGS@ @PGSQL_LIBS@ 
@LIBADD_LIBDBI@
+libdbdpgsql_la_LDFLAGS = $(pgsql_ldflags)
+libdbdpgsql_la_LIBADD = @PGSQL_LDFLAGS@ @PGSQL_LIBS@ @LIBADD_LIBDBI@
 libdbdpgsql_la_SOURCES = $(pgsql_sources)
 libdbdpgsql_la_DEPENDENCIES = dbd_pgsql.h
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libdbi-drivers/drivers/sqlite/Makefile.am 
new/libdbi-drivers/drivers/sqlite/Makefile.am
--- old/libdbi-drivers/drivers/sqlite/Makefile.am       2014-04-17 
16:50:49.000000000 +0200
+++ new/libdbi-drivers/drivers/sqlite/Makefile.am       2014-05-01 
17:11:16.000000000 +0200
@@ -31,7 +31,8 @@
 AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/include @DBI_INCLUDE@ 
@SQLITE_INCLUDE@
 
 driver_LTLIBRARIES = $(sqlite_ltlibs)
-libdbdsqlite_la_LDFLAGS = $(sqlite_ldflags) @SQLITE_LDFLAGS@ @SQLITE_LIBS@ 
@LIBADD_LIBDBI@
+libdbdsqlite_la_LDFLAGS = $(sqlite_ldflags)
+libdbdsqlite_la_LIBADD = @SQLITE_LDFLAGS@ @SQLITE_LIBS@ @LIBADD_LIBDBI@
 libdbdsqlite_la_SOURCES = $(sqlite_sources)
 libdbdsqlite_la_DEPENDENCIES = dbd_sqlite.h
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libdbi-drivers/drivers/sqlite3/Makefile.am 
new/libdbi-drivers/drivers/sqlite3/Makefile.am
--- old/libdbi-drivers/drivers/sqlite3/Makefile.am      2014-04-17 
16:50:49.000000000 +0200
+++ new/libdbi-drivers/drivers/sqlite3/Makefile.am      2014-05-01 
17:11:16.000000000 +0200
@@ -31,7 +31,8 @@
 AM_CPPFLAGS = -I$(top_srcdir) -I$(top_srcdir)/include @DBI_INCLUDE@ 
@SQLITE3_INCLUDE@
 
 driver_LTLIBRARIES = $(sqlite3_ltlibs)
-libdbdsqlite3_la_LDFLAGS = $(sqlite3_ldflags) @SQLITE3_LDFLAGS@ @SQLITE3_LIBS@ 
@LIBADD_LIBDBI@
+libdbdsqlite3_la_LDFLAGS = $(sqlite3_ldflags)
+libdbdsqlite3_la_LIBADD = @SQLITE3_LDFLAGS@ @SQLITE3_LIBS@ @LIBADD_LIBDBI@
 libdbdsqlite3_la_SOURCES = $(sqlite3_sources)
 libdbdsqlite3_la_DEPENDENCIES = dbd_sqlite3.h
 

-- 
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to