From cb434cde33f75d939c6b10eabea3ab21f05f2810 Mon Sep 17 00:00:00 2001 From: Philip Chimento Date: Sun, 2 May 2010 20:00:18 +0000 Subject: [PATCH] Frotz now compiled to use Gargoyle extensions git-svn-id: http://lassie.dyndns-server.com/svn/gargoyle-gtk@259 ddfedd41-794f-dd11-ae45-00112f111e67 --- interpreters/frotz/glkfrotz.h | 1 + libchimara/input.c | 3 +++ libchimara/strio.c | 2 ++ 3 files changed, 6 insertions(+) diff --git a/interpreters/frotz/glkfrotz.h b/interpreters/frotz/glkfrotz.h index 54747b1..85b2222 100644 --- a/interpreters/frotz/glkfrotz.h +++ b/interpreters/frotz/glkfrotz.h @@ -35,6 +35,7 @@ #include #include "glk.h" +#include extern int curr_status_ht; extern int mach_status_ht; diff --git a/libchimara/input.c b/libchimara/input.c index 8b6d4c2..4bb9264 100644 --- a/libchimara/input.c +++ b/libchimara/input.c @@ -417,6 +417,9 @@ on_shutdown_key_press_event(GtkWidget *widget, GdkEventKey *event, winid_t win) gboolean on_char_input_key_press_event(GtkWidget *widget, GdkEventKey *event, winid_t win) { + if(event->is_modifier) + return FALSE; /* don't stop the event */ + glui32 keycode = keyval_to_glk_keycode(event->keyval, win->input_request_type == INPUT_REQUEST_CHARACTER_UNICODE); ChimaraGlk *glk = CHIMARA_GLK(gtk_widget_get_ancestor(widget, CHIMARA_TYPE_GLK)); diff --git a/libchimara/strio.c b/libchimara/strio.c index bac3153..f668cb9 100644 --- a/libchimara/strio.c +++ b/libchimara/strio.c @@ -258,6 +258,7 @@ write_buffer_to_stream_uni(strid_t str, glui32 *buf, glui32 len) if(str->unicode && str->ubuffer) { int copycount = MIN(len, str->buflen - str->mark); + g_printerr("Attempting to copy %d units; %d units of space left in buffer\n", len, str->buflen - str->mark); memmove(str->ubuffer + str->mark, buf, copycount * sizeof(glui32)); str->mark += copycount; } @@ -265,6 +266,7 @@ write_buffer_to_stream_uni(strid_t str, glui32 *buf, glui32 len) { gchar *latin1 = convert_ucs4_to_latin1_binary(buf, len); int copycount = MIN(len, str->buflen - str->mark); + g_printerr("Attempting to copy %d units; %d units of space left in buffer\n", len, str->buflen - str->mark); memmove(str->buffer + str->mark, latin1, copycount); g_free(latin1); str->mark += copycount; -- 2.30.2