diff options
author | Adam Borowski <kilobyte@angband.pl> | 2011-04-01 11:05:19 +0200 |
---|---|---|
committer | Adam Borowski <kilobyte@angband.pl> | 2011-04-01 11:07:01 +0200 |
commit | dd7ffe0ad54606d84d54f828bcedceb30d2e73b3 (patch) | |
tree | 12f7f82db543bf0204b971c1e9d82ebaad6344e0 /crawl-ref/source/windowmanager-sdl.cc | |
parent | d55761bd94462397dd341671e75c4bf4609818af (diff) | |
download | crawl-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.cc | 17 |
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; |