@@ -90,7 +90,14 @@ static inline int get_columns(db_con_t* _h, db_res_t* _r)
case FIELD_TYPE_DATETIME:
RES_TYPES(_r)[i] = DB_DATETIME;
break;
-
+
+ case FIELD_TYPE_BLOB:
+ case FIELD_TYPE_TINY_BLOB:
+ case FIELD_TYPE_MEDIUM_BLOB:
+ case FIELD_TYPE_LONG_BLOB:
+ RES_TYPES(_r)[i] = DB_BLOB;
+ break;
default:
RES_TYPES(_r)[i] = DB_STRING;
@@ -49,7 +49,7 @@ int convert_row(db_con_t* _h, db_res_t* _res, db_row_t* _r)
}
#endif
- ROW_VALUES(_r) = (db_val_t*)pkg_malloc(sizeof(db_val_t) * RES_COL_N(_res));
+ ROW_VALUES(_r) = (db_val_t*)pkg_malloc(sizeof(db_val_t) * RES_COL_N(_res));
ROW_N(_r) = RES_COL_N(_res);
if (!ROW_VALUES(_r)) {
LOG(L_ERR, "convert_row(): No memory left\n");
@@ -151,6 +151,7 @@ int str2val(db_type_t _t, db_val_t* _v, const char* _s, int _l)
VAL_NULL(_v) = 1;
return 0;
+ VAL_NULL(_v) = 0;
switch(_t) {
case DB_INT: