diff options
author | Alan Fitton <ajf@eth0.org.uk> | 2011-09-18 18:01:27 +0000 |
---|---|---|
committer | Alan Fitton <ajf@eth0.org.uk> | 2011-09-18 18:01:27 +0000 |
commit | fdbfb01d85f49717c3b8928d97bc16c4e7b860d7 (patch) | |
tree | c64e1c66f0bf969935997fd0c31a03c05d07fd64 | |
parent | a681a90c2166722fedb52ecbbd4f9c56f97ebcd3 (diff) |
changes to make memory profiling easier
-rw-r--r-- | src/bencode.c | 8 | ||||
-rw-r--r-- | src/main.c | 7 | ||||
-rw-r--r-- | src/trg-client.c | 2 |
3 files changed, 12 insertions, 5 deletions
diff --git a/src/bencode.c b/src/bencode.c index 0f26f53..5f9c030 100644 --- a/src/bencode.c +++ b/src/bencode.c @@ -34,7 +34,7 @@ static be_node *be_alloc(be_type type) { - be_node *ret = calloc(1, sizeof(be_node)); + be_node *ret = g_malloc0(sizeof(be_node)); if (ret) ret->type = type; return ret; @@ -83,7 +83,7 @@ static char *_be_decode_str(const char **data, gint64 * data_len) len = slen; if (**data == ':') { - char *_ret = malloc(sizeof(sllen) + len + 1); + char *_ret = g_malloc(sizeof(sllen) + len + 1); memcpy(_ret, &sllen, sizeof(sllen)); ret = _ret + sizeof(sllen); memcpy(ret, *data + 1, len); @@ -112,7 +112,7 @@ static be_node *_be_decode(const char **data, gint64 * data_len) ++(*data); while (**data != 'e') { ret->val.l = - realloc(ret->val.l, (i + 2) * sizeof(*ret->val.l)); + g_realloc(ret->val.l, (i + 2) * sizeof(*ret->val.l)); ret->val.l[i] = _be_decode(data, data_len); if (!ret->val.l[i]) break; @@ -134,7 +134,7 @@ static be_node *_be_decode(const char **data, gint64 * data_len) ++(*data); while (**data != 'e') { ret->val.d = - realloc(ret->val.d, (i + 2) * sizeof(*ret->val.d)); + g_realloc(ret->val.d, (i + 2) * sizeof(*ret->val.d)); ret->val.d[i].key = _be_decode_str(data, data_len); ret->val.d[i].val = _be_decode(data, data_len); if (!ret->val.l[i]) @@ -98,6 +98,13 @@ int main(int argc, char *argv[]) TrgMainWindow *window; TrgClient *client; +#ifdef DEBUG + //GMemVTable gmvt = {malloc,realloc,free,calloc,malloc,realloc}; + //g_mem_set_vtable(&gmvt); + g_mem_set_vtable(glib_mem_profiler_table); + g_mem_profile(); +#endif + g_type_init(); g_thread_init(NULL); gtk_init(&argc, &argv); diff --git a/src/trg-client.c b/src/trg-client.c index 6ddca81..09db891 100644 --- a/src/trg-client.c +++ b/src/trg-client.c @@ -459,7 +459,7 @@ http_receive_callback(void *ptr, size_t size, size_t nmemb, void *data) size_t realsize = size * nmemb; trg_response *mem = (trg_response *) data; - mem->raw = realloc(mem->raw, mem->size + realsize + 1); + mem->raw = g_realloc(mem->raw, mem->size + realsize + 1); if (mem->raw) { memcpy(&(mem->raw[mem->size]), ptr, realsize); mem->size += realsize; |