gtk: added a check for GTK version; this is so we can detect old GTK versions and bail on dialogs instead of segfaulting

updated TODO for 2.1.6
This commit is contained in:
punkrockguy318 2012-03-06 21:25:49 +00:00
parent ff93dd5054
commit 68aa80a5df
2 changed files with 40 additions and 1 deletions

View File

@ -43,15 +43,28 @@ TESTING
* Debian 6
* Ubuntu 10.04 / 11.04
* ???
Arch Linux 64 bit
-----------------
Flawless installation from fceux-svn in [aur]. No issues other than the ones already
noted.
Ubuntu 10.04
------------
* Compiles/builds without issue.
* No issues found in gameplay.
* TODO Some dialogs with segfault FCEUX due to an older version of GTK. Perhaps we can detect the old version of GTK and just prevent the dialog from being opened so the segfault doesn't occur? (bug added).
* Wrote CheckGTKVersion(), which will be used like CheckGTKVersion(2, 24) to check the GTK version before segfaulting on dialogs
* TODO: Implement a check for the dialogs that would bomb -- (a hook in init; makes all items under Options inacessible besides fullscreen if under 2.24)
openSUSE 12.1
-------------
* scons bombs out because can't find libgtk; I can't find gtk headers package
PROJECT STUFF
=============
* Contact debian package management
* Create a sane release procedure script that generates a release ready tarball
* Create markdown file of README
* DONE - Create markdown file of README
* Locate important features and summarize them.

View File

@ -52,6 +52,32 @@ GtkWidget* configNoCombo = NULL;
GtkWidget* buttonMappings[10];
GtkRadioAction* stateSlot = NULL;
// check to see if a particular GTK version is available
// 2.24 is required for most of the dialogs -- ie: checkGTKVersion(2,4);
bool checkGTKVersion(int major_required, int minor_required)
{
int major = GTK_MAJOR_VERSION;
int minor = GTK_MINOR_VERSION;
if(major > major_required)
{
return true;
} else if (major == major_required)
{
if(minor >= minor_required)
{
return true;
}
else
{
return false;
}
} else
{
return false;
}
}
// This function configures a single button on a gamepad
int configGamepadButton(GtkButton* button, gpointer p)
{