llcrashloggerwindows.cpp File Reference

Windows crash logger implementation. More...

#include "stdafx.h"
#include "resource.h"
#include "llcrashloggerwindows.h"
#include <sstream>
#include "boost/tokenizer.hpp"
#include "dbghelp.h"
#include "indra_constants.h"
#include "llerror.h"
#include "llfile.h"
#include "lltimer.h"
#include "llstring.h"
#include "lldxhardware.h"
#include "lldir.h"
#include "llsdserialize.h"

Include dependency graph for llcrashloggerwindows.cpp:

Go to the source code of this file.

Defines

#define MAX_LOADSTRING   100
#define MAX_STRING   2048

Functions

void ConvertLPCSTRToLPWSTR (const char *pCstring, WCHAR *outStr)
void write_debug (const char *str)
void write_debug (std::string &str)
void show_progress (const char *message)
void update_messages ()
void sleep_and_pump_messages (U32 seconds)
bool handle_button_click (WORD button_id)
LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)

Variables

const char *const SETTINGS_FILE_HEADER = "version"
const S32 SETTINGS_FILE_VERSION = 101
HINSTANCE hInst = NULL
TCHAR szTitle [MAX_LOADSTRING]
TCHAR szWindowClass [MAX_LOADSTRING]
LLString gProductName
HWND gHwndReport = NULL
HWND gHwndProgress = NULL
HCURSOR gCursorArrow = NULL
HCURSOR gCursorWait = NULL
BOOL gFirstDialog = TRUE
std::stringstream gDXInfo
bool gSendLogs = false


Detailed Description

Windows crash logger implementation.

LicenseInfo
firstyear=2003&license=viewergpl

Copyright (c) 2003-2008, Linden Research, Inc.

Second Life Viewer Source Code The source code in this file ("Source Code") is provided by Linden Lab to you under the terms of the GNU General Public License, version 2.0 ("GPL"), unless you have obtained a separate licensing agreement ("Other License"), formally executed by you and Linden Lab. Terms of the GPL can be found in doc/GPL-license.txt in this distribution, or online at http://secondlifegrid.net/programs/open_source/licensing/gplv2

There are special exceptions to the terms and conditions of the GPL as it is applied to this Source Code. View the full text of the exception in the file doc/FLOSS-exception.txt in this software distribution, or online at http://secondlifegrid.net/programs/open_source/licensing/flossexception

By copying, modifying or distributing this software, you acknowledge that you have read and understood your obligations described above, and agree to abide by those obligations.

ALL LINDEN LAB SOURCE CODE IS PROVIDED "AS IS." LINDEN LAB MAKES NO WARRANTIES, EXPRESS, IMPLIED OR OTHERWISE, REGARDING ITS ACCURACY, COMPLETENESS OR PERFORMANCE. $/LicenseInfo$

Definition in file llcrashloggerwindows.cpp.


Define Documentation

#define MAX_LOADSTRING   100

Definition at line 50 of file llcrashloggerwindows.cpp.

#define MAX_STRING   2048

Definition at line 51 of file llcrashloggerwindows.cpp.

Referenced by append_aggregate(), LLHTTPAssetStorage::checkForTimeouts(), LLMessageSystem::checkMessages(), LLPanelEstateInfo::commitEstateInfoDataserver(), LLLandmark::constructFromString(), LLWorldMapView::draw(), LLProgressView::draw(), encode_vorbis_file(), LLWearable::exportFile(), LLParcel::exportStream(), LLSDFormatter::formatReal(), LLFloaterReporter::gatherReport(), LLAppViewerMacOSX::generateSerialNumber(), LLItemBridge::getLabelSuffix(), LLFloaterNotRunQueue::handleInventory(), LLFloaterRunQueue::handleInventory(), LLFloaterResetQueue::handleInventory(), LLFloaterTopObjects::handleReply(), LLNetMap::handleToolTip(), idle_startup(), LLAppViewer::idleShutdown(), LLVOAvatar::idleUpdate(), LLParcel::importAccessEntry(), LLTextEditor::importBuffer(), LLCacheName::importFile(), LLSaleInfo::importFile(), LLInventoryCategory::importFile(), LLInventoryItem::importFile(), LLViewerInventoryCategory::importFileLocal(), LLSaleInfo::importLegacyStream(), LLInventoryCategory::importLegacyStream(), LLInventoryItem::importLegacyStream(), LLInventoryObject::importLegacyStream(), LLParcel::importStream(), LLURL::init(), LLPanelEstateInfo::kickUserConfirm(), ll_apr_warn_status(), LLCPUInfo::LLCPUInfo(), LLFloaterAbout::LLFloaterAbout(), LLOSInfo::LLOSInfo(), LLScriptScript::LLScriptScript(), LLViewerKeyboard::loadBindings(), LLFeatureManager::loadFeatureTables(), LLMuteList::loadFromFile(), LLInventoryModel::loadFromFile(), LLFeatureManager::loadGPUClass(), LLFloaterImagePreview::loadImage(), LLViewerObject::loadTaskInvFile(), LLMessageSystem::logMsgFromInvalidCircuit(), LLMessageSystem::logValidMsg(), LLCrashLoggerWindows::mainLoop(), LLFloaterScriptQueue::nextObject(), LLFloaterTelehub::onClickRemoveSpawnPoint(), LLPanelLandAccess::onCommitPublicAccess(), LLPanelRegionGeneralInfo::onKickAllCommit(), LLPanelRegionGeneralInfo::onKickCommit(), LLPanelRegionGeneralInfo::onMessageCommit(), LLWearable::onSaveNewAssetComplete(), LLSelectMgr::packObjectIDAsParam(), LLUserAuth::parseResponse(), LLViewerChatterBoxInvitation::post(), LLPanelRegionTextureInfo::postBuild(), process_agent_alert_message(), process_agent_movement_complete(), process_alert_message(), process_covenant_reply(), process_feature_disabled_message(), process_improved_im(), process_teleport_progress(), process_user_info_reply(), LLPanelAvatar::processAvatarPropertiesReply(), LLCrashLoggerWindows::ProcessCaption(), LLGroupMgr::processCreateGroupReply(), LLPanelDirBrowser::processDirEventsReply(), LLPanelDirBrowser::processDirLandReply(), LLPanelDirBrowser::processDirPlacesReply(), LLCrashLoggerWindows::ProcessDlgItemText(), LLXferManager::processFileRequest(), LLPanelGroupLandMoney::impl::processGroupLand(), LLPanelGroupVoting::impl::processGroupVoteHistoryItemReply(), LLWorldMap::processMapBlockReply(), LLWorldMap::processMapItemReply(), LLInventoryModel::processMoveInventoryItem(), LLMuteList::processMuteListUpdate(), LLPanelGroupNotices::processNotices(), LLPanelPlace::processParcelInfoReply(), LLPanelLandObjects::processParcelObjectOwnersReply(), LLFloaterLandHoldings::processPlacesReply(), LLXferManager::processReceiveData(), LLFloaterRegionInfo::processRegionInfo(), LLFloaterGodTools::processRegionInfo(), LLGroupMoneyPlanningTabEventHandler::processReply(), LLGroupMoneySalesTabEventHandler::processReply(), LLGroupMoneyDetailsTabEventHandler::processReply(), LLViewerObject::processTaskInv(), LLViewerObject::processUpdateMessage(), LLPanelPermissions::refresh(), LLFloaterInspect::refresh(), LLPanelLandAccess::refresh_ui(), LLPanelRegionTextureInfo::refreshFromRegion(), LLWearable::saveNewAsset(), LLFloaterCompileQueue::scriptArrived(), LLChatBar::sendChatFromViewer(), LLPanelEstateInfo::sendEstateAccessDelta(), LLMessageSystem::sendMessage(), LLPanelRegionTerrainInfo::sendUpdate(), LLPanelRegionTextureInfo::sendUpdate(), LLPanelRegionDebugInfo::sendUpdate(), LLPanelRegionGeneralInfo::sendUpdate(), LLScriptScript::setBytecodeDest(), LLHost::setHostByName(), LLAgent::setRegion(), LLFloaterScriptQueue::start(), LLMemoryInfo::stream(), LLCPUInfo::stream(), LLMessageSystem::summarizeLogs(), LLDispatcher::unpackMessage(), LLFloaterTelehub::unpackTelehubInfo(), upload_new_resource(), upload_pick(), LLLiveLSLEditor::uploadAssetLegacy(), LLPreviewLSL::uploadAssetLegacy(), LLPanelRegionTextureInfo::validateTextureSizes(), and LLVoiceClient::writeString().


Function Documentation

void ConvertLPCSTRToLPWSTR ( const char *  pCstring,
WCHAR *  outStr 
)

Definition at line 75 of file llcrashloggerwindows.cpp.

References NULL.

Referenced by LLCrashLoggerWindows::mainLoop(), LLCrashLoggerWindows::ProcessCaption(), and LLCrashLoggerWindows::ProcessDlgItemText().

Here is the caller graph for this function:

bool handle_button_click ( WORD  button_id  ) 

void show_progress ( const char *  message  ) 

Definition at line 100 of file llcrashloggerwindows.cpp.

References FALSE, gHwndProgress, IDC_LOG, utf8str_to_wstring(), and wstring_to_utf16str().

Referenced by LLCrashLoggerWindows::cleanup(), and LLCrashLoggerWindows::updateApplication().

Here is the call graph for this function:

Here is the caller graph for this function:

void sleep_and_pump_messages ( U32  seconds  ) 

Definition at line 127 of file llcrashloggerwindows.cpp.

References ms_sleep(), and update_messages().

Referenced by LLCrashLoggerWindows::cleanup().

Here is the call graph for this function:

Here is the caller graph for this function:

void update_messages (  ) 

Definition at line 113 of file llcrashloggerwindows.cpp.

References NULL.

Referenced by sleep_and_pump_messages(), and LLCrashLoggerWindows::updateApplication().

Here is the caller graph for this function:

LRESULT CALLBACK WndProc ( HWND  hwnd,
UINT  message,
WPARAM  wParam,
LPARAM  lParam 
)

Definition at line 215 of file llcrashloggerwindows.cpp.

References gFirstDialog, handle_button_click(), and LLApp::setQuitting().

Referenced by LLCrashLoggerWindows::init().

Here is the call graph for this function:

Here is the caller graph for this function:

void write_debug ( std::string &  str  ) 

Definition at line 95 of file llcrashloggerwindows.cpp.

References write_debug().

Here is the call graph for this function:

void write_debug ( const char *  str  ) 

Definition at line 90 of file llcrashloggerwindows.cpp.

References gDXInfo.

Referenced by write_debug().

Here is the caller graph for this function:


Variable Documentation

HCURSOR gCursorArrow = NULL

HCURSOR gCursorWait = NULL

std::stringstream gDXInfo

Definition at line 68 of file llcrashloggerwindows.cpp.

Referenced by write_debug().

Definition at line 67 of file llcrashloggerwindows.cpp.

HWND gHwndProgress = NULL

HWND gHwndReport = NULL

Definition at line 63 of file llcrashloggerwindows.cpp.

Referenced by handle_button_click(), and LLCrashLoggerWindows::mainLoop().

Definition at line 62 of file llcrashloggerwindows.cpp.

bool gSendLogs = false

Definition at line 69 of file llcrashloggerwindows.cpp.

Referenced by LLCrashLoggerWindows::cleanup(), and handle_button_click().

HINSTANCE hInst = NULL

const char* const SETTINGS_FILE_HEADER = "version"

Definition at line 52 of file llcrashloggerwindows.cpp.

Definition at line 53 of file llcrashloggerwindows.cpp.

TCHAR szTitle[MAX_LOADSTRING]

Definition at line 59 of file llcrashloggerwindows.cpp.

Referenced by LLCrashLoggerWindows::init().

TCHAR szWindowClass[MAX_LOADSTRING]

Definition at line 60 of file llcrashloggerwindows.cpp.

Referenced by LLCrashLoggerWindows::init().


Generated on Fri May 16 08:38:19 2008 for SecondLife by  doxygen 1.5.5