attempt to attach to it.
- CLIENT: Move the code that deletes the project_init.xml from detach
project to attach project. It is only needed for as long as
it takes to attach to a project.
client/
gui_rpc_server_ops.C
clientgui/
AdvancedFrame.cpp
sg_BoincSimpleGUI.cpp
svn path=/trunk/boinc/; revision=14582
resulting in a lot of read-only files in its slot directories.
When the client attempts to delete these files,
each delete fails and the client retries for about 5 seconds.
This adds up to a delay of about 20 minutes,
during which the client (and Manager) appear to be hung.
Solution:
1) if a file delete fails with error ERROR_ACCESS_DENIED,
use SetFileAttributes() to clear the read-only flag, then try again.
2) Don't use the 5-second retry mechanism when clearing out
slot directories. These can contain unbounded numbers of files,
and this can lead to long periods where the client appears hung.
svn path=/trunk/boinc/; revision=14557
- move client sandbox-specific code to a new file, sandbox.C
- remove g_use_sandbox from util.C; move to MainDocument.cpp (manager)
and sandbox.C (client)
- don't declare check_security() in util.h; it's not in util.C
- don't call remove_project_owned_file_or_dir() in
boinc_delete_file_aux() or boinc_rmdir();
rather, at the points in the client that delete
dirs that are usually owned by boinc_projects,
call remove_project_owned_file_or_dir() first,
then clean_out_dir().
- rename boinc_exec() to switcher_exec() and move it to sandbox.C
Note: this change was sparked by needing to remove a call to getgrnam()
from boinclib, to avoid requiring the same version of glibc
on both compile and target hosts
svn path=/trunk/boinc/; revision=13784