|
@@ -157,7 +157,7 @@ int db_mysql_get_columns(const db_con_t* _h, db_res_t* _r)
|
|
|
*/
|
|
|
static inline int db_mysql_convert_rows(const db_con_t* _h, db_res_t* _r)
|
|
|
{
|
|
|
- int row, len;
|
|
|
+ int row;
|
|
|
|
|
|
if ((!_h) || (!_r)) {
|
|
|
LM_ERR("invalid parameter\n");
|
|
@@ -171,14 +171,10 @@ static inline int db_mysql_convert_rows(const db_con_t* _h, db_res_t* _r)
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
- len = sizeof(db_row_t) * RES_ROW_N(_r);
|
|
|
- RES_ROWS(_r) = (struct db_row*)pkg_malloc(len);
|
|
|
- if (!RES_ROWS(_r)) {
|
|
|
- LM_ERR("no private memory left\n");
|
|
|
+ if (db_allocate_rows(_r) < 0) {
|
|
|
+ LM_ERR("could not allocate rows");
|
|
|
return -2;
|
|
|
}
|
|
|
- LM_DBG("allocate %d bytes for rows at %p\n", len, RES_ROWS(_r));
|
|
|
- memset(RES_ROWS(_r), 0, len);
|
|
|
|
|
|
for(row = 0; row < RES_ROW_N(_r); row++) {
|
|
|
CON_ROW(_h) = mysql_fetch_row(CON_RESULT(_h));
|