Mercurial > gftp.yaz
diff src/gtk/delete_dialog.c @ 182:33b394ebba68
2003-6-15 Brian Masney <masneyb@gftp.org>
* lib/cache.c lib/gftp.h - added gftp_generate_cache_description().
* lib/cache.c lib/gftp.h src/text/gftp-text.c src/gtk/delete-dialog.c
src/gtk/menu-items.c src/gtk/misc-gtk.c src/gtk/mkdir-dialog.c - Added
description parameter to gftp_delete_cache_entry().
* lib/protocols.c lib/gftp.h - added gftp_fd_open(). It will call
open() and then set the socket option close on exec
* lib/cache.c lib/local.c lib/misc.c - use gftp_fd_open() instead of
open()
* lib/rfc959.c lib/protocols.c - on newly created sockets, make sure
the close on exec socket option is set
* lib/options.h src/text/gftp-text.c src/gtk/transfer.c - added
preserve_permissions option
* lib/protocols.c (gftp_parse_url) - allow an @ to be in the username
* src/text/gftp-text.c - after transfering a file, honor
preserve_permissions if it is set
* src/gtk/delete-dialog.c - improvments to clearing the expired cache
entries
author | masneyb |
---|---|
date | Sun, 15 Jun 2003 21:28:02 +0000 |
parents | 2f15b3000dbc |
children | 13ca1defdc75 |
line wrap: on
line diff
--- a/src/gtk/delete_dialog.c Sun Jun 15 13:22:09 2003 +0000 +++ b/src/gtk/delete_dialog.c Sun Jun 15 21:28:02 2003 +0000 @@ -23,14 +23,7 @@ static void delete_purge_cache (gpointer key, gpointer value, gpointer user_data) { - gftp_request * request; - char *olddir; - - request = user_data; - olddir = request->directory; - request->directory = key; - gftp_delete_cache_entry (request, 0); - request->directory = olddir; + gftp_delete_cache_entry (NULL, key, 0); g_free (key); } @@ -38,8 +31,8 @@ static void * do_delete_thread (void *data) { + char *tempstr, description[BUFSIZ]; gftp_transfer * transfer; - char *pos, *tempstr; gftp_file * tempfle; GHashTable * rmhash; GList * templist; @@ -69,15 +62,15 @@ else success = gftp_remove_file (transfer->fromreq, tempfle->file); - if (success == 0 && (pos = strrchr (tempfle->file, '/'))) + if (success == 0) { - *pos = '\0'; - if (g_hash_table_lookup (rmhash, tempfle->file) == NULL) + gftp_generate_cache_description (transfer->fromreq, description, + sizeof (description), 0); + if (g_hash_table_lookup (rmhash, description) == NULL) { - tempstr = g_strconcat (tempfle->file, NULL); + tempstr = g_strdup (description); g_hash_table_insert (rmhash, tempstr, NULL); } - *pos = '/'; } if (templist == transfer->files || @@ -86,7 +79,7 @@ templist = templist->prev; } - g_hash_table_foreach (rmhash, delete_purge_cache, transfer->fromreq); + g_hash_table_foreach (rmhash, delete_purge_cache, NULL); g_hash_table_destroy (rmhash); } else