*fix* 2 memleaks

*fix* no more warnings


git-svn-id: http://tint2.googlecode.com/svn/trunk@335 121b4492-b84c-0410-8b4c-0d4edfb3f3cc
This commit is contained in:
Andreas.Fink85
2010-01-10 22:16:27 +00:00
parent f9a7bb8b1e
commit 06518a0f4b
8 changed files with 44 additions and 35 deletions

View File

@@ -44,7 +44,9 @@ void copy_file(const char *pathSrc, const char *pathDest)
fileDest = fopen(pathDest, "wb");
if (fileDest == NULL) return;
while ((nb = fread(line, 1, 100, fileSrc)) > 0) fwrite(line, 1, nb, fileDest);
while ((nb = fread(line, 1, 100, fileSrc)) > 0)
if ( nb != fwrite(line, 1, nb, fileDest))
printf("Error while copying file %s to %s\n", pathSrc, pathDest);
fclose (fileDest);
fclose (fileSrc);

View File

@@ -300,7 +300,9 @@ void create_multi_timeout(timeout* t1, timeout* t2)
t1->multi_timeout = mt1;
t2->multi_timeout = mt2;
real_timeout->multi_timeout = real_timeout;
// set real_timeout->multi_timeout to something, such that we see in add_timeout_intern that
// it is already a multi_timeout (we never use it, except of checking for 0 ptr)
real_timeout->multi_timeout = (void*)real_timeout;
timeout_list = g_slist_remove(timeout_list, t1);
timeout_list = g_slist_remove(timeout_list, t2);
@@ -411,10 +413,11 @@ void stop_multi_timeout(timeout* t)
multi_timeout_handler* mth = g_hash_table_lookup(multi_timeouts, t);
g_hash_table_remove(multi_timeouts, mth->parent_timeout);
while (mth->timeout_list) {
timeout* t = mth->timeout_list->data;
mth->timeout_list = g_slist_remove(mth->timeout_list, t);
g_hash_table_remove(multi_timeouts, t);
free(t);
timeout* t1 = mth->timeout_list->data;
mth->timeout_list = g_slist_remove(mth->timeout_list, t1);
g_hash_table_remove(multi_timeouts, t1);
free(t1->multi_timeout);
free(t1);
}
free(mth);
}