Commit b6fec63006df1157a7e55acdc39d39b3684a156f
1 parent
d033acda
Exists in
master
and in
5 other branches
Corrigindo timeout invalido durante a transferência de arquivos VM/CMS.
Showing
2 changed files
with
35 additions
and
22 deletions
Show diff stats
locale/pw3270.pot
@@ -9,7 +9,7 @@ msgstr "" | @@ -9,7 +9,7 @@ msgstr "" | ||
9 | "#-#-#-#-# lib3270.pot (PACKAGE VERSION) #-#-#-#-#\n" | 9 | "#-#-#-#-# lib3270.pot (PACKAGE VERSION) #-#-#-#-#\n" |
10 | "Project-Id-Version: PACKAGE VERSION\n" | 10 | "Project-Id-Version: PACKAGE VERSION\n" |
11 | "Report-Msgid-Bugs-To: \n" | 11 | "Report-Msgid-Bugs-To: \n" |
12 | -"POT-Creation-Date: 2018-01-15 14:26-0200\n" | 12 | +"POT-Creation-Date: 2018-02-14 15:16-0200\n" |
13 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" | 13 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" |
14 | "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" | 14 | "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" |
15 | "Language-Team: LANGUAGE <LL@li.org>\n" | 15 | "Language-Team: LANGUAGE <LL@li.org>\n" |
@@ -20,7 +20,7 @@ msgstr "" | @@ -20,7 +20,7 @@ msgstr "" | ||
20 | "#-#-#-#-# pw3270.pot (PACKAGE VERSION) #-#-#-#-#\n" | 20 | "#-#-#-#-# pw3270.pot (PACKAGE VERSION) #-#-#-#-#\n" |
21 | "Project-Id-Version: PACKAGE VERSION\n" | 21 | "Project-Id-Version: PACKAGE VERSION\n" |
22 | "Report-Msgid-Bugs-To: \n" | 22 | "Report-Msgid-Bugs-To: \n" |
23 | -"POT-Creation-Date: 2018-01-15 14:26-0200\n" | 23 | +"POT-Creation-Date: 2018-02-14 15:16-0200\n" |
24 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" | 24 | "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" |
25 | "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" | 25 | "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" |
26 | "Language-Team: LANGUAGE <LL@li.org>\n" | 26 | "Language-Team: LANGUAGE <LL@li.org>\n" |
src/pw3270/v3270ft/v3270ftprogress.c
@@ -497,43 +497,54 @@ void v3270ftprogress_update(GtkWidget *widget, unsigned long current, unsigned l | @@ -497,43 +497,54 @@ void v3270ftprogress_update(GtkWidget *widget, unsigned long current, unsigned l | ||
497 | gchar * text; | 497 | gchar * text; |
498 | v3270ftprogress * dialog = GTK_V3270FTPROGRESS(widget); | 498 | v3270ftprogress * dialog = GTK_V3270FTPROGRESS(widget); |
499 | 499 | ||
500 | - if(current && total) { | 500 | + if(current) { |
501 | 501 | ||
502 | - if(dialog->pulse) { | ||
503 | - g_source_destroy(dialog->pulse); | ||
504 | - dialog->pulse = NULL; | ||
505 | - } | 502 | + // Tem dados, atualiza |
503 | + dialog->timeout = time(NULL) + 10; | ||
506 | 504 | ||
507 | - double remaining = ((double) (total - current))/1024.0; | 505 | + if(total) { |
508 | 506 | ||
509 | - if(remaining > 0 && kbytes_sec > 0) { | 507 | + if(dialog->pulse) { |
508 | + g_source_destroy(dialog->pulse); | ||
509 | + dialog->pulse = NULL; | ||
510 | + } | ||
510 | 511 | ||
511 | - char buffer[40]; | ||
512 | - double seconds = ((double) remaining) / kbytes_sec; | ||
513 | - time_t eta = time(0) + ((time_t) seconds); | ||
514 | - strftime(buffer, 39, "%H:%M:%S", localtime(&eta)); | 512 | + double remaining = ((double) (total - current))/1024.0; |
515 | 513 | ||
516 | - gtk_entry_set_text(dialog->info[PROGRESS_FIELD_ETA],buffer); | 514 | + if(remaining > 0 && kbytes_sec > 0) { |
517 | 515 | ||
518 | - } else { | 516 | + char buffer[40]; |
517 | + double seconds = ((double) remaining) / kbytes_sec; | ||
518 | + time_t eta = time(0) + ((time_t) seconds); | ||
519 | + strftime(buffer, 39, "%H:%M:%S", localtime(&eta)); | ||
519 | 520 | ||
520 | - gtk_entry_set_text(dialog->info[PROGRESS_FIELD_ETA],"-"); | 521 | + gtk_entry_set_text(dialog->info[PROGRESS_FIELD_ETA],buffer); |
521 | 522 | ||
522 | - } | 523 | + } else { |
524 | + | ||
525 | + gtk_entry_set_text(dialog->info[PROGRESS_FIELD_ETA],"-"); | ||
526 | + | ||
527 | + } | ||
523 | 528 | ||
524 | - gtk_progress_bar_set_fraction(dialog->progress, ((gdouble) current) / ((gdouble) total)); | 529 | + gtk_progress_bar_set_fraction(dialog->progress, ((gdouble) current) / ((gdouble) total)); |
530 | + | ||
531 | + } | ||
525 | 532 | ||
526 | } | 533 | } |
527 | 534 | ||
528 | - debug("%s(%lu/%lu)",__FUNCTION__,current,total); | 535 | + debug("%s(current=%lu total=%lu kbytes/sec=%u)",__FUNCTION__,current,total,(unsigned int) kbytes_sec); |
529 | 536 | ||
530 | text = g_strdup_printf("%lu",current); | 537 | text = g_strdup_printf("%lu",current); |
531 | gtk_entry_set_text(dialog->info[PROGRESS_FIELD_CURRENT],text); | 538 | gtk_entry_set_text(dialog->info[PROGRESS_FIELD_CURRENT],text); |
532 | g_free(text); | 539 | g_free(text); |
533 | 540 | ||
534 | - text = g_strdup_printf("%lu",total); | ||
535 | - gtk_entry_set_text(dialog->info[PROGRESS_FIELD_TOTAL],text); | ||
536 | - g_free(text); | 541 | + if(total) { |
542 | + text = g_strdup_printf("%lu",total); | ||
543 | + gtk_entry_set_text(dialog->info[PROGRESS_FIELD_TOTAL],text); | ||
544 | + g_free(text); | ||
545 | + } else { | ||
546 | + gtk_entry_set_text(dialog->info[PROGRESS_FIELD_TOTAL],_("N/A")); | ||
547 | + } | ||
537 | 548 | ||
538 | text = g_strdup_printf("%ld KB/s",(unsigned long) kbytes_sec); | 549 | text = g_strdup_printf("%ld KB/s",(unsigned long) kbytes_sec); |
539 | gtk_entry_set_text(dialog->info[PROGRESS_FIELD_SPEED],text); | 550 | gtk_entry_set_text(dialog->info[PROGRESS_FIELD_SPEED],text); |
@@ -689,6 +700,7 @@ static void ft_update(H3270 *hSession, unsigned long current, unsigned long tota | @@ -689,6 +700,7 @@ static void ft_update(H3270 *hSession, unsigned long current, unsigned long tota | ||
689 | } | 700 | } |
690 | 701 | ||
691 | static void ft_running(H3270 *hSession, int is_cut, void *widget) { | 702 | static void ft_running(H3270 *hSession, int is_cut, void *widget) { |
703 | + debug("%s",__FUNCTION__); | ||
692 | GTK_V3270FTPROGRESS(widget)->timeout = time(NULL)+10; | 704 | GTK_V3270FTPROGRESS(widget)->timeout = time(NULL)+10; |
693 | } | 705 | } |
694 | 706 | ||
@@ -719,6 +731,7 @@ static gboolean do_timer(v3270ftprogress *dialog) { | @@ -719,6 +731,7 @@ static gboolean do_timer(v3270ftprogress *dialog) { | ||
719 | 731 | ||
720 | if(time(NULL) > dialog->timeout) { | 732 | if(time(NULL) > dialog->timeout) { |
721 | 733 | ||
734 | + debug("%s: Dialog timeout",__FUNCTION__); | ||
722 | v3270ftprogress_set_header(GTK_WIDGET(dialog),strerror(ETIMEDOUT)); | 735 | v3270ftprogress_set_header(GTK_WIDGET(dialog),strerror(ETIMEDOUT)); |
723 | 736 | ||
724 | stop_pulse(dialog); | 737 | stop_pulse(dialog); |