int main(int argc, char **argv) { if (argc < 3) { usage(); exit(1); } char *port_name = argv[1]; char *file_name = argv[2]; if (open_serial_port(port_name) < 0) { return (1); } if (!download_begin(file_name)) { return 1; } while (!programming_done) { handle_port_input(); } close_serial_port(); return 0; }
gint do_program(GtkWidget *widget, gpointer *data) { if (download_in_progress) { // error... not supposed to get here gtk_widget_set_sensitive(program_button, FALSE); return FALSE; } download_in_progress = 1; gtk_widget_set_sensitive(program_button, FALSE); gtk_widget_set_sensitive(reboot_button, FALSE); gtk_widget_set_sensitive(bootloader_button, TRUE); download_begin(); return FALSE; }