summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/windowmanager-sdl.cc
diff options
context:
space:
mode:
authorAdam Borowski <kilobyte@angband.pl>2011-04-01 11:05:19 +0200
committerAdam Borowski <kilobyte@angband.pl>2011-04-01 11:07:01 +0200
commitdd7ffe0ad54606d84d54f828bcedceb30d2e73b3 (patch)
tree12f7f82db543bf0204b971c1e9d82ebaad6344e0 /crawl-ref/source/windowmanager-sdl.cc
parentd55761bd94462397dd341671e75c4bf4609818af (diff)
downloadcrawl-ref-dd7ffe0ad54606d84d54f828bcedceb30d2e73b3.tar.gz
crawl-ref-dd7ffe0ad54606d84d54f828bcedceb30d2e73b3.zip
Mention more data in an assertion.
Diffstat (limited to 'crawl-ref/source/windowmanager-sdl.cc')
-rw-r--r--crawl-ref/source/windowmanager-sdl.cc17
1 files changed, 15 insertions, 2 deletions
diff --git a/crawl-ref/source/windowmanager-sdl.cc b/crawl-ref/source/windowmanager-sdl.cc
index dee6108959..a432f049e8 100644
--- a/crawl-ref/source/windowmanager-sdl.cc
+++ b/crawl-ref/source/windowmanager-sdl.cc
@@ -487,8 +487,21 @@ int SDLWrapper::wait_event(wm_event *event)
// Everything that's not an actual character (ie, all special keys)
// must be < 0. Dead/shift keys are 0.
- ASSERT(event->key.keysym.unicode && event->key.keysym.sym > 0
- || !event->key.keysym.unicode && event->key.keysym.sym <= 0);
+#ifdef ASSERTS
+ if (event->key.keysym.unicode)
+ {
+ if (event->key.keysym.sym <= 0)
+ {
+ die("Valid character '%lc' %d[%x] yet keysym %d <= 0",
+ event->key.keysym.unicode,
+ event->key.keysym.unicode,
+ event->key.keysym.unicode,
+ event->key.keysym.sym);
+ }
+ }
+ else if (event->key.keysym.sym > 0)
+ die("Keysym %d > 0 yet no valid character", event->key.keysym.sym);
+#endif
break;
case SDL_KEYUP:
event->type = WM_KEYUP;