Mercurial > gftp.yaz
comparison src/gtk/transfer.c @ 876:2d4e6fca8e7c
2007-2-6 Brian Masney <masneyb@gftp.org>
* src/text/textui.c src/gtk/gtkui_transfer.c src/uicommon/gftpui.h -
added new function: gftpui_cancel_file_transfer()
* src/uicommon/gftpui.c - use gftpui_cancel_file_transfer() to cancel
the file transfers
* lib/gftp.h lib/misc.c src/gtk/transfer.c - added pointer for the
thread_id of the transfer to the gftp_transfer structure. This will be
used in the GTK+ port so that the transfer can be stopped.
author | masneyb |
---|---|
date | Wed, 07 Feb 2007 02:43:57 +0000 |
parents | 1fae947d4418 |
children | 1808cebed602 |
comparison
equal
deleted
inserted
replaced
875:19dacfb69433 | 876:2d4e6fca8e7c |
---|---|
684 | 684 |
685 | 685 |
686 static void | 686 static void |
687 create_transfer (gftp_transfer * tdata) | 687 create_transfer (gftp_transfer * tdata) |
688 { | 688 { |
689 pthread_t tid; | 689 if (tdata->fromreq->stopable) |
690 | 690 return; |
691 if (!tdata->fromreq->stopable) | 691 |
692 { | 692 if (GFTP_IS_SAME_HOST_START_TRANS ((gftp_window_data *) tdata->fromwdata, |
693 if (GFTP_IS_SAME_HOST_START_TRANS ((gftp_window_data *) tdata->fromwdata, | 693 tdata->fromreq)) |
694 tdata->fromreq)) | 694 { |
695 { | 695 gftp_swap_socks (tdata->fromreq, |
696 gftp_swap_socks (tdata->fromreq, | 696 ((gftp_window_data *) tdata->fromwdata)->request); |
697 ((gftp_window_data *) tdata->fromwdata)->request); | 697 update_window (tdata->fromwdata); |
698 update_window (tdata->fromwdata); | 698 } |
699 } | 699 |
700 | 700 if (GFTP_IS_SAME_HOST_START_TRANS ((gftp_window_data *) tdata->towdata, |
701 if (GFTP_IS_SAME_HOST_START_TRANS ((gftp_window_data *) tdata->towdata, | 701 tdata->toreq)) |
702 tdata->toreq)) | 702 { |
703 { | 703 gftp_swap_socks (tdata->toreq, |
704 gftp_swap_socks (tdata->toreq, | 704 ((gftp_window_data *) tdata->towdata)->request); |
705 ((gftp_window_data *) tdata->towdata)->request); | 705 update_window (tdata->towdata); |
706 update_window (tdata->towdata); | 706 } |
707 } | 707 |
708 | 708 num_transfers_in_progress++; |
709 num_transfers_in_progress++; | 709 tdata->started = 1; |
710 tdata->started = 1; | 710 tdata->stalled = 1; |
711 tdata->stalled = 1; | 711 gtk_ctree_node_set_text (GTK_CTREE (dlwdw), tdata->user_data, 1, |
712 gtk_ctree_node_set_text (GTK_CTREE (dlwdw), tdata->user_data, 1, | 712 _("Connecting...")); |
713 _("Connecting...")); | 713 |
714 pthread_create (&tid, NULL, _gftpui_transfer_files, tdata); | 714 if (tdata->thread_id == NULL) |
715 } | 715 tdata->thread_id = g_malloc0 (sizeof (pthread_t)); |
716 | |
717 pthread_create (tdata->thread_id, NULL, _gftpui_transfer_files, tdata); | |
716 } | 718 } |
717 | 719 |
718 | 720 |
719 static void | 721 static void |
720 _setup_dlstr (gftp_transfer * tdata, gftp_file * fle, char *dlstr, | 722 _setup_dlstr (gftp_transfer * tdata, gftp_file * fle, char *dlstr, |