[Zeitgeist] [Merge] lp:~ev/activity-log-manager/add-whoopsie-back into lp:activity-log-manager
The proposal to merge lp:~ev/activity-log-manager/add-whoopsie-back into lp:activity-log-manager has been updated. Status: Needs review => Merged For more details, see: https://code.launchpad.net/~ev/activity-log-manager/add-whoopsie-back/+merge/169855 -- https://code.launchpad.net/~ev/activity-log-manager/add-whoopsie-back/+merge/169855 Your team Activity Log Manager is subscribed to branch lp:activity-log-manager. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
Re: [Zeitgeist] [Merge] lp:~ev/activity-log-manager/add-whoopsie-back into lp:activity-log-manager
Review: Approve This fixes it. I guess it was solved by - extern void* whoopsie_daisy_preferences_new (void); + extern GtkWidget* whoopsie_daisy_preferences_new (void); I will still check it on another developer installation before merging -- https://code.launchpad.net/~ev/activity-log-manager/add-whoopsie-back/+merge/169855 Your team Activity Log Manager is subscribed to branch lp:activity-log-manager. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
Re: [Zeitgeist] [Merge] lp:~ev/activity-log-manager/add-whoopsie-back into lp:activity-log-manager
So whoopsie_daisy_preferences_new () is returning an invalid type from the looks of it. Can you please build from my branch with the latest commits (r53) and try again? It should output something like "GType: 258458288" but will probably give you something bogus. Bonus points if you can use gdb to dig at what's going on in whoopsie_daisy_preferences_new (). As far as I can see we're constructing the type properly, so I'm perplexed as to what's going on here. -- https://code.launchpad.net/~ev/activity-log-manager/add-whoopsie-back/+merge/169855 Your team Activity Log Manager is subscribed to branch lp:activity-log-manager. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
Re: [Zeitgeist] [Merge] lp:~ev/activity-log-manager/add-whoopsie-back into lp:activity-log-manager
Used the debdiff and built the packages locally and installed it. Sadly, crashes again with exactly the same backtrace -- https://code.launchpad.net/~ev/activity-log-manager/add-whoopsie-back/+merge/169855 Your team Activity Log Manager is subscribed to branch lp:activity-log-manager. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
Re: [Zeitgeist] [Merge] lp:~ev/activity-log-manager/add-whoopsie-back into lp:activity-log-manager
Hello Evan, I am still getting crashes on another system, with backtrace Program received signal SIGSEGV, Segmentation fault. g_type_check_instance_cast (type_instance=0xe8006e00, iface_type=iface_type@entry=93824994480816) at /build/buildd/glib2.0-2.36.0/./gobject/gtype.c:4027 4027/build/buildd/glib2.0-2.36.0/./gobject/gtype.c: No such file or directory. (gdb) bt #0 g_type_check_instance_cast (type_instance=0xe8006e00, iface_type=iface_type@entry=93824994480816) at /build/buildd/glib2.0-2.36.0/./gobject/gtype.c:4027 #1 0x7fffe45f94b0 in alm_main_window_panel_init (self=0x55b3ab40) at alm-cc.c:63 #2 0x7648795f in g_type_create_instance (type=) at /build/buildd/glib2.0-2.36.0/./gobject/gtype.c:1917 #3 0x7646c718 in g_object_constructor (type=, n_construct_properties=1, construct_params=0x55b78110) at /build/buildd/glib2.0-2.36.0/./gobject/gobject.c:1855 #4 0x7646dce1 in g_object_newv (object_type=object_type@entry=93824997485168, n_parameters=n_parameters@entry=2, parameters=parameters@entry=0x55b7dcf0) at /build/buildd/glib2.0-2.36.0/./gobject/gobject.c:1719 #5 0x7646e4d0 in g_object_new_valist (object_type=object_type@entry=93824997485168, first_property_name=first_property_name@entry=0x5556019b "shell", var_args=var_args@entry=0x7fffca48) at /build/buildd/glib2.0-2.36.0/./gobject/gobject.c:1836 #6 0x7646e804 in g_object_new (object_type=93824997485168, first_property_name=0x5556019b "shell") at /build/buildd/glib2.0-2.36.0/./gobject/gobject.c:1551 #7 0xde8c in ?? () #8 0xbe47 in ?? () #9 0x76467620 in g_closure_invoke (closure=0x55931870, return_value=0x0, n_param_values=4, param_values=0x7fffce10, invocation_hint=0x7fffcdb0) at /build/buildd/glib2.0-2.36.0/./gobject/gclosure.c:777 #10 0x76478f00 in signal_emit_unlocked_R (node=node@entry=0x55931b20, detail=detail@entry=0, instance=instance@entry=0x55a0, emission_return=emission_return@entry=0x0, instance_and_params=instance_and_params@entry=0x7fffce10) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3584 #11 0x76480d11 in g_signal_emit_valist (instance=0x55a0, signal_id=, detail=0, var_args=var_args@entry=0x7fffd098) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3328 #12 0x76480f92 in g_signal_emit (instance=, signal_id=, detail=) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3384 #13 0xebbb in ?? () #14 0x7646a7a0 in g_cclosure_marshal_VOID__BOXEDv (closure=0x55931ff0, return_value=, instance=, args=, marshal_data=, n_params=, param_types=0x55768ea0) at /build/buildd/glib2.0-2.36.0/./gobject/gmarshal.c:1160 #15 0x764678e7 in _g_closure_invoke_va (closure=0x55931ff0, return_value=0x0, instance=0x55a0, args=0x7fffd518, n_params=1, param_types=0x55768ea0) at /build/buildd/glib2.0-2.36.0/./gobject/gclosure.c:840 #16 0x764802df in g_signal_emit_valist (instance=0x55a0, signal_id=, detail=0, var_args=var_args@entry=0x7fffd518) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3234 #17 0x76480f92 in g_signal_emit (instance=, signal_id=, detail=) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3384 #18 0xed94 in ?? () #19 0x776a849c in _gtk_marshal_BOOLEAN__BOXED (closure=0x5592d880, return_value=0x7fffd780, n_param_values=, param_values=0x7fffd830, invocation_hint=, marshal_data=) at /build/buildd/gtk+3.0-3.6.4/./gtk/gtkmarshalers.c:85 #20 0x76467620 in g_closure_invoke (closure=0x5592d880, return_value=0x7fffd780, n_param_values=2, param_values=0x7fffd830, invocation_hint=0x7fffd7d0) at /build/buildd/glib2.0-2.36.0/./gobject/gclosure.c:777 #21 0x76478f00 in signal_emit_unlocked_R (node=node@entry=0x55780120, detail=detail@entry=0, instance=instance@entry=0x55a0, emission_return=emission_return@entry=0x7fffd900, instance_and_params=instance_and_params@entry=0x7fffd830) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3584 #22 0x76480996 in g_signal_emit_valist (instance=0x55a0, signal_id=, detail=0, var_args=var_args@entry=0x7fffda88) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3338 #23 0x76480f92 in g_signal_emit (instance=instance@entry=0x55a0, signal_id=, detail=detail@entry=0) at /build/buildd/glib2.0-2.36.0/./gobject/gsignal.c:3384 #24 0x777d777e in gtk_widget_event_internal (widget=widget@entry=0x55a0, event=event@entry=0x55b38180) at /build/buildd/gtk+3.0-3.6.4/./gtk/gtkwidget.c:6303 #25 0x777d7b99 in gtk_widget_event (widget=widget@entry=0x55a0, event=event@entry=0x55b38180) at /build/buildd/gtk+3.0-3.6.4/./gtk/gtkwidget.c:5960 #26 0x776a644e in propagate_event_up (topmost=, even
Re: [Zeitgeist] [Merge] lp:~ev/activity-log-manager/add-whoopsie-back into lp:activity-log-manager
I can also confirm this works well with Jeremy's debdiff: https://bugs.launchpad.net/ubuntu/+source/activity-log-manager/+bug/1189253/+attachment/3699264/+files/update-to-0.9.5.debdiff -- https://code.launchpad.net/~ev/activity-log-manager/add-whoopsie-back/+merge/169855 Your team Activity Log Manager is subscribed to branch lp:activity-log-manager. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
Re: [Zeitgeist] [Merge] lp:~ev/activity-log-manager/add-whoopsie-back into lp:activity-log-manager
I've implemented the define for whoopsie in a slightly different way. It is working fine for me when I build it in a deb and install that way. Can you please build with debugging symbols and provide a backtrace? -- https://code.launchpad.net/~ev/activity-log-manager/add-whoopsie-back/+merge/169855 Your team Activity Log Manager is subscribed to branch lp:activity-log-manager. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
Re: [Zeitgeist] [Merge] lp:~ev/activity-log-manager/add-whoopsie-back into lp:activity-log-manager
Sorry, here is the branch where I pushed the minor changes with your merged branch lp:~manishsinha/activity-log-manager/ev -- https://code.launchpad.net/~ev/activity-log-manager/add-whoopsie-back/+merge/169855 Your team Activity Log Manager is subscribed to branch lp:activity-log-manager. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
Re: [Zeitgeist] [Merge] lp:~ev/activity-log-manager/add-whoopsie-back into lp:activity-log-manager
I tried it in a VM and I did not get any Segfault. Now this is weird. Evan, can you try it out with the above changes I mentioned -- https://code.launchpad.net/~ev/activity-log-manager/add-whoopsie-back/+merge/169855 Your team Activity Log Manager is subscribed to branch lp:activity-log-manager. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
Re: [Zeitgeist] [Merge] lp:~ev/activity-log-manager/add-whoopsie-back into lp:activity-log-manager
#1 0x7fffb99244b0 in alm_main_window_panel_init (self=0x557b9b40) at alm-cc.c:63 line 63 is GtkWidget *whoopsie = GTK_WIDGET (whoopsie_daisy_preferences_new ()); tells that the issue is with macro GTK_WIDGET since if the problem was with whoopsie_daisy_preferences_new () then the backtrace would have included the function GtkWidget* whoopsie_daisy_preferences_new (void) { return g_object_new (WHOOPSIE_DAISY_TYPE_PREFERENCES, NULL); } section from diagnostic-widget.c -- https://code.launchpad.net/~ev/activity-log-manager/add-whoopsie-back/+merge/169855 Your team Activity Log Manager is subscribed to branch lp:activity-log-manager. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
Re: [Zeitgeist] [Merge] lp:~ev/activity-log-manager/add-whoopsie-back into lp:activity-log-manager
I did some more research and found that in alm-cc.c file, inside function "alm_main_window_panel_init" the #ifdef section is not being called. I tried fixing that with changing #ifdef HAVE_WHOOPSIE to #ifdef WHOOPSIE and changing in src/Makefile.am if HAVE_WHOOPSIE libactivity_log_manager_la_CFLAGS += \ $(POLKIT_CFLAGS) \ -DGNOMECC_UI_DIR=\""$(gnomeccuidir)"\" endif to if HAVE_WHOOPSIE libactivity_log_manager_la_CFLAGS += \ $(POLKIT_CFLAGS) \ -DGNOMECC_UI_DIR=\""$(gnomeccuidir)"\" \ -DWHOOPSIE endif Now the section isnide #ifdef is built, but there is a segfault with bt Program received signal SIGSEGV, Segmentation fault. 0x76488c10 in g_type_check_instance_cast () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 (gdb) bt #0 0x76488c10 in g_type_check_instance_cast () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #1 0x7fffb99244b0 in alm_main_window_panel_init (self=0x557b9b40) at alm-cc.c:63 #2 0x7648795f in g_type_create_instance () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #3 0x7646c718 in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #4 0x7646dce1 in g_object_newv () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #5 0x7646e4d0 in g_object_new_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #6 0x7646e804 in g_object_new () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #7 0xde8c in ?? () #8 0xbe47 in ?? () #9 0x76467620 in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #10 0x76478f00 in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #11 0x76480d11 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #12 0x76480f92 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #13 0xebbb in ?? () #14 0x7646a7a0 in g_cclosure_marshal_VOID__BOXEDv () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #15 0x764678e7 in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #16 0x764802df in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #17 0x76480f92 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #18 0xed94 in ?? () #19 0x776a849c in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 #20 0x76467620 in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #21 0x76478f00 in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #22 0x76480996 in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #23 0x76480f92 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #24 0x777d777e in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 -- https://code.launchpad.net/~ev/activity-log-manager/add-whoopsie-back/+merge/169855 Your team Activity Log Manager is subscribed to branch lp:activity-log-manager. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
Re: [Zeitgeist] [Merge] lp:~ev/activity-log-manager/add-whoopsie-back into lp:activity-log-manager
Review: Needs Fixing It looks good, but still doesn't show up in System Settings. http://i.imgur.com/xCTk5bR.png -- https://code.launchpad.net/~ev/activity-log-manager/add-whoopsie-back/+merge/169855 Your team Activity Log Manager is subscribed to branch lp:activity-log-manager. ___ Mailing list: https://launchpad.net/~zeitgeist Post to : zeitgeist@lists.launchpad.net Unsubscribe : https://launchpad.net/~zeitgeist More help : https://help.launchpad.net/ListHelp
[Zeitgeist] [Merge] lp:~ev/activity-log-manager/add-whoopsie-back into lp:activity-log-manager
Evan Dandrea has proposed merging lp:~ev/activity-log-manager/add-whoopsie-back into lp:activity-log-manager. Requested reviews: Activity Log Manager (activity-log-manager) For more details, see: https://code.launchpad.net/~ev/activity-log-manager/add-whoopsie-back/+merge/169855 This resurrects code for the Diagnostics panel (whoopsie) that appears to have been accidentally deleted in the move from the lp:~activity-log-manager/activity-log-manager/vala branch. Namely, it brings back src/diagnostics-widget.c, which is not automatically generated code, unlike the rest of the C files that appear in that directory. I'm working on a debdiff, with these changes incorporated, against 0.9.4-0ubuntu6.1, which is the version in Ubuntu Saucy. -- https://code.launchpad.net/~ev/activity-log-manager/add-whoopsie-back/+merge/169855 Your team Activity Log Manager is requested to review the proposed merge of lp:~ev/activity-log-manager/add-whoopsie-back into lp:activity-log-manager. === modified file '.bzrignore' --- .bzrignore 2013-04-21 07:25:20 + +++ .bzrignore 2013-06-17 17:15:32 + @@ -28,7 +28,7 @@ src/activity-log-manager src/alm src/alm-switchboard -src/*.c +RE:src/(?!diagnostics-widget).*.c src/*.h src/*.la src/*.lo @@ -41,3 +41,6 @@ po/.intltool-merge-cache po/POTFILES po/stamp-it +src/diagnostics/whoopsie-preferences +src/diagnostics/com.ubuntu.whoopsiepreferences.policy +src/diagnostics/.libs === modified file 'src/Makefile.am' --- src/Makefile.am 2013-04-20 12:35:20 + +++ src/Makefile.am 2013-06-17 17:15:32 + @@ -79,6 +79,12 @@ $(SHARED_CFLAGS) \ $(CCPANEL_CFLAGS) +if HAVE_WHOOPSIE +libactivity_log_manager_la_CFLAGS += \ + $(POLKIT_CFLAGS) \ + -DGNOMECC_UI_DIR=\""$(gnomeccuidir)"\" +endif + activity_log_manager_SOURCES = \ $(SHARED_SOURCES) \ alm.vala \ @@ -88,6 +94,13 @@ alm-cc.c \ $(NULL) +if HAVE_WHOOPSIE +libactivity_log_manager_la_SOURCES += \ + diagnostics-widget.c \ + diagnostics/whoopsie-generated.c \ + $(NULL) +endif + activity_log_manager_LDFLAGS = \ -Wl,--export-dynamic @@ -99,6 +112,11 @@ $(SHARED_LIBS) \ $(CCPANEL_LIBS) +if HAVE_WHOOPSIE +libactivity_log_manager_la_LIBADD += \ + $(POLKIT_LIBS) +endif + GENERATED_C_FILES = $(activity_log_manager_SOURCES:.vala=.c) GENERATED_O_FILES = $(activity_log_manager_SOURCES:.vala=.o) === added file 'src/diagnostics-widget.c' --- src/diagnostics-widget.c 1970-01-01 00:00:00 + +++ src/diagnostics-widget.c 2013-06-17 17:15:32 + @@ -0,0 +1,249 @@ +#include +#include +#include +#include + +#include "diagnostics/whoopsie-generated.h" + +static WhoopsiePreferences* proxy = NULL; + +#define POL_PATH "com.ubuntu.whoopsiepreferences.change" +#define PRIVACY_URL "http://www.ubuntu.com/aboutus/privacypolicy?crashdb"; +#define SYSTEM_ERRORS_URL "https://errors.ubuntu.com/user"; + +#define WHOOPSIE_DAISY_TYPE_PREFERENCES whoopsie_daisy_preferences_get_type() +#define WHOOPSIE_DAISY_PREFERENCES(obj) \ +(G_TYPE_CHECK_INSTANCE_CAST ((obj), \ +WHOOPSIE_DAISY_TYPE_PREFERENCES, WhoopsieDaisyPreferences)) +#define WHOOPSIE_DAISY_PREFERENCES_PRIVATE(o) \ +(G_TYPE_INSTANCE_GET_PRIVATE ((o), WHOOPSIE_DAISY_TYPE_PREFERENCES, WhoopsieDaisyPreferencesPrivate)) + +GType whoopsie_daisy_preferences_get_type (void) G_GNUC_CONST; + +typedef struct _WhoopsieDaisyPreferences WhoopsieDaisyPreferences; +typedef struct _WhoopsieDaisyPreferencesClass WhoopsieDaisyPreferencesClass; +typedef struct _WhoopsieDaisyPreferencesPrivate WhoopsieDaisyPreferencesPrivate; + +struct _WhoopsieDaisyPreferencesPrivate +{ +GtkBuilder* builder; +GPermission* permission; +}; + +struct _WhoopsieDaisyPreferences +{ +GtkBox parent; +WhoopsieDaisyPreferencesPrivate* priv; +}; + +struct _WhoopsieDaisyPreferencesClass +{ +GtkBoxClass parent_class; +}; + +G_DEFINE_TYPE (WhoopsieDaisyPreferences, whoopsie_daisy_preferences, GTK_TYPE_BOX) + +static void +whoopsie_daisy_preferences_dispose (GObject* object) +{ +WhoopsieDaisyPreferencesPrivate* priv = WHOOPSIE_DAISY_PREFERENCES (object)->priv; + +if (priv->builder) { +g_object_unref (priv->builder); +priv->builder = NULL; +} +if (priv->permission) { +g_object_unref (priv->permission); +priv->permission = NULL; +} +} + +static void +whoopsie_daisy_preferences_class_init (WhoopsieDaisyPreferencesClass *klass) +{ +GObjectClass *object_class = G_OBJECT_CLASS (klass); +g_type_class_add_private (klass, sizeof (WhoopsieDaisyPreferencesPrivate)); +object_class->dispose = whoopsie_daisy_preferences_dispose; +} + +static void +on_privacy_policy_clicked (GtkWidget* button, gpointer user_data) +{ +system ("xdg-open " PRIVACY_URL); +} + +static void +on_show_previous_reports_clicked (GtkWidget* button, gpointer user_data) +{ +GError* error = NULL; +gchar* identifier = NULL; +gchar* command = NULL; +whoopsie_preferences_call_get_identifier_sync (proxy, &identifier, NULL, &error); + +if (!