# HG changeset patch # User LordOfWar # Date 2009-10-10 01:31:56 # Node ID befcc7fbb76546d1a576090e4de362f75f5d2542 # Parent 6148c5ef5f335200ddc6ca2e76457189c52036e0 completed start_data() function diff --git a/src/server/distrend.c b/src/server/distrend.c --- a/src/server/distrend.c +++ b/src/server/distrend.c @@ -78,6 +78,7 @@ int updateJobListXML(struct distrenjob * int createQueueFromXML(struct distrenjob *head); int reCreateQueueFromXML(struct distrenjob *head, xmlDocPtr doc, xmlNodePtr current); void updateGeneralInfo(); +void importGeneralInfo(); /* Global Vars, eliminate these */ jobnum_t jobnum = 0; // The next job number to create in the queue @@ -138,11 +139,9 @@ void remotio_send_to_client() /** Fill variables after crash / shutdown from XML dumps */ int start_data(struct distrenjob *head) { - general_info.hibernate = 0; struct stat buffer; - if(stat(SYSCONFDIR "/data.xml", &buffer) == 0){ - - // @TODO: retrieve total_finished_jobs and total_finished_frames from xml file + if(stat("general_info.xml", &buffer) == 0){ + importGeneralInfo(); fprintf(stderr,"Parsing XML files and restoring previous state...\n"); createQueueFromXML(head); @@ -151,6 +150,11 @@ int start_data(struct distrenjob *head) else{ general_info.total_finished_jobs = 0; general_info.total_frames_rendered = 0; + general_info.free_clients = 0; + general_info.highest_jobnum = 0; + general_info.jobs_in_queue = 0; + general_info.rendering_clients = 0; + general_info.hibernate = 0; fprintf(stderr,"Couldn't find XML dump, starting up fresh.\n"); return 2; }