aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linden/indra/newview/llwindebug.h
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--linden/indra/newview/llwindebug.h30
1 files changed, 28 insertions, 2 deletions
diff --git a/linden/indra/newview/llwindebug.h b/linden/indra/newview/llwindebug.h
index b11cdf6..cf15fae 100644
--- a/linden/indra/newview/llwindebug.h
+++ b/linden/indra/newview/llwindebug.h
@@ -38,10 +38,36 @@
38class LLWinDebug 38class LLWinDebug
39{ 39{
40public: 40public:
41 static BOOL setupExceptionHandler();
42 41
43 static LONG WINAPI handleException(struct _EXCEPTION_POINTERS *pExceptionInfo); 42
43 /**
44 * @brief initialize the llwindebug exception filter callback
45 *
46 * Hand a windows unhandled exception filter to LLWinDebug
47 * This method should only be called to change the
48 * exception filter used by llwindebug.
49 *
50 * Setting filter_func to NULL will clear any custom filters.
51 **/
52 static void initExceptionHandler(LPTOP_LEVEL_EXCEPTION_FILTER filter_func);
53
54 /**
55 * @brief check the status of the exception filter.
56 *
57 * Resets unhandled exception filter to the filter specified
58 * w/ initExceptionFilter).
59 * Returns false if the exception filter was modified.
60 *
61 * *NOTE:Mani In the past mozlib has been accused of
62 * overriding the exception filter. If the mozlib filter
63 * is required, perhaps we can chain calls from our
64 * filter to mozlib's.
65 **/
66 static bool checkExceptionHandler();
67
68 static void generateCrashStacks(struct _EXCEPTION_POINTERS *pExceptionInfo = NULL);
44 static void writeDumpToFile(MINIDUMP_TYPE type, MINIDUMP_EXCEPTION_INFORMATION *ExInfop, const char *filename); 69 static void writeDumpToFile(MINIDUMP_TYPE type, MINIDUMP_EXCEPTION_INFORMATION *ExInfop, const char *filename);
70private:
45}; 71};
46 72
47#endif // LL_LLWINDEBUG_H 73#endif // LL_LLWINDEBUG_H