I fixed the problem. If you're compiling from source, you can apply this patch:
Code:
commit 2d86a7ff4a1cdc594c6deaa961a9bdd56eb82402
Author: David Korth <gerbilsoft@verizon.net>
Date: Wed Jul 29 04:18:21 2009 -0400
[GTK+] gens_window_sync.cpp: Fixed an off-by-one in Sync_Gens_Window_GraphicsMenu().
If a custom resolution was set, the custom resolution code ended up writing
past the end of sCustomRes[], resulting in a stack smash.
This bug was reported by mister_k81 on the Ubuntu Forums:
http://ubuntuforums.org/showpost.php?p=7696449&postcount=3
diff --git a/src/gens/ui/gtk/gens/gens_window_sync.cpp b/src/gens/ui/gtk/gens/gens_window_sync.cpp
index e89bda1..7924169 100644
--- a/src/gens/ui/gtk/gens/gens_window_sync.cpp
+++ b/src/gens/ui/gtk/gens/gens_window_sync.cpp
@@ -303,7 +303,7 @@ void Sync_Gens_Window_GraphicsMenu(void)
// Custom resolution. Set the text.
char sCustomRes[32];
snprintf(sCustomRes, sizeof(sCustomRes), "Custom... (%dx%d)", Video.GL.width, Video.GL.height);
- sCustomRes[sizeof(sCustomRes)] = 0x00;
+ sCustomRes[sizeof(sCustomRes)-1] = 0x00;
gtk_label_set_text(GTK_LABEL(gtk_bin_get_child(GTK_BIN(mnuGLResCustom))), sCustomRes);
}
else
Bookmarks