Changeset 64-bit,16


Ignore:
Timestamp:
02/16/2008 06:29:04 PM (18 years ago)
Author:
David Owen <dsowen@…>
branch-nick:
64-bit
revision id:
dsowen@fugue88.ws-20080216182904-v9zd4g515y0vb9qe
Message:

Fix pointer/int cast problem.

Location:
64-bit/src/odbc
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • 64-bit/src/odbc/odbc-ff-interface.lisp

    r13 r16  
    3232(defctype sql-u-len sql-u-integer)
    3333(defctype sql-return sql-small-int)
     34(defctype sql-pointer-as-int
     35    #.(ecase (foreign-type-size :pointer)
     36        (1 :int8)
     37        (2 :int16)
     38        (4 :int32)
     39        (8 :int64)))
    3440
    3541(defctype *sql-small-int :pointer)
  • 64-bit/src/odbc/odbc-functions.lisp

    r15 r16  
    6969       (error-code (cffi:foreign-alloc 'sql-integer))
    7070       (msg-length (cffi:foreign-alloc 'sql-small-int)))
    71     (SQLError henv hdbc hstmt sql-state error-code
     71    (SQLError (or henv (null-pointer)) (or hdbc (null-pointer))
     72              (or hstmt (null-pointer)) sql-state error-code
    7273              error-message $SQL_MAX_MESSAGE_LENGTH msg-length)
    7374    (get-string sql-state 5)          ;(%cstring-to-keyword sql-state)
  • 64-bit/src/odbc/parameter.lisp

    r13 r16  
    334334      (progn
    335335        (setf (slot-value param 'temp-val) value)
    336         (setf (cffi:mem-ref (slot-value param 'value-ptr) 'sql-pointer)
     336        (setf (cffi:mem-ref (slot-value param 'value-ptr) 'sql-pointer-as-int)
    337337              (slot-value param 'position))
    338338        (setf (cffi:mem-ref (slot-value param 'ind-ptr) 'sql-len)
     
    384384    (progn
    385385      (setf (slot-value param 'temp-val) value)
    386       (setf (cffi:mem-ref (slot-value param 'value-ptr) 'sql-pointer)
     386      (setf (cffi:mem-ref (slot-value param 'value-ptr) 'sql-pointer-as-int)
    387387              (slot-value param 'position))
    388388      (setf (cffi:mem-ref (slot-value param 'ind-ptr) 'sql-len)
     
    434434    (progn
    435435      (setf (slot-value param 'temp-val) value)
    436       (setf (cffi:mem-ref (slot-value param 'value-ptr) 'sql-pointer)
     436      (setf (cffi:mem-ref (slot-value param 'value-ptr) 'sql-pointer-as-int)
    437437              (slot-value param 'position))
    438438      (setf (cffi:mem-ref (slot-value param 'ind-ptr) 'sql-len)
Note: See TracChangeset for help on using the changeset viewer.