[gnome-games] Fix games not initializing the scores setgid code
- From: Robert Ancell <rancell src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-games] Fix games not initializing the scores setgid code
- Date: Wed, 18 Jan 2012 02:24:26 +0000 (UTC)
commit 44cfe8c18013ebb571d111377c018617f7d12b79
Author: Robert Ancell <robert ancell canonical com>
Date: Wed Jan 18 13:24:22 2012 +1100
Fix games not initializing the scores setgid code
glines/src/glines.c | 2 ++
gnibbles/src/main.c | 2 ++
gnobots2/src/gnobots.c | 2 ++
gnomine/src/gnomine.vala | 2 ++
gnotravex/src/gnotravex.vala | 1 +
gnotski/src/gnotski.c | 2 ++
gtali/src/gyahtzee.c | 2 ++
libgames-support/GnomeGamesSupport-1.0.vapi | 3 +++
libgames-support/games-scores-backend.c | 10 ++++++++--
libgames-support/games-scores-backend.h | 1 +
libgames-support/games-scores.c | 6 ++++++
libgames-support/games-scores.h | 1 +
mahjongg/src/mahjongg.vala | 2 ++
quadrapassel/src/main.cpp | 4 +---
14 files changed, 35 insertions(+), 5 deletions(-)
---
diff --git a/glines/src/glines.c b/glines/src/glines.c
index 960ceb9..194d0a5 100644
--- a/glines/src/glines.c
+++ b/glines/src/glines.c
@@ -1506,6 +1506,8 @@ main (int argc, char *argv[])
gboolean retval;
GError *error = NULL;
+ games_scores_startup ();
+
rgen = g_rand_new ();
context = g_option_context_new (NULL);
diff --git a/gnibbles/src/main.c b/gnibbles/src/main.c
index fc8e270..9a6303f 100644
--- a/gnibbles/src/main.c
+++ b/gnibbles/src/main.c
@@ -891,6 +891,8 @@ main (int argc, char **argv)
int i;
GError *error = NULL;
+ games_scores_startup ();
+
g_set_application_name (_("Nibbles"));
if (gtk_clutter_init (&argc, &argv) != CLUTTER_INIT_SUCCESS) {
diff --git a/gnobots2/src/gnobots.c b/gnobots2/src/gnobots.c
index 7c00bcd..af2db8f 100644
--- a/gnobots2/src/gnobots.c
+++ b/gnobots2/src/gnobots.c
@@ -143,6 +143,8 @@ main (int argc, char *argv[])
gboolean retval;
GError *error = NULL;
+ games_scores_startup ();
+
gettimeofday (&tv, NULL);
srand (tv.tv_usec);
diff --git a/gnomine/src/gnomine.vala b/gnomine/src/gnomine.vala
index 7688716..9b8e225 100644
--- a/gnomine/src/gnomine.vala
+++ b/gnomine/src/gnomine.vala
@@ -768,6 +768,8 @@ public class GnoMine : Gtk.Application
public static int main (string[] args)
{
+ GnomeGamesSupport.scores_startup ();
+
var context = new OptionContext ("");
context.set_translation_domain (GETTEXT_PACKAGE);
context.add_group (Gtk.get_option_group (true));
diff --git a/gnotravex/src/gnotravex.vala b/gnotravex/src/gnotravex.vala
index 042b184..2f30044 100644
--- a/gnotravex/src/gnotravex.vala
+++ b/gnotravex/src/gnotravex.vala
@@ -330,6 +330,7 @@ public class Gnotravex : Gtk3.Application
public static int main (string[] args)
{
+ GnomeGamesSupport.scores_startup ();
var app = new Gnotravex ();
return app.run (args);
}
diff --git a/gnotski/src/gnotski.c b/gnotski/src/gnotski.c
index c930866..5e1af38 100644
--- a/gnotski/src/gnotski.c
+++ b/gnotski/src/gnotski.c
@@ -459,6 +459,8 @@ main (int argc, char **argv)
gboolean retval;
GError *error = NULL;
+ games_scores_startup ();
+
context = g_option_context_new (NULL);
g_option_context_set_translation_domain (context, GETTEXT_PACKAGE);
g_option_context_add_group (context, gtk_get_option_group (TRUE));
diff --git a/gtali/src/gyahtzee.c b/gtali/src/gyahtzee.c
index 8efeeb3..6d8f7f3 100644
--- a/gtali/src/gyahtzee.c
+++ b/gtali/src/gyahtzee.c
@@ -878,6 +878,8 @@ main (int argc, char *argv[])
gboolean retval;
GError *error = NULL;
+ games_scores_startup ();
+
/* Reset all yahtzee variables before parsing args */
YahtzeeInit ();
diff --git a/libgames-support/GnomeGamesSupport-1.0.vapi b/libgames-support/GnomeGamesSupport-1.0.vapi
index 5f95ae1..4a9b154 100644
--- a/libgames-support/GnomeGamesSupport-1.0.vapi
+++ b/libgames-support/GnomeGamesSupport-1.0.vapi
@@ -96,6 +96,9 @@ namespace GnomeGamesSupport
public bool get_is_fullscreen ();
}
+ [CCode (cheader_filename = "games-scores.h")]
+ public void scores_startup ();
+
[CCode (cprefix = "GAMES_SCORES_STYLE_", cheader_filename = "games-score.h")]
public enum ScoreStyle
{
diff --git a/libgames-support/games-scores-backend.c b/libgames-support/games-scores-backend.c
index 7a4b49f..f574713 100644
--- a/libgames-support/games-scores-backend.c
+++ b/libgames-support/games-scores-backend.c
@@ -47,6 +47,14 @@ struct GamesScoresBackendPrivate {
G_DEFINE_TYPE (GamesScoresBackend, games_scores_backend, G_TYPE_OBJECT);
+void
+games_scores_backend_startup (void)
+{
+#ifdef ENABLE_SETGID
+ setgid_io_init ();
+#endif
+}
+
static void
games_scores_backend_finalize (GObject *object)
{
@@ -179,8 +187,6 @@ games_scores_backend_get_scores (GamesScoresBackend * self)
ssize_t length, target;
GList *t;
- setgid_io_init ();
-
/* Check for a change in the scores file and update if necessary. */
error = setgid_io_stat (self->priv->filename, &info);
diff --git a/libgames-support/games-scores-backend.h b/libgames-support/games-scores-backend.h
index 6b20141..131fb4b 100644
--- a/libgames-support/games-scores-backend.h
+++ b/libgames-support/games-scores-backend.h
@@ -53,6 +53,7 @@ typedef struct {
GObjectClass parent_class;
} GamesScoresBackendClass;
+void games_scores_backend_startup (void);
GType games_scores_backend_get_type (void);
GamesScoresBackend *games_scores_backend_new (GamesScoreStyle style,
char *base_name,
diff --git a/libgames-support/games-scores.c b/libgames-support/games-scores.c
index d385297..8b097e4 100644
--- a/libgames-support/games-scores.c
+++ b/libgames-support/games-scores.c
@@ -51,6 +51,12 @@ struct GamesScoresPrivate {
GamesScoresCategoryInternal dummycat;
};
+void
+games_scores_startup (void)
+{
+ games_scores_backend_startup ();
+}
+
static void
games_scores_category_free (GamesScoresCategoryInternal *cat)
{
diff --git a/libgames-support/games-scores.h b/libgames-support/games-scores.h
index 388d68d..02e31c6 100644
--- a/libgames-support/games-scores.h
+++ b/libgames-support/games-scores.h
@@ -62,6 +62,7 @@ typedef struct {
GObjectClass parent;
} GamesScoresClass;
+void games_scores_startup (void);
GType games_scores_get_type (void);
GamesScores *games_scores_new (const char *app_name,
const GamesScoresCategory *categories,
diff --git a/mahjongg/src/mahjongg.vala b/mahjongg/src/mahjongg.vala
index 5eadd13..73b5d16 100644
--- a/mahjongg/src/mahjongg.vala
+++ b/mahjongg/src/mahjongg.vala
@@ -771,6 +771,8 @@ public class Mahjongg : Gtk.Application
public static int main (string[] args)
{
+ GnomeGamesSupport.scores_startup ();
+
Gtk.init (ref args);
var context = new OptionContext ("");
diff --git a/quadrapassel/src/main.cpp b/quadrapassel/src/main.cpp
index 52dbcbc..a1a1591 100644
--- a/quadrapassel/src/main.cpp
+++ b/quadrapassel/src/main.cpp
@@ -32,9 +32,7 @@ main(int argc, char *argv[])
gboolean retval;
GError *error = NULL;
-#ifdef ENABLE_SETGID
- setgid_io_init ();
-#endif
+ games_scores_startup ();
int cmdlineLevel = 0;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]