fixed segmentation fault
authorVlad Vasiliev <vlad@toshiba2.oblgaz>
Wed, 31 Mar 2010 20:41:52 +0000 (23:41 +0300)
committerVlad Vasiliev <vlad@toshiba2.oblgaz>
Wed, 31 Mar 2010 20:41:52 +0000 (23:41 +0300)
applet/src/livewp-home-widget.c

index 7f5bd3c..7bf512c 100644 (file)
@@ -210,7 +210,7 @@ void change_sun(GtkWidget * actor, gpointer data)
 {
     double alt, azm;
     gint x, y, z, daytime;
-    if (actor){
+    if (actor && g_object_get_data(G_OBJECT(actor), "name")){
         fprintf(stderr, "111111111111 function %s\n", g_object_get_data(G_OBJECT(actor), "name"));
     }
     if (data){
@@ -311,14 +311,14 @@ change_actor(GtkWidget * actor)
     GtkWidget *image;
     GdkPixbuf *pixbuf;
 
-    void (*pfunc)(gpointer);
+    void (*pfunc)(gpointer, gpointer);
 
     name = g_object_get_data(G_OBJECT(actor), "name");
     fprintf(stderr, "change actor %s\n", name);
     if (name == "sun"){
         pfunc = g_object_get_data(G_OBJECT(actor), "func");
         if (pfunc)
-            (*pfunc)(g_strdup(name));
+            (*pfunc)(actor, g_strdup(name));
         daytime = get_daytime();
         if (daytime != TIME_NIGHT){
             hildon_animation_actor_set_show(actor, 1);
@@ -379,7 +379,7 @@ plugin_on_timeout (gpointer data)
   GSList * tmp;
   fprintf(stderr, "on timeout\n");
 
-  change_multiactor();
+//  change_multiactor();
 
   if (scene.daytime == daytime){
       /* Change dynamic actors */