minfoprovider: Fixed support for more than one query
[maevies] / src / mvs-tmdb-movie-service.c
index 36b910b..9c2bfa6 100644 (file)
@@ -37,7 +37,7 @@ enum {
 struct _MvsTMDBMovieServicePrivate {
         MvsTmdbMovie *movie;
         DBusGConnection *connection;
-        guint id;
+        gchar *suffix;
 };
 
 gboolean
@@ -71,8 +71,8 @@ setup_dbus (MvsTMDBMovieService *self)
                 g_error_free (error);
         }
 
-        object_path = g_strdup_printf (TMDB_MOVIE_SERVICE_OBJECT_PATH "/%d",
-                        self->priv->id);
+        object_path = g_strdup_printf (TMDB_MOVIE_SERVICE_OBJECT_PATH "/%s",
+                        self->priv->suffix);
 
         dbus_g_connection_register_g_object (self->priv->connection,
                                              object_path,
@@ -113,6 +113,7 @@ mvs_tmdb_movie_service_finalize (GObject *object)
         if (self->priv->connection) {
                 dbus_g_connection_unref (self->priv->connection);
         }
+        g_free (self->priv->suffix);
         g_object_unref (self->priv->movie);
         G_OBJECT_CLASS (mvs_tmdb_movie_service_parent_class)->finalize (object);
 }
@@ -143,14 +144,15 @@ mvs_tmdb_movie_service_init (MvsTMDBMovieService *self)
         self->priv = GET_PRIVATE (self);
         self->priv->movie = NULL;
         self->priv->connection = NULL;
+        self->priv->suffix = NULL;
 }
 
 MvsTMDBMovieService*
 mvs_tmdb_movie_service_new (DBusGConnection *connection,
-                MvsTmdbMovie *movie, guint id)
+                MvsTmdbMovie *movie, const gchar *suffix)
 {
         MvsTMDBMovieService *instance = g_object_new (MVS_TYPE_TMDB_MOVIE_SERVICE, NULL);
-        instance->priv->id = id;
+        instance->priv->suffix = g_strdup(suffix);
         g_object_set (instance, "connection", connection, NULL);
         instance->priv->movie = movie;
         return instance;