*** empty log message ***

svn path=/trunk/boinc/; revision=4620
This commit is contained in:
David Anderson 2004-11-22 19:17:13 +00:00
parent bb578770bd
commit 319328e169
23 changed files with 142 additions and 94 deletions

View File

@ -126,6 +126,7 @@ int boinc_init() {
options.defaults();
return boinc_init_options(options);
}
int boinc_init_options(BOINC_OPTIONS& opt) {
int retval;
retval = boinc_init_options_general(opt);

View File

@ -54,7 +54,7 @@
# include <OpenGL/glu.h>
# endif
# include "GL/glut.h"
# include "glut.h"
/*
# if defined(HAVE_GLUT_H)
# include "glut.h"

View File

@ -19962,10 +19962,39 @@ David 21 Nov 2004
team*.php
Rom 21 Nov 2004
- Bug Fix: I think this fixes the "Could not find item xxx in list view" error messages
for all tabs. After detecting a disconnected state, resrt the cache to and cache from
variables since the listview control does not reissue a cache request when all the
items have been deleted.
- Bug Fix: I think this fixes the "Could not find item xxx in list view"
error messages for all tabs.
After detecting a disconnected state,
resrt the cache to and cache from variables
since the listview control does not reissue a cache request
when all the items have been deleted.
clientgui/
BOINCBaseView.cpp
David 22 Nov 2004
- print error msg if app_info.xml has unparsed text
- support notion of "batch" in work creation
- shorten messages in BOINC manager
api/
boinc_api.C
boinc_gl.h
client/
cs_statefile.C
clientgui/
BOINCTaskBar.cpp
MainDocument.cpp
MainFrame.cpp
Makefile.old
ValidateAccountKey.cpp
ValidateURL.cpp
ViewMessages.cpp
ViewProjects.cpp
ViewTransfers.cpp
ViewWork.cpp
db/
boinc_db.h
tools/
backend_lib.C
create_work.C

View File

@ -471,6 +471,7 @@ int CLIENT_STATE::parse_app_info(PROJECT* p, FILE* in) {
app_versions.push_back(avp);
continue;
}
msg_printf(p, MSG_ERROR, "Unparsed line in app_info.xml: %s", buf);
}
return ERR_XML_PARSE;
}

View File

@ -313,7 +313,7 @@ void CTaskBarIcon::CreateContextMenu()
menu->AppendRadioItem( ID_TB_ACTIVITYRUNBASEDONPREPERENCES, _("Run based on &preferences"), wxEmptyString );
menu->AppendRadioItem( ID_TB_ACTIVITYSUSPEND, _("&Suspend"), wxEmptyString );
menu->AppendSeparator();
menu->AppendCheckItem( ID_TB_NETWORKSUSPEND, _("&Disable BOINC Network Access"), wxEmptyString );
menu->AppendCheckItem( ID_TB_NETWORKSUSPEND, _("&Disable BOINC network access"), wxEmptyString );
menu->AppendSeparator();
menu->Append( wxID_ABOUT, _("&About BOINC Manager..."), wxEmptyString );
menu->AppendSeparator();

View File

@ -104,7 +104,7 @@ wxInt32 CMainDocument::CachedStateUpdate()
if ( pFrame )
{
wxASSERT(wxDynamicCast(pFrame, CMainFrame));
pFrame->UpdateStatusbar( _("Retrieving the BOINC system state. Please wait...") );
pFrame->UpdateStatusbar( _("Retrieving system state; please wait...") );
}
m_dtCachedStateTimestamp = m_dtCachedStateLockTimestamp;
@ -118,7 +118,7 @@ wxInt32 CMainDocument::CachedStateUpdate()
if ( pFrame )
{
wxASSERT(wxDynamicCast(pFrame, CMainFrame));
pFrame->UpdateStatusbar( _("Retrieving the BOINC host information. Please wait...") );
pFrame->UpdateStatusbar( _("Retrieving host information; please wait...") );
}
retval = rpc.get_host_info(host);

View File

@ -176,17 +176,17 @@ bool CMainFrame::CreateMenu()
menuFile->AppendRadioItem(
ID_ACTIVITYRUNALWAYS,
_("&Run always"),
_("Runs BOINC without regards to the configured preferences for the computer")
_("Does work regardless of preferences")
);
menuFile->AppendRadioItem(
ID_ACTIVITYRUNBASEDONPREPERENCES,
_("Run based on &preferences"),
_("Runs BOINC according to the preferences configured for the computer")
_("Does work according to your preferences")
);
menuFile->AppendRadioItem(
ID_ACTIVITYSUSPEND,
_("&Suspend"),
_("Suspends processing and network activity without regards to the configured preferences")
_("Stops work regardless of preferences")
);
menuFile->AppendSeparator();
@ -194,7 +194,7 @@ bool CMainFrame::CreateMenu()
menuFile->AppendCheckItem(
ID_NETWORKSUSPEND,
_("&Disable BOINC Network Access"),
_("Disables network activity without suspending BOINC")
_("Stops BOINC network activity")
);
menuFile->AppendSeparator();
@ -202,7 +202,7 @@ bool CMainFrame::CreateMenu()
menuFile->Append(
ID_RUNBENCHMARKS,
_("Run &Benchmarks"),
_("Runs the CPU Benchmarks for BOINC")
_("Runs BOINC CPU benchmarks")
);
menuFile->AppendSeparator();
@ -210,7 +210,7 @@ bool CMainFrame::CreateMenu()
menuFile->Append(
ID_SELECTCOMPUTER,
_("Select Computer..."),
_("Allows you to remotely connect up to another computer running BOINC")
_("Connect to another computer running BOINC")
);
menuFile->AppendSeparator();
@ -234,7 +234,7 @@ bool CMainFrame::CreateMenu()
menuHelp->Append(
wxID_ABOUT,
_("&About BOINC Manager..."),
_("Displays general information about BOINC and BOINC Manager")
_("Show information about BOINC and BOINC Manager")
);
// construct menu
@ -587,7 +587,7 @@ void CMainFrame::OnSelectComputer( wxCommandEvent& WXUNUSED(event) )
strMachine = ::wxGetTextFromUser(
_("Which computer do you wish to connect to?"),
_("Select Computer...")
_("Select computer...")
);
iRetVal = pDoc->Connect( strMachine );

View File

@ -1,7 +1,7 @@
CXX = $(shell wx-config --cxx)
# comment out the following as needed
#OTHER_LIBS = -lsocket -lnsl
OTHER_LIBS = -lsocket -lnsl
CFLAGS = -g -I ../ -I ../lib -DNOTASKBAR -DNOCLIPBOARD
@ -38,10 +38,10 @@ OBJS = \
# change the following as needed
# Mac version:
WLIBS = -framework QuickTime -framework IOKit -framework Carbon -framework Cocoa -framework System -L../../wxMac-2.5.3/lib -lwx_mac_adv-2.5 -lwx_mac_core-2.5 -lwx_mac_html-2.5 -lwx_base_carbon-2.5 -lwx_base_carbon_net-2.5 -lwxtiff-2.5 -lwxjpeg-2.5 -lwxpng-2.5 -lwxexpat-2.5 -framework QuickTime -framework IOKit -framework Carbon -framework Cocoa -framework System -lz -lpthread -liconv -framework WebKit
#WLIBS = -framework QuickTime -framework IOKit -framework Carbon -framework Cocoa -framework System -L../../wxMac-2.5.3/lib -lwx_mac_adv-2.5 -lwx_mac_core-2.5 -lwx_mac_html-2.5 -lwx_base_carbon-2.5 -lwx_base_carbon_net-2.5 -lwxtiff-2.5 -lwxjpeg-2.5 -lwxpng-2.5 -lwxexpat-2.5 -framework QuickTime -framework IOKit -framework Carbon -framework Cocoa -framework System -lz -lpthread -liconv -framework WebKit
# all others:
#WLIBS = `wx-config --libs`
WLIBS = `wx-config --libs`
boincmgr: $(OBJS)
$(CXX) -o $(PROGRAM) $(OBJS) $(WLIBS) $(OTHER_LIBS)

View File

@ -21,6 +21,9 @@
// Revision History:
//
// $Log$
// Revision 1.4 2004/11/22 19:17:06 davea
// *** empty log message ***
//
// Revision 1.3 2004/10/26 16:58:34 rwalton
// *** empty log message ***
//
@ -89,7 +92,7 @@ bool CValidateAccountKey::Validate(wxWindow *parent)
{
ok = FALSE;
m_errormsg = _("Invalid Account Key, please enter a valid Account Key");
m_errormsg = _("Invalid Account Key; please enter a valid Account Key");
}
if ( !ok )

View File

@ -21,6 +21,9 @@
// Revision History:
//
// $Log$
// Revision 1.5 2004/11/22 19:17:06 davea
// *** empty log message ***
//
// Revision 1.4 2004/10/26 16:58:34 rwalton
// *** empty log message ***
//
@ -93,11 +96,11 @@ bool CValidateURL::Validate(wxWindow *parent)
ok = FALSE;
if ( wxURL_SNTXERR == val.GetError() )
m_errormsg = _("No URL supplied, please enter a valid project URL.");
m_errormsg = _("No URL supplied; please enter a valid project URL.");
else if ( wxURL_NOPROTO == val.GetError() )
m_errormsg = _("'%s' does not contain a protocol which can get this URL.");
m_errormsg = _("'%s' does not start with http://");
else if ( wxURL_NOHOST == val.GetError() )
m_errormsg = _("'%s' does not contain a host name.");
m_errormsg = _("'%s' does not contain a valid host name.");
else if ( wxURL_NOPATH == val.GetError() )
m_errormsg = _("'%s' does not contain a valid path.");
}

View File

@ -66,7 +66,7 @@ const wxString LINKDESC_TASKCOPYALL =
const wxString LINK_TASKCOPYMESSAGE = wxT(SECTION_TASK "copymessage");
const wxString LINKDESC_TASKCOPYMESSAGE =
_("<b>Copy Selection</b><br>"
"Clicking copy selection, copies the selected message(s) to the system clipboard.<br><br>You can select multiple items by holding down either the shift key or control key before clicking on the next desired message.");
"Clicking <b>copy selection</b> copies the selected message(s) to the system clipboard.<br><br>You can select multiple items by holding down the shift key or control key while clicking on the next desired message.");
IMPLEMENT_DYNAMIC_CLASS(CViewMessages, CBOINCBaseView)

View File

@ -67,52 +67,50 @@ const wxString LINKDESC_DEFAULT =
const wxString LINK_TASKATTACH = wxT(SECTION_TASK "attach");
const wxString LINKDESC_TASKATTACH =
_("<b>Attach to Project</b><br>"
"Clicking attach to project allows you to join other BOINC "
"projects. You will need a valid project URL and Authenticator.");
_("<b>Attach to project</b><br>"
"Join a BOINC project. "
"You will need a project URL and account key.");
const wxString LINK_TASKDETACH = wxT(SECTION_TASK "detach");
const wxString LINKDESC_TASKDETACH =
_("<b>Detach from Project</b><br>"
"Clicking detach from project removes the computer from the currently "
"selected project. You may wish to update the project first to submit "
_("<b>Detach from project</b><br>"
"Detach this computer from this project. "
"You may wish to update the project first to report "
"any completed work.");
const wxString LINK_TASKRESET = wxT(SECTION_TASK "reset");
const wxString LINKDESC_TASKRESET =
_("<b>Reset Project</b><br>"
"Clicking reset project removes all workunits and applications from "
"the currently selected project. You may wish to update the project "
"first to submit any completed work.");
_("<b>Reset project</b><br>"
"Remove all workunits and applications from this project. "
"You may wish to update the project "
"first to report any completed work.");
const wxString LINK_TASKSUSPEND = wxT(SECTION_TASK "suspend");
const wxString LINKDESC_TASKSUSPEND =
_("<b>Suspend Project</b><br>"
"Clicking suspend project will pause the project from any additional "
"computation for that project until the resume project option is selected.");
_("<b>Suspend project</b><br>"
"Stop work for this project "
"(you can resume later).");
const wxString LINK_TASKRESUME = wxT(SECTION_TASK "resume");
const wxString LINKDESC_TASKRESUME =
_("<b>Resume Project</b><br>"
"Clicking resume project resumes computation for a project that has been"
"previously suspended.");
_("<b>Resume project</b><br>"
"Resume work for this project");
const wxString LINK_TASKUPDATE = wxT(SECTION_TASK "update");
const wxString LINKDESC_TASKUPDATE =
_("<b>Update Project</b><br>"
"Clicking update project submits any outstanding work and refreshes "
"your credit and preferences for the currently selected project.");
_("<b>Update project</b><br>"
"Report all completed work and refresh "
"your credit and preferences for this project.");
const wxString LINK_WEBBOINC = wxT(SECTION_WEB "boinc");
const wxString LINKDESC_WEBBOINC =
_("<b>BOINC Homepage</b><br>"
"This will open a browser window to the BOINC homepage.");
_("<b>BOINC home page</b><br>"
"Open the BOINC home page in a web browser.");
const wxString LINK_WEBPROJECT = wxT(SECTION_WEB "project");
const wxString LINKDESC_WEBPROJECT =
_("<b>Project Homepage</b><br>"
"This will open a browser window to the currently selected project "
"homepage.");
_("<b>Project home page</b><br>"
"Open this project's home page in a web browser.");
const wxString LINK_WEB = wxT(SECTION_WEB ":");
@ -147,7 +145,7 @@ CViewProjects::CViewProjects(wxNotebook* pNotebook) :
m_pTaskPane->AddVirtualFile(BITMAP_BOINC, bmpBOINC, wxBITMAP_TYPE_XPM);
m_pTaskPane->CreateTaskHeader(BITMAP_TASKHEADER, bmpTask, _("Tasks"));
m_pTaskPane->CreateTaskHeader(BITMAP_WEBHEADER, bmpWeb, _("Websites"));
m_pTaskPane->CreateTaskHeader(BITMAP_WEBHEADER, bmpWeb, _("Web sites"));
m_pTaskPane->CreateTaskHeader(BITMAP_TIPSHEADER, bmpTips, _("Quick Tips"));
m_pListPane->InsertColumn(COLUMN_PROJECT, _("Project"), wxLIST_FORMAT_LEFT, 150);
@ -278,7 +276,7 @@ void CViewProjects::OnTaskLinkClicked( const wxHtmlLinkInfo& link )
pDoc->GetProjectProjectName(iProjectIndex, strProjectName);
strMessage.Printf(
_("Are you sure you wish to detach from project '%s'?"),
_("Are you sure you want to detach from project '%s'?"),
strProjectName.c_str());
iAnswer = wxMessageBox(
@ -301,7 +299,7 @@ void CViewProjects::OnTaskLinkClicked( const wxHtmlLinkInfo& link )
pDoc->GetProjectProjectName(iProjectIndex, strProjectName);
strMessage.Printf(
_("Are you sure you wish to reset project '%s'?"),
_("Are you sure you want to reset project '%s'?"),
strProjectName.c_str());
iAnswer = wxMessageBox(

View File

@ -57,19 +57,18 @@
const wxString LINKDESC_DEFAULT =
_("Please click a transfer item to see additional options.");
_("Click an item to see additional options.");
const wxString LINK_TASKRETRY = wxT(SECTION_TASK "retry");
const wxString LINKDESC_TASKRETRY =
_("<b>Retry Now</b><br>"
"Clicking retry now will attempt to upload the result data file "
"to the project server now.");
_("<b>Retry now</b><br>"
"Click <b>Retry now</b> to upload the file now");
const wxString LINK_TASKABORT = wxT(SECTION_TASK "abort");
const wxString LINKDESC_TASKABORT =
_("<b>Abort Upload</b><br>"
"Clicking abort upload will delete the result from the upload queue. "
"Doing this will keep you from being granted any credit for this result.");
_("<b>Abort upload</b><br>"
"Click <b>Abort upload</b> to delete the file from the upload queue. "
"This will prevent you from being granted credit for this result.");
IMPLEMENT_DYNAMIC_CLASS(CViewTransfers, CBOINCBaseView)
@ -215,7 +214,7 @@ void CViewTransfers::OnTaskLinkClicked( const wxHtmlLinkInfo& link )
pDoc->GetTransferFileName(iProjectIndex, strName);
strMessage.Printf(
_("Are you sure you wish to abort this file transfer '%s'?"),
_("Are you sure you want to abort this file transfer '%s'?"),
strName.c_str());
iAnswer = wxMessageBox(

View File

@ -58,29 +58,28 @@
const wxString LINKDESC_DEFAULT =
_("Please click a result to see additional options.");
_("Click a result to see additional options.");
const wxString LINK_TASKSUSPEND = wxT(SECTION_TASK "suspend");
const wxString LINKDESC_TASKSUSPEND =
_("<b>Suspend</b><br>"
"Clicking suspend allows you to suspend the currently selected result.");
"Click <b>Suspend</b> to suspend the result.");
const wxString LINK_TASKRESUME = wxT(SECTION_TASK "resume");
const wxString LINKDESC_TASKRESUME =
_("<b>Resume</b><br>"
"Clicking resume allows you to resume a previously suspended result.");
"Click <b>Resume</b> to resume a suspended result.");
const wxString LINK_TASKSHOWGRAPHICS = wxT(SECTION_TASK "showgraphics");
const wxString LINKDESC_TASKSHOWGRAPHICS=
_("<b>Show Graphics</b><br>"
"Clicking show graphics will display a window giving you a chance "
"to see how the active result will look while in screensaver mode.");
_("<b>Show graphics</b><br>"
"Click <b>Show graphics</b> to show application graphics in a window.");
const wxString LINK_TASKABORT = wxT(SECTION_TASK "abort");
const wxString LINKDESC_TASKABORT =
_("<b>Abort Result</b><br>"
"Clicking abort result will delete the result from the work queue. "
"Doing this will keep you from being granted any credit for this result.");
_("<b>Abort result</b><br>"
"Click <b>Abort result</b> to delete the result from the work queue. "
"This will prevent you from being granted credit for the result.");
IMPLEMENT_DYNAMIC_CLASS(CViewWork, CBOINCBaseView)
@ -108,15 +107,15 @@ CViewWork::CViewWork(wxNotebook* pNotebook) :
m_pTaskPane->AddVirtualFile(BITMAP_RESULTS, bmpResult, wxBITMAP_TYPE_XPM);
m_pTaskPane->CreateTaskHeader(BITMAP_TASKHEADER, bmpTask, _("Tasks"));
m_pTaskPane->CreateTaskHeader(BITMAP_TIPSHEADER, bmpTips, _("Quick Tips"));
m_pTaskPane->CreateTaskHeader(BITMAP_TIPSHEADER, bmpTips, _("Quick tips"));
m_pListPane->InsertColumn(COLUMN_PROJECT, _("Project"), wxLIST_FORMAT_LEFT, 125);
m_pListPane->InsertColumn(COLUMN_APPLICATION, _("Application"), wxLIST_FORMAT_LEFT, 95);
m_pListPane->InsertColumn(COLUMN_NAME, _("Name"), wxLIST_FORMAT_LEFT, 285);
m_pListPane->InsertColumn(COLUMN_CPUTIME, _("CPU time"), wxLIST_FORMAT_RIGHT, 80);
m_pListPane->InsertColumn(COLUMN_PROGRESS, _("Progress"), wxLIST_FORMAT_CENTRE, 60);
m_pListPane->InsertColumn(COLUMN_TOCOMPLETETION, _("To Completetion"), wxLIST_FORMAT_RIGHT, 100);
m_pListPane->InsertColumn(COLUMN_REPORTDEADLINE, _("Report Deadline"), wxLIST_FORMAT_LEFT, 150);
m_pListPane->InsertColumn(COLUMN_TOCOMPLETETION, _("To completetion"), wxLIST_FORMAT_RIGHT, 100);
m_pListPane->InsertColumn(COLUMN_REPORTDEADLINE, _("Report deadline"), wxLIST_FORMAT_LEFT, 150);
m_pListPane->InsertColumn(COLUMN_STATUS, _("Status"), wxLIST_FORMAT_LEFT, 135);
m_bTipsHeaderHidden = false;
@ -270,12 +269,12 @@ void CViewWork::OnTaskLinkClicked( const wxHtmlLinkInfo& link )
pDoc->GetWorkName(iProjectIndex, strResultName);
strMessage.Printf(
_("Are you sure you wish to abort this result '%s'?"),
_("Are you sure you want to abort this result '%s'?"),
strResultName.c_str());
iAnswer = wxMessageBox(
strMessage,
_("Abort Result"),
_("Abort result"),
wxYES_NO | wxICON_QUESTION,
this
);

View File

@ -335,7 +335,7 @@ struct WORKUNIT {
// quicker or reflect loss rate
int max_error_results; // WU error if < #error results
int max_total_results; // WU error if < #total results
// (need this in case results never returned
// (need this in case results are never returned)
int max_success_results; // WU error if < #success results
// without consensus (i.e. WU is nondeterministic)
char result_template_file[64];

View File

@ -12,14 +12,14 @@ function version_start($num, $date, $xml) {
function version($platform, $filename, $xml) {
$path = "dl/$filename";
$dlink = "<a href=$path>Download</a>";
$md = md5($path);
$md = md5_file($path);
if ($xml) {
echo "
<version>
<platform>$platform</platform>
<url>http://boinc.berkeley.edu/$path</url>
<filename>$filename</filename>
<md5>$md5</md5>
<md5>$md</md5>
</version>
";
} else {

View File

@ -118,8 +118,8 @@ show_link(
//);
show_link(
"Slovak",
"BOINC translation by slavko.sk",
"http://slavko.sk/boinc"
"www.boinc.sk",
"http://www.boinc.sk/"
);
show_link(
"Spanish",

View File

@ -24,17 +24,18 @@ some information is
<h2>Other software</h2>
Required for <b>compiling</b>:
Required for compiling:
<ul>
<li><b>GNU C++</b> 2.95 or 3.0 - 3.4
<li>Other GNU development tools: gmake, gzip, etc.
</ul>
Required on the <b>database</b> server:
Required on the database server:
<ul>
<li><b>MySQL server</b> 3.23+ or 4.0+
(package <code>mysql-server</code>). Note: Transactions are only supported by
MySQL 4.0+; to use MySQL 3.23, disable &lt;use_transactions/&gt; in config.xml
(package <code>mysql-server</code>).
Note: Transactions are only supported by MySQL 4.0+;
to use MySQL 3.23, disable &lt;use_transactions/&gt; in config.xml
</ul>
After installing and running the server,
@ -48,8 +49,10 @@ the account under which Apache runs
grant all on *.* to nobody@localhost;
grant all on *.* to nobody;
</pre>
Set your PATH variable to include MySQL programs
(typically /usr/local/mysql and /usr/local/mysql/bin).
Required on the <b>master/scheduler</b> server(s):
Required on other server(s):
<ul>
<li><b>Apache</b> or other webserver (package <code>apache2</code> or <code>apache</code>)
<li><b>PHP</b> 4.0 (package <code>php4</code>)

View File

@ -33,6 +33,7 @@ A WU template file has the form
[ <target_nresults>x</target_nresults> ]
[ <max_error_results>x</max_error_results> ]
[ <max_total_results>x</max_total_results> ]
[ <max_success_results>x</max_success_results> ]
</workunit>
"), "
</pre>

View File

@ -132,19 +132,22 @@ list_item(
"If the number of client error results exceeds this,
the work unit is declared to have an error;
no further results are issued, and the assimilator is triggered.
This safeguards against workunits that exercise a bug
in the application."
This safeguards against workunits that cause
the application to crash."
);
list_item(
"max_total_results",
"If the total number of results for this workunit exceeds this,
the workunit is declared to be in error."
the workunit is declared to be in error.
This safeguards against workunits that are never reported
(e.g. because they crash the core client)."
);
list_item(
"max_success_results",
"If the number of success results for this workunit exceeds this,
and a consensus has not been reached,
the workunit is declared to be in error."
the workunit is declared to be in error.
This safeguards against workunits that produce nondeterministic results."
);
list_end();

View File

@ -21,7 +21,7 @@
user_host_table_start(false);
} else {
echo "Hidden\n";
end_cache(USER_PAGE_TTL,$cache_args);
end_cache(USER_PAGE_TTL, $cache_args);
exit();
}
$private = false;
@ -43,7 +43,7 @@
echo "</table>\n";
if ($caching) {
page_tail(true);
end_cache(USER_PAGE_TTL,$cache_args);
end_cache(USER_PAGE_TTL, $cache_args);
} else {
page_tail();
}

View File

@ -97,11 +97,13 @@ static int process_wu_template(
infiles[file_number], config.download_dir,
config.uldl_dir_fanout, path, true
);
if ( ! boinc_file_exists(path) ) {
sprintf(top_download_path,"%s/%s",config.download_dir,
infiles[file_number]);
boinc_copy(top_download_path,path);
}
if (!boinc_file_exists(path)) {
sprintf(top_download_path,
"%s/%s",config.download_dir,
infiles[file_number]
);
boinc_copy(top_download_path,path);
}
retval = md5_file(path, md5, nbytes);
if (retval) {
@ -169,6 +171,8 @@ static int process_wu_template(
continue;
} else if (parse_double(p, "<rsc_disk_bound>", wu.rsc_disk_bound)) {
continue;
} else if (parse_int(p, "<batch>", wu.batch)) {
continue;
} else if (parse_int(p, "<delay_bound>", wu.delay_bound)) {
continue;
} else if (parse_int(p, "<min_quorum>", wu.min_quorum)) {

View File

@ -77,6 +77,8 @@ int main(int argc, char** argv) {
ninfiles = 0;
wu.clear();
// defaults (in case not in WU template)
wu.min_quorum = 2;
wu.target_nresults = 5;
wu.max_error_results = 10;
@ -97,6 +99,8 @@ int main(int argc, char** argv) {
strcpy(wu_template_file, argv[++i]);
} else if (!strcmp(argv[i], "-result_template")) {
strcpy(result_template_file, argv[++i]);
} else if (!strcmp(argv[i], "-batch")) {
wu.batch = atoi(argv[++i]);
} else if (!strcmp(argv[i], "-config_dir")) {
config_dir = argv[++i];
} else if (!strcmp(argv[i], "-rsc_fpops_est")) {