From 2198de6b7f2aa6ef6dc135877fc9d179e5739225 Mon Sep 17 00:00:00 2001 From: Rob Holland Date: Mon, 12 May 2008 09:31:30 +0100 Subject: Use int_bind64 on Fixnum values larger than a 32bit C int can take. --- lib/sqlite3/statement.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'lib') diff --git a/lib/sqlite3/statement.rb b/lib/sqlite3/statement.rb index a78cc11..eeca6a2 100644 --- a/lib/sqlite3/statement.rb +++ b/lib/sqlite3/statement.rb @@ -90,7 +90,11 @@ module SQLite3 when Bignum then @driver.bind_int64( @handle, param, value ) when Integer then - @driver.bind_int( @handle, param, value ) + if value >= (2 ** 31) + @driver.bind_int64( @handle, param, value ) + else + @driver.bind_int( @handle, param, value ) + end when Numeric then @driver.bind_double( @handle, param, value.to_f ) when Blob then -- cgit