summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon Robertshaw <simon@hardwired.org.uk>2011-08-22 20:22:21 (GMT)
committer Simon Robertshaw <simon@hardwired.org.uk>2011-08-22 20:22:21 (GMT)
commit42938cc2ea193a8a4f4a09639292f97fd1590478 (patch)
treea0daf724e0dae8bc2ebb1b29018fd7277ac82318
parentac6feec87451b9a28e3e1546c1d7421dc550c272 (diff)
downloadpowder-42938cc2ea193a8a4f4a09639292f97fd1590478.zip
powder-42938cc2ea193a8a4f4a09639292f97fd1590478.tar.gz
Lua keyevents bug, int keycode is cast to a char
-rw-r--r--includes/luaconsole.h2
-rw-r--r--src/luaconsole.c5
2 files changed, 4 insertions, 3 deletions
diff --git a/includes/luaconsole.h b/includes/luaconsole.h
index 5a5ca2b..6bc1bca 100644
--- a/includes/luaconsole.h
+++ b/includes/luaconsole.h
@@ -20,7 +20,7 @@
void luacon_open();
int luacon_step(int mx, int my);
int luacon_mouseevent(int mx, int my, int mb, int event);
-int luacon_keyevent(char key, int modifier, int event);
+int luacon_keyevent(int key, int modifier, int event);
int luacon_eval(char *command);
char *luacon_geterror();
void luacon_close();
diff --git a/src/luaconsole.c b/src/luaconsole.c
index dc1da07..9d281c2 100644
--- a/src/luaconsole.c
+++ b/src/luaconsole.c
@@ -74,12 +74,13 @@ void luacon_open(){
lua_pushinteger(l, 0);
lua_setfield(l, tptProperties, "mousey");
}
-int luacon_keyevent(char key, int modifier, int event){
+int luacon_keyevent(int key, int modifier, int event){
int i = 0, kpcontinue = 1;
+ char tempkey[] = {(key, 0};
if(keypress_function_count){
for(i = 0; i < keypress_function_count && kpcontinue; i++){
lua_rawgeti(l, LUA_REGISTRYINDEX, keypress_functions[i]);
- lua_pushstring(l, &key);
+ lua_pushstring(l, tempkey);
lua_pushinteger(l, key);
lua_pushinteger(l, modifier);
lua_pushinteger(l, event);