[Bug 1234733] perl-Padre-0.90-16.fc23 FTBFS: DBD::SQLite::db do failed: Safety level may not be changed inside a transaction at (eval 183) line 37

bugzilla at redhat.com bugzilla at redhat.com
Tue Jun 23 12:47:28 UTC 2015


https://bugzilla.redhat.com/show_bug.cgi?id=1234733

Petr Pisar <ppisar at redhat.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                URL|http://koji.fedoraproject.o |https://github.com/PadreIDE
                   |rg/koji/taskinfo?taskID=101 |/Padre/issues/17
                   |81132                       |



--- Comment #1 from Petr Pisar <ppisar at redhat.com> ---
The error is triggered by DBD-SQLite's commit:

commit 7a234eb71b955064ce498e95d6ecc50d1f0580a7
Author: Kenichi Ishigaki <ishigaki at cpan.org>
Date:   Mon Feb 16 17:41:42 2015 +0900

    implemented a "do" shortcut for a special case (no attr, no bind params)
(RT-35449)

It also adds this code into lib/DBD/SQLite.pm:

+    # shortcut
+    if  (defined $statement && !defined $attr && !@bind_values) {
+        # _do() (i.e. sqlite3_exec()) runs semicolon-separate SQL
+        # statements, which is handy but insecure sometimes.
+        # Use this only when it's safe or explicitly allowed.
+        if (index($statement, ';') == -1 or
$dbh->FETCH('sqlite_allow_multiple_statements')) {
+            return DBD::SQLite::db::_do($dbh, $statement);
+        }
+    }

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the perl-devel mailing list