src/evsql/result.c
branchnew-evsql
changeset 46 75cecfc4603b
parent 45 424ce5ab82fd
child 51 c65d0f4c3bff
equal deleted inserted replaced
45:424ce5ab82fd 46:75cecfc4603b
   114         XERROR(err = ENOENT, "no rows returned/affected");
   114         XERROR(err = ENOENT, "no rows returned/affected");
   115 */
   115 */
   116 
   116 
   117     // correct number of columns
   117     // correct number of columns
   118     if (evsql_result_cols(res) != cols)
   118     if (evsql_result_cols(res) != cols)
   119         XERROR(err = EINVAL, "wrong number of columns: %zu -> %zu", cols, evsql_result_cols(res));
   119         XERROR(err = EINVAL, "wrong number of columns: %zu, should be %zu", evsql_result_cols(res), cols);
   120     
   120     
   121     // assign
   121     // assign
   122     res->info = info;
   122     res->info = info;
   123     res->row_offset = 0;
   123     res->row_offset = 0;
   124 
   124 
   225             default:
   225             default:
   226                 XERROR(err = EINVAL, "r%zu:c%zu: invalid type: %d", row_idx, col_idx, col->type);
   226                 XERROR(err = EINVAL, "r%zu:c%zu: invalid type: %d", row_idx, col_idx, col->type);
   227         }
   227         }
   228     }
   228     }
   229 
   229 
       
   230     // advance row index
       
   231     res->row_offset++;
       
   232 
   230     // row handled succesfully
   233     // row handled succesfully
   231     return 1;
   234     return 1;
   232 
   235 
   233 error:
   236 error:
   234     return -err;
   237     return -err;