X-Git-Url: http://git.cinelerra-gg.org/git/?p=goodguy%2Fhistory.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Frenderfarmclient.C;h=b12b5225a77bd7482a6e96e6143dac4a4e4df4d6;hp=7a3507a87f0e5e988e332f202e6917669070b3a8;hb=2e48b660e37eb5c661264d601211e16cb6cd6e89;hpb=9db053d413fde01439cc72ec2109913dfda2ec7b diff --git a/cinelerra-5.1/cinelerra/renderfarmclient.C b/cinelerra-5.1/cinelerra/renderfarmclient.C index 7a3507a8..b12b5225 100644 --- a/cinelerra-5.1/cinelerra/renderfarmclient.C +++ b/cinelerra-5.1/cinelerra/renderfarmclient.C @@ -51,7 +51,9 @@ #include - +#ifndef AF_FILE +#define AF_FILE AF_LOCAL +#endif // The render client waits for connections from the server. // Then it starts a thread for each connection. @@ -70,7 +72,7 @@ RenderFarmClient::RenderFarmClient(int port, this_pid = getpid(); (void)nice(nice_value); - + boot_defaults = 0; MWindow::init_defaults(boot_defaults, config_path); boot_preferences = new Preferences; boot_preferences->load_defaults(boot_defaults); @@ -481,7 +483,7 @@ int RenderFarmClientThread::read_package(int socket_fd, RenderPackage *package) // Signifies end of session. if(!data) { -// printf(_("RenderFarmClientThread::read_package no output path recieved.\n")); +// printf(_("RenderFarmClientThread::read_package no output path received.\n")); unlock(); return 1; } @@ -552,10 +554,12 @@ void RenderFarmClientThread::run() // Get the pid of the fork if inside the fork pid = getpid(); BC_Signals::set_trap_hook(trap_hook, this); + TheList::reset(); int socket_fd = this->socket_fd; - - init_client_keepalive(); + int watchdog_timeout = client->boot_preferences->renderfarm_watchdog_timeout; + if( watchdog_timeout > 0 ) + init_client_keepalive(watchdog_timeout); // Get command to run int command; @@ -579,11 +583,11 @@ void RenderFarmClientThread::run() } -void RenderFarmClientThread::init_client_keepalive() +void RenderFarmClientThread::init_client_keepalive(int timeout_secs) { keep_alive = new RenderFarmKeepalive(this); keep_alive->start(); - watchdog = new RenderFarmWatchdog(0, this); + watchdog = new RenderFarmWatchdog(timeout_secs, 0, this); watchdog->start(); } @@ -592,9 +596,9 @@ void RenderFarmClientThread::init_client_keepalive() void RenderFarmClientThread::do_tuner(int socket_fd) { // Currently only 1 tuner driver. Maybe more someday. - DVBTune server(this); - server.main_loop(); - ::close(socket_fd); +// DVBTune server(this); +// server.main_loop(); +// ::close(socket_fd); } @@ -711,8 +715,7 @@ void RenderFarmKeepalive::run() enable_cancel(); sleep(5); disable_cancel(); - if(!done) - { + if( !done ) { //printf("RenderFarmKeepalive::run 1\n"); // watchdog thread kills this if it gets stuck client_thread->ping_server();