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,