1
0
Fork 0
mirror of https://github.com/DBD-SQLite/DBD-SQLite synced 2025-06-07 14:19:10 -04:00
Commit graph

18 commits

Author SHA1 Message Date
Max Maischein
1fd1a0d15f Handle 'unknown' op in DBD::SQLite::VirtualTable::PerlData
This patch adds code and a test when SQLite generates an 'unknown'
op for a table join in the BEST_INDEX() callback. The Perl code crashed
when such an op was generated for a JOIN criterion by the SQLite engine.

The SQLite engine creates an 'unknown' op on the following SQL
for example:

                select r.nodepath
                  from temp.scan_results r
                       left join temp.scan_results m
                             on r.nodepath = m.nodepath+1
                 where m.nodepath is null

The important part is that the right side of the left join must be
checked for IS NULL.
2019-01-25 19:05:07 +01:00
Kenichi Ishigaki
1eda646cd8 Apply a patch from Björn Höhrmann (fix #31) 2018-11-03 17:13:55 +09:00
Kenichi Ishigaki
573d6f02b7 fixed ISNOT undef case 2017-11-21 05:15:27 +09:00
Kenichi Ishigaki
da3306e443 added new index constraint ops introduced in SQLite 3.21.0 to PerlData (GH#28) 2017-11-21 03:25:30 +09:00
Kenichi Ishigaki
ea07bcc638 LIKE/GLOB/REGEXP are also required to be implemented for SQLite 3.10.0 and above 2016-01-07 19:47:10 +09:00
Kenichi Ishigaki
1cedb037a8 silenced a compile-time deprecation warning (Unescaped left brace in regex is deprecated) under bleadperl 2014-11-26 17:47:54 +09:00
Laurent Dami
13e2b63d26 #99748 catch runtime errors occurring when user input for the MATCH operator is not a proper regex 2014-11-25 04:30:57 +01:00
Laurent Dami
28fc0e459e RT#99748: replacing interpolated variables by a closure -- no risk of code injection 2014-10-29 06:57:17 +02:00
Kenichi Ishigaki
9b227e74f4 fixed a case where bind param is undef (which should be converted to NULL) 2014-10-28 16:13:46 +09:00
Kenichi Ishigaki
0cd3997830 use quotemeta (as adviced in RT-99748) to address serious security issues 2014-10-28 15:12:29 +09:00
Laurent Dami
c6d9c27e22 RT#99748
- added support for undef (NULLs) in comparisons
- new test file t/virtual_table/rt_99748.t for testing nulls and comparing vtable with a regular table
- tests that no security holes can be inserted in compiled regexes
- ROWIDs start at 1, not at 0
- replaced qr{..} by m{..}
2014-10-25 21:06:16 +02:00
Kenichi Ishigaki
6ab97143c8 oops, overlooked unnecessary non-core deps 2014-07-21 14:16:52 +09:00
Kenichi Ishigaki
590d084b3d not to depend on YAML::XS/List::MoreUtils 2014-07-21 09:02:08 +09:00
Laurent Dami
0ec13083f1 implementation of FIND_FUNCTION, plus a couple of cosmetic changes in various places 2014-07-20 18:57:19 +02:00
Laurent Dami
bf65db231f various fixes / improvements 2014-07-12 08:20:19 +02:00
Laurent Dami
9018a4683c various code refactorings, completion of the doc 2014-07-11 06:06:19 +02:00
Laurent Dami
d6a77c88ea bug corrections & addition of class VirtualTable/PerlData 2014-07-10 05:45:28 +02:00
Laurent Dami
78984a9de8 initial support for virtual tables in Perl (WORK IN PROGRESS) 2014-07-09 08:31:34 +02:00