diff options
author | jamesr@chromium.org <jamesr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-16 00:52:58 +0000 |
---|---|---|
committer | jamesr@chromium.org <jamesr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-09-16 00:52:58 +0000 |
commit | 3c2b19426891df0f123dc597220c63c604e7901d (patch) | |
tree | e4ec6e0a7ed4b05fae9f60c72f52556bce86a0e2 /app/x11_util.cc | |
parent | 606e5bf8127fc5780999543e560397c895656a09 (diff) | |
download | chromium_src-3c2b19426891df0f123dc597220c63c604e7901d.zip chromium_src-3c2b19426891df0f123dc597220c63c604e7901d.tar.gz chromium_src-3c2b19426891df0f123dc597220c63c604e7901d.tar.bz2 |
Make our X11 error handler more descriptive
BUG=none
TEST=trigger X11 error, look at the error dialog
Review URL: http://codereview.chromium.org/3425006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@59595 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'app/x11_util.cc')
-rw-r--r-- | app/x11_util.cc | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/app/x11_util.cc b/app/x11_util.cc index 558fd67..e86c3ab 100644 --- a/app/x11_util.cc +++ b/app/x11_util.cc @@ -55,7 +55,7 @@ CachedPictFormats* get_cached_pict_formats() { const size_t kMaxCacheSize = 5; int DefaultX11ErrorHandler(Display* d, XErrorEvent* e) { - LOG(FATAL) << GetErrorEventDescription(e); + LOG(FATAL) << GetErrorEventDescription(d, e); return 0; } @@ -834,9 +834,13 @@ void SetX11ErrorHandlers(XErrorHandler error_handler, io_error_handler ? io_error_handler : DefaultX11IOErrorHandler); } -std::string GetErrorEventDescription(XErrorEvent* error_event) { +std::string GetErrorEventDescription(Display* dpy, XErrorEvent* error_event) { + char buf[255]; + XGetErrorText(dpy, error_event->error_code, buf, 254); return base::StringPrintf( - "X Error detected: %lu error_code %u request_code %u minor_code %u", + "X Error detected: %s " + "(serial: %lu, error_code: %u, request_code: %u, minor_code: %u)", + buf, error_event->serial, error_event->error_code, error_event->request_code, |