Bug 1046991 - [abrt] mate-notification-daemon: g_return_if_fail_warning(): mate-notification-daemon killed by SIGTRAP
Summary: [abrt] mate-notification-daemon: g_return_if_fail_warning(): mate-notificatio...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: hamster-time-tracker
Version: 20
Hardware: x86_64
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Ankur Sinha (FranciscoD)
QA Contact: Fedora Extras Quality Assurance
URL: https://retrace.fedoraproject.org/faf...
Whiteboard: abrt_hash:599890361b17bba984aec4f3401...
Depends On: 1046716
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-12-28 00:33 UTC by Ankur Sinha (FranciscoD)
Modified: 2014-01-08 07:52 UTC (History)
7 users (show)

Fixed In Version: hamster-time-tracker-1.03.3-6.fc19
Doc Type: Bug Fix
Doc Text:
Clone Of: 1046716
Environment:
Last Closed: 2013-12-31 19:00:56 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
Patch for notification fixes. (1.30 KB, patch)
2013-12-28 00:59 UTC, Ankur Sinha (FranciscoD)
no flags Details | Diff
Updated patch (1.81 KB, patch)
2013-12-29 01:15 UTC, Ankur Sinha (FranciscoD)
no flags Details | Diff

Description Ankur Sinha (FranciscoD) 2013-12-28 00:33:26 UTC
+++ This bug was initially created as a clone of Bug #1046716 +++

Description of problem:
I was simply coding some stuff in vim when a notification about the crash popped up, was not doing anything
mate/desktop specific.

Version-Release number of selected component:
mate-notification-daemon-1.6.1-1.fc20

Additional info:
reporter:       libreport-2.1.10
backtrace_rating: 4
cmdline:        /usr/libexec/mate-notification-daemon
crash_function: g_return_if_fail_warning
executable:     /usr/libexec/mate-notification-daemon
kernel:         3.12.5-302.fc20.x86_64
runlevel:       N 5
type:           CCpp
uid:            1000

Truncated backtrace:
Thread no. 1 (9 frames)
 #2 g_return_if_fail_warning at gmessages.c:1034
 #3 g_value_get_uchar at gvaluetypes.c:732
 #4 set_notification_hints at nodoka-theme.c:1010
 #5 notify_daemon_notify_handler at daemon.c:1369
 #6 dbus_glib_marshal_notification_daemon_VOID__STRING_UINT_STRING_STRING_STRING_BOXED_BOXED_INT_POINTER at notificationdaemon-dbus-glue.h:102
 #7 invoke_object_method at dbus-gobject.c:1899
 #8 object_registration_message at dbus-gobject.c:2161
 #9 _dbus_object_tree_dispatch_and_unlock at dbus-object-tree.c:862
 #16 gtk_main at gtkmain.c:1257

Potential duplicate: bug 1008014

--- Additional comment from Sergey Bostandzhyan on 2013-12-26 13:02:45 EST ---



--- Additional comment from Sergey Bostandzhyan on 2013-12-26 13:02:47 EST ---



--- Additional comment from Sergey Bostandzhyan on 2013-12-26 13:02:51 EST ---



--- Additional comment from Sergey Bostandzhyan on 2013-12-26 13:02:53 EST ---



--- Additional comment from Sergey Bostandzhyan on 2013-12-26 13:02:55 EST ---



--- Additional comment from Sergey Bostandzhyan on 2013-12-26 13:02:57 EST ---



--- Additional comment from Sergey Bostandzhyan on 2013-12-26 13:02:59 EST ---



--- Additional comment from Sergey Bostandzhyan on 2013-12-26 13:03:01 EST ---



--- Additional comment from Sergey Bostandzhyan on 2013-12-26 13:03:03 EST ---



--- Additional comment from Sergey Bostandzhyan on 2013-12-26 13:03:05 EST ---



--- Additional comment from Sergey Bostandzhyan on 2013-12-26 18:50:18 EST ---

Continues to happen randomly, had it about 3-4 times today. Can't link it to any special activities, so unfortunately still no idea on how to reproduce.

--- Additional comment from Wolfgang Ulbrich on 2013-12-26 19:10:02 EST ---

#1  0x000000369f45063f in g_log (log_domain=log_domain@entry=0x36a0039aa4 "GLib-GObject", log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, format=format@entry=0x369f4bc89a "%s: assertion '%s' failed") at gmessages.c:1025
        args = {{gp_offset = 40, fp_offset = 48, overflow_arg_area = 0x7fff659eeb40, reg_save_area = 0x7fff659eea80}}
#2  0x000000369f450679 in g_return_if_fail_warning (log_domain=log_domain@entry=0x36a0039aa4 "GLib-GObject", pretty_function=pretty_function@entry=0x36a00432b0 <__PRETTY_FUNCTION__.12794> "g_value_get_uchar", expression=expression@entry=0x36a0042ce4 "G_VALUE_HOLDS_UCHAR (value)") at gmessages.c:1034
No locals.
#3  0x00000036a00389a7 in g_value_get_uchar (value=0x9f7960) at gvaluetypes.c:732
        __PRETTY_FUNCTION__ = "g_value_get_uchar"
#4  0x00007f6f27babcf7 in set_notification_hints (nw=0xa16050, hints=0x9f8400) at nodoka-theme.c:1010
        windata = 0xa01710
        value = <optimized out>
        __FUNCTION__ = "set_notification_hints"
#5  0x0000000000406ebe in notify_daemon_notify_handler (daemon=0x9ce8c0, app_name=<optimized out>, id=0, icon=0x9b5230 "hamster-time-tracker", summary=0x9f4c10 "Working on dSS", body=<optimized out>, actions=0x9f8f00, hints=0x9f8400, timeout=-1, context=0x9f7980) at daemon.c:1369
        priv = 0x9ce880
        nt = 0x0
        nw = 0xa16050
        data = <optimized out>
        use_pos_data = 0
        new_notification = 1
        x = 0
        y = 0
        window_xid = 0
        return_id = <optimized out>
        sender = <optimized out>
        sound_file = 0x0
        sound_enabled = <optimized out>
        i = <optimized out>
        pixbuf = <optimized out>
        gsettings = <optimized out>

Can you uninstall 'hamster-time-tracker' if you don't needed?
And report if this solve the issue.

--- Additional comment from Sergey Bostandzhyan on 2013-12-26 19:34:13 EST ---

I kind of do need it in general, but I will uninstall it tomorrow and will let you know if the crashes disappear. Thanks for the hint, I did not notice the hamster stuff in the logs!

--- Additional comment from  on 2013-12-27 14:16:52 EST ---

hamster-time-tracker is indeed the culprit in this case as it sends notifications not conforming to the notification specification.
See:
https://github.com/mate-desktop/mate-notification-daemon/pull/26
and
https://github.com/projecthamster/hamster/pull/127

Applying either patch fixes the problem.

--- Additional comment from Sergey Bostandzhyan on 2013-12-27 14:43:29 EST ---

Tested as promised: did not run hamster today - did not experience any mate notification daemon crashes.

--- Additional comment from Wolfgang Ulbrich on 2013-12-27 14:47:47 EST ---

(In reply to rh from comment #14)
> hamster-time-tracker is indeed the culprit in this case as it sends
> notifications not conforming to the notification specification.
> See:
> https://github.com/mate-desktop/mate-notification-daemon/pull/26
> and
> https://github.com/projecthamster/hamster/pull/127
> 
> Applying either patch fixes the problem.

Thanks, i will apply the patch for mate-notification-daemon and reasign the report to hamster if it is done.

(In reply to Sergey Bostandzhyan from comment #15)
> Tested as promised: did not run hamster today - did not experience any mate
> notification daemon crashes.

cool, great that it works.

--- Additional comment from Wolfgang Ulbrich on 2013-12-27 14:54:13 EST ---



--- Additional comment from Fedora Update System on 2013-12-27 18:34:07 EST ---

mate-notification-daemon-1.6.1-2.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/mate-notification-daemon-1.6.1-2.fc19

--- Additional comment from Fedora Update System on 2013-12-27 18:34:15 EST ---

mate-notification-daemon-1.6.1-2.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/mate-notification-daemon-1.6.1-2.fc18

--- Additional comment from Fedora Update System on 2013-12-27 18:34:23 EST ---

mate-notification-daemon-1.6.1-2.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/mate-notification-daemon-1.6.1-2.fc20

--- Additional comment from Ankur Sinha (FranciscoD) on 2013-12-27 19:32:21 EST ---

(In reply to rh from comment #14)
> hamster-time-tracker is indeed the culprit in this case as it sends
> notifications not conforming to the notification specification.
> See:
> https://github.com/mate-desktop/mate-notification-daemon/pull/26
> and
> https://github.com/projecthamster/hamster/pull/127
> 




Thank you for the bug report and patch. I'm assigning this back to mate-notification and cloning it to file a fresh one for hamster. It isn't a good idea to share bug reports between packages. Bodhi is supposed to close this when the mate notification hits stable which might be before the hamster update does the same etc.

Warm regards,
Ankur.

Comment 1 Ankur Sinha (FranciscoD) 2013-12-28 00:34:14 UTC
Working on this now.

Comment 2 Ankur Sinha (FranciscoD) 2013-12-28 00:57:36 UTC
I've patched the required files and done scratch builds here:

f20:
http://koji.fedoraproject.org/koji/taskinfo?taskID=6337796

rawhide:
http://koji.fedoraproject.org/koji/taskinfo?taskID=6337798


Can you please confirm if this fixes the issue for you? I don't run MATE and therefore can't test it myself. I don't want to push an update until it receives some sort of testing.

Thanks,
Warm regards,
Ankur

Comment 3 Ankur Sinha (FranciscoD) 2013-12-28 00:59:27 UTC
Created attachment 842529 [details]
Patch for notification fixes.

Changelog:

* Sat Dec 28 2013 Ankur Sinha <ankursinha AT fedoraproject DOT org> 1.03.3-5
- Add patch for notification fix
- https://bugzilla.redhat.com/show_bug.cgi?id=1046991
- https://github.com/projecthamster/hamster/pull/127
- https://github.com/projecthamster/hamster/pull/117

Comment 4 rh 2013-12-28 08:26:49 UTC
Just tried on f20:
Crashes mate-notification-daemon with hamster-time-tracker-1.03.3-4.fc20 from updates-testing
Does not crash mate-notification-daemon with hamster-time-tracker-1.03.3-5.fc20 from koji, but also does NOT display any notifications at all.

You included code that also enables the transient notifications feature besides fixing this bug, but did not include all relevant changes, see https://github.com/pkerling/hamster/commit/c9fbb4c691d5482c0d678b4a47711b5f32b45640
The self._last_notification initialization in the beginning is missing.
Revert the code concerning transient notifications, or include the missing line - imho more desirable as long as the author releases no new hamster version :( Then everything should work fine.

Comment 5 rh 2013-12-28 08:59:22 UTC
Okay, further regressions: Even with including the missing line, the notification is displayed only one time. After that, mate-notification-daemon exits, but the patched hamster version tries to reuse the dbus connection to the daemon (there was a typo in the code before the patch preventing this from happening) and the Notify call fails. The follow_name_owner_changes property should be set on the dbus proxy object to always call the current notification daemon even if it disappears or changes.
I've updated the pull request at https://github.com/projecthamster/hamster/pull/127

Comment 6 Ankur Sinha (FranciscoD) 2013-12-29 01:15:59 UTC
Created attachment 842883 [details]
Updated patch

Build with updated patch:

F20:
http://koji.fedoraproject.org/koji/taskinfo?taskID=6339544

rawhide:
http://koji.fedoraproject.org/koji/taskinfo?taskID=6339575

How do these fare? Thanks for testing these out. 

Warm regards,
Ankur

Comment 7 Wolfgang Ulbrich 2013-12-29 11:23:55 UTC
I don't use hamster normaly in mate, so i'm not shure if i use the right test case.
I set an notification in hamster for every 3 minutes and it works well with latest build.
The patched mate-notification-daemon doesn't crash anymore :)

Comment 8 Sergey Bostandzhyan 2013-12-29 13:15:18 UTC
Tested today in my usual scenario, no crashes anymore, notifications were displayed correctly. Thank you!

Comment 9 Fedora Update System 2013-12-29 17:44:47 UTC
hamster-time-tracker-1.03.3-5.fc20 has been submitted as an update for Fedora 20.
https://admin.fedoraproject.org/updates/FEDORA-2013-23482/hamster-time-tracker-1.03.3-5.fc20

Comment 10 Fedora Update System 2013-12-29 18:23:39 UTC
hamster-time-tracker-1.03.3-6.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/hamster-time-tracker-1.03.3-6.fc19

Comment 11 rh 2013-12-29 23:06:50 UTC
Here's another works for me.
Thank you!

Comment 12 Fedora Update System 2013-12-31 01:53:30 UTC
Package hamster-time-tracker-1.03.3-6.fc20:
* should fix your issue,
* was pushed to the Fedora 20 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing hamster-time-tracker-1.03.3-6.fc20'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2013-23482/hamster-time-tracker-1.03.3-6.fc20
then log in and leave karma (feedback).

Comment 13 Fedora Update System 2013-12-31 19:00:56 UTC
hamster-time-tracker-1.03.3-6.fc20 has been pushed to the Fedora 20 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 14 Fedora Update System 2014-01-08 07:52:00 UTC
hamster-time-tracker-1.03.3-6.fc19 has been pushed to the Fedora 19 stable repository.


Note You need to log in before you can comment on or make changes to this bug.