index 505124cae243b8e974c1790f8d04290e38f6c4c4..718309bfad693678f93e1017eb5e01578b1b3b5a 100644 (file)
#include <assert.h>
#include <ctype.h>
+#include <stdlib.h>
#include <string.h>
/*
status = (int)rcode;
result = sdb_strbuf_string(recv_buf);
+ /* At the moment, we don't care about the result type. We simply print the
+ * result without further parsing it. */
+ if (status == CONNECTION_DATA)
+ result += sizeof(uint32_t);
if (result && *result)
printf("%s\n", result);
else if (rcode == UINT32_MAX) {
* sends back. We'll wait for the first reply and then return to the
* main loop which will handle any subsequent replies, including
* eventually the reply to the query (if it's not the first reply). */
- if (sdb_command_print_reply(input->client) < 0)
+ if (sdb_command_print_reply(input->client) < 0) {
+ if (data)
+ free(data);
return NULL;
+ }
}
sdb_strbuf_skip(input->input, 0, input->query_len);