Improve processing of SQLITE_NULL
null-atom can be configured on configure or make stage. For example ./configure --enable-null-atom=undefined && make
This commit is contained in:
@@ -4,7 +4,7 @@ GCC=gcc
|
||||
LDFLAGS=-shared -L/usr/lib -lsqlite3 -undefined -fPIC -lerl_interface -L$(ERL_INTERFACE)/lib -lei
|
||||
SRCS=sqlite3_drv.c sqlite3_drv.h
|
||||
OUTPUT=sqlite3_drv.so
|
||||
CFLAGS=-o ../ebin/${OUTPUT} -I$(ERL_ROOT)/usr/include/ -I$(ERL_INTERFACE)/include/
|
||||
CFLAGS=-o ../ebin/${OUTPUT} -I$(ERL_ROOT)/usr/include/ -I$(ERL_INTERFACE)/include/ -DNULL_ATOM=@NULL_ATOM@
|
||||
|
||||
all: ../ebin/${OUTPUT}
|
||||
|
||||
|
||||
@@ -65,10 +65,12 @@ static ErlDrvData start(ErlDrvPort port, char* cmd) {
|
||||
retval->db = db;
|
||||
retval->key = 42; //FIXME: Just a magic number, make real key
|
||||
|
||||
#define STR_(ARG) #ARG
|
||||
#define STR(ARG) STR_(ARG)
|
||||
retval->atom_error = driver_mk_atom ("error");
|
||||
retval->atom_columns = driver_mk_atom ("columns");
|
||||
retval->atom_rows = driver_mk_atom ("rows");
|
||||
retval->atom_null = driver_mk_atom ("null");
|
||||
retval->atom_null = driver_mk_atom (STR (NULL_ATOM));
|
||||
retval->atom_id = driver_mk_atom ("id");
|
||||
retval->atom_ok = driver_mk_atom ("ok");
|
||||
retval->atom_unknown_cmd = driver_mk_atom ("uknown_command");
|
||||
|
||||
Reference in New Issue
Block a user