mirror of https://github.com/BOINC/boinc.git
*** empty log message ***
svn path=/trunk/boinc/; revision=8791
This commit is contained in:
parent
ff725f9778
commit
6aa03769c4
|
@ -13515,3 +13515,19 @@ Charlie 1 Nov 2005
|
|||
mac_build/
|
||||
boinc.pbproj/
|
||||
project.pbxproj
|
||||
|
||||
Rom 2 Nov 2005
|
||||
- Catch exceptions thrown by the STL library when vectors may not contain
|
||||
the requested data. For some reason the list views are trying to
|
||||
populate themselves with data during a connection cycle which means
|
||||
the various tabs cache's are empty. We now just return an empty string
|
||||
in this condition. This should clean up a few crash conditions on
|
||||
platforms other than Windows.
|
||||
|
||||
clientgui/
|
||||
BOINCBaseView.cpp
|
||||
MainFrame.cpp
|
||||
ViewProjects.cpp
|
||||
ViewResources.cpp
|
||||
ViewTransfers.cpp
|
||||
ViewWork.cpp
|
||||
|
|
|
@ -338,9 +338,9 @@ int CBOINCBaseView::SyncronizeCache() {
|
|||
int iRowTotal = 0;
|
||||
int iColumnIndex = 0;
|
||||
int iColumnTotal = 0;
|
||||
wxString strDocumentText = wxEmptyString;
|
||||
wxString strListPaneText = wxEmptyString;
|
||||
bool bNeedRefreshData = false;
|
||||
wxString strDocumentText = wxEmptyString;
|
||||
wxString strListPaneText = wxEmptyString;
|
||||
bool bNeedRefreshData = false;
|
||||
|
||||
iRowTotal = GetDocCount();
|
||||
iColumnTotal = m_pListPane->GetColumnCount();
|
||||
|
|
|
@ -1372,7 +1372,7 @@ void CMainFrame::OnConnect(CMainFrameEvent&) {
|
|||
m_pFrameListPanelRenderTimer->Start();
|
||||
m_pDocumentPollTimer->Start();
|
||||
|
||||
m_pNotebook->SetSelection(ID_LIST_MESSAGESVIEW - ID_LIST_BASE);
|
||||
m_pNotebook->SetSelection(ID_TASK_MESSAGESVIEW - ID_TASK_BASE);
|
||||
}
|
||||
|
||||
wxLogTrace(wxT("Function Start/End"), wxT("CMainFrame::OnConnect - Function End"));
|
||||
|
|
|
@ -398,31 +398,39 @@ wxInt32 CViewProjects::GetDocCount() {
|
|||
|
||||
|
||||
wxString CViewProjects::OnListGetItemText(long item, long column) const {
|
||||
CProject* project = m_ProjectCache.at(item);
|
||||
CProject* project = NULL;
|
||||
wxString strBuffer = wxEmptyString;
|
||||
|
||||
switch(column) {
|
||||
case COLUMN_PROJECT:
|
||||
strBuffer = project->m_strProjectName;
|
||||
break;
|
||||
case COLUMN_ACCOUNTNAME:
|
||||
strBuffer = project->m_strAccountName;
|
||||
break;
|
||||
case COLUMN_TEAMNAME:
|
||||
strBuffer = project->m_strTeamName;
|
||||
break;
|
||||
case COLUMN_TOTALCREDIT:
|
||||
strBuffer = project->m_strTotalCredit;
|
||||
break;
|
||||
case COLUMN_AVGCREDIT:
|
||||
strBuffer = project->m_strAVGCredit;
|
||||
break;
|
||||
case COLUMN_RESOURCESHARE:
|
||||
strBuffer = project->m_strResourceShare;
|
||||
break;
|
||||
case COLUMN_STATUS:
|
||||
strBuffer = project->m_strStatus;
|
||||
break;
|
||||
try {
|
||||
project = m_ProjectCache.at(item);
|
||||
} catch ( std::out_of_range ) {
|
||||
project = NULL;
|
||||
}
|
||||
|
||||
if (project) {
|
||||
switch(column) {
|
||||
case COLUMN_PROJECT:
|
||||
strBuffer = project->m_strProjectName;
|
||||
break;
|
||||
case COLUMN_ACCOUNTNAME:
|
||||
strBuffer = project->m_strAccountName;
|
||||
break;
|
||||
case COLUMN_TEAMNAME:
|
||||
strBuffer = project->m_strTeamName;
|
||||
break;
|
||||
case COLUMN_TOTALCREDIT:
|
||||
strBuffer = project->m_strTotalCredit;
|
||||
break;
|
||||
case COLUMN_AVGCREDIT:
|
||||
strBuffer = project->m_strAVGCredit;
|
||||
break;
|
||||
case COLUMN_RESOURCESHARE:
|
||||
strBuffer = project->m_strResourceShare;
|
||||
break;
|
||||
case COLUMN_STATUS:
|
||||
strBuffer = project->m_strStatus;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return strBuffer;
|
||||
|
|
|
@ -108,17 +108,25 @@ wxInt32 CViewResources::GetDocCount() {
|
|||
|
||||
|
||||
wxString CViewResources::OnListGetItemText(long item, long column) const {
|
||||
CResource* resource = m_ResourceCache.at(item);
|
||||
CResource* resource = NULL;
|
||||
wxString strBuffer = wxEmptyString;
|
||||
|
||||
switch(column)
|
||||
{
|
||||
case COLUMN_PROJECT:
|
||||
strBuffer = resource->m_strProjectName;
|
||||
break;
|
||||
case COLUMN_DISKSPACE:
|
||||
strBuffer = resource->m_strDiskSpace;
|
||||
break;
|
||||
try {
|
||||
resource = m_ResourceCache.at(item);
|
||||
} catch ( std::out_of_range ) {
|
||||
resource = NULL;
|
||||
}
|
||||
|
||||
if (resource) {
|
||||
switch(column)
|
||||
{
|
||||
case COLUMN_PROJECT:
|
||||
strBuffer = resource->m_strProjectName;
|
||||
break;
|
||||
case COLUMN_DISKSPACE:
|
||||
strBuffer = resource->m_strDiskSpace;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return strBuffer;
|
||||
|
|
|
@ -221,28 +221,36 @@ wxString CViewTransfers::OnListGetItemText(long item, long column) const {
|
|||
CTransfer* transfer = m_TransferCache.at(item);
|
||||
wxString strBuffer = wxEmptyString;
|
||||
|
||||
switch(column) {
|
||||
case COLUMN_PROJECT:
|
||||
strBuffer = transfer->m_strProjectName;
|
||||
break;
|
||||
case COLUMN_FILE:
|
||||
strBuffer = transfer->m_strFileName;
|
||||
break;
|
||||
case COLUMN_PROGRESS:
|
||||
strBuffer = transfer->m_strProgress;
|
||||
break;
|
||||
case COLUMN_SIZE:
|
||||
strBuffer = transfer->m_strSize;
|
||||
break;
|
||||
case COLUMN_TIME:
|
||||
strBuffer = transfer->m_strTime;
|
||||
break;
|
||||
case COLUMN_SPEED:
|
||||
strBuffer = transfer->m_strSpeed;
|
||||
break;
|
||||
case COLUMN_STATUS:
|
||||
strBuffer = transfer->m_strStatus;
|
||||
break;
|
||||
try {
|
||||
transfer = m_TransferCache.at(item);
|
||||
} catch ( std::out_of_range ) {
|
||||
transfer = NULL;
|
||||
}
|
||||
|
||||
if (transfer) {
|
||||
switch(column) {
|
||||
case COLUMN_PROJECT:
|
||||
strBuffer = transfer->m_strProjectName;
|
||||
break;
|
||||
case COLUMN_FILE:
|
||||
strBuffer = transfer->m_strFileName;
|
||||
break;
|
||||
case COLUMN_PROGRESS:
|
||||
strBuffer = transfer->m_strProgress;
|
||||
break;
|
||||
case COLUMN_SIZE:
|
||||
strBuffer = transfer->m_strSize;
|
||||
break;
|
||||
case COLUMN_TIME:
|
||||
strBuffer = transfer->m_strTime;
|
||||
break;
|
||||
case COLUMN_SPEED:
|
||||
strBuffer = transfer->m_strSpeed;
|
||||
break;
|
||||
case COLUMN_STATUS:
|
||||
strBuffer = transfer->m_strStatus;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return strBuffer;
|
||||
|
|
|
@ -293,34 +293,42 @@ wxInt32 CViewWork::GetDocCount() {
|
|||
|
||||
|
||||
wxString CViewWork::OnListGetItemText(long item, long column) const {
|
||||
CWork* work = m_WorkCache.at(item);
|
||||
CWork* work = NULL;
|
||||
wxString strBuffer = wxEmptyString;
|
||||
|
||||
switch(column) {
|
||||
case COLUMN_PROJECT:
|
||||
strBuffer = work->m_strProjectName;
|
||||
break;
|
||||
case COLUMN_APPLICATION:
|
||||
strBuffer = work->m_strApplicationName;
|
||||
break;
|
||||
case COLUMN_NAME:
|
||||
strBuffer = work->m_strName;
|
||||
break;
|
||||
case COLUMN_CPUTIME:
|
||||
strBuffer = work->m_strCPUTime;
|
||||
break;
|
||||
case COLUMN_PROGRESS:
|
||||
strBuffer = work->m_strProgress;
|
||||
break;
|
||||
case COLUMN_TOCOMPLETION:
|
||||
strBuffer = work->m_strTimeToCompletion;
|
||||
break;
|
||||
case COLUMN_REPORTDEADLINE:
|
||||
strBuffer = work->m_strReportDeadline;
|
||||
break;
|
||||
case COLUMN_STATUS:
|
||||
strBuffer = work->m_strStatus;
|
||||
break;
|
||||
try {
|
||||
work = m_WorkCache.at(item);
|
||||
} catch ( std::out_of_range ) {
|
||||
work = NULL;
|
||||
}
|
||||
|
||||
if (work) {
|
||||
switch(column) {
|
||||
case COLUMN_PROJECT:
|
||||
strBuffer = work->m_strProjectName;
|
||||
break;
|
||||
case COLUMN_APPLICATION:
|
||||
strBuffer = work->m_strApplicationName;
|
||||
break;
|
||||
case COLUMN_NAME:
|
||||
strBuffer = work->m_strName;
|
||||
break;
|
||||
case COLUMN_CPUTIME:
|
||||
strBuffer = work->m_strCPUTime;
|
||||
break;
|
||||
case COLUMN_PROGRESS:
|
||||
strBuffer = work->m_strProgress;
|
||||
break;
|
||||
case COLUMN_TOCOMPLETION:
|
||||
strBuffer = work->m_strTimeToCompletion;
|
||||
break;
|
||||
case COLUMN_REPORTDEADLINE:
|
||||
strBuffer = work->m_strReportDeadline;
|
||||
break;
|
||||
case COLUMN_STATUS:
|
||||
strBuffer = work->m_strStatus;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return strBuffer;
|
||||
|
|
|
@ -147,9 +147,6 @@
|
|||
Name="Source Files"
|
||||
Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm;asmx"
|
||||
UniqueIdentifier="{4FC737F1-C7A5-4376-A066-2A32D752A2FF}">
|
||||
<File
|
||||
RelativePath="..\clientgui\BOINCBaseView.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\clientgui\BOINCGUIApp.cpp">
|
||||
</File>
|
||||
|
@ -235,9 +232,6 @@
|
|||
<File
|
||||
RelativePath="..\clientgui\_wx_intellisense.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\clientgui\BOINCBaseView.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\clientgui\BOINCGUIApp.h">
|
||||
</File>
|
||||
|
@ -519,6 +513,12 @@
|
|||
<Filter
|
||||
Name="Views"
|
||||
Filter="">
|
||||
<File
|
||||
RelativePath="..\clientgui\BOINCBaseView.cpp">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\clientgui\BOINCBaseView.h">
|
||||
</File>
|
||||
<File
|
||||
RelativePath="..\clientgui\ViewMessages.cpp">
|
||||
</File>
|
||||
|
|
Loading…
Reference in New Issue