Merge lp:~larsu/notify-osd/fix-1189281 into lp:notify-osd

Proposed by Lars Karlitski
Status: Merged
Approved by: Sebastien Bacher
Approved revision: 466
Merged at revision: 466
Proposed branch: lp:~larsu/notify-osd/fix-1189281
Merge into: lp:notify-osd
Diff against target: 74 lines (+12/-6)
2 files modified
src/display.c (+6/-3)
src/stack.c (+6/-3)
To merge this branch: bzr merge lp:~larsu/notify-osd/fix-1189281
Reviewer Review Type Date Requested Status
PS Jenkins bot (community) continuous-integration Approve
Mirco Müller (community) Approve
Sebastien Bacher Pending
Review via email: mp+168550@code.launchpad.net

Commit message

Don't crash when an application is fullscreen when a notification arrives.

Description of the change

Don't crash when an application is fullscreen when a notification arrives.

To post a comment you must log in.
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

FAILED: Continuous integration, rev:466
No commit message was specified in the merge proposal. Click on the following link and set the commit message (if you want a jenkins rebuild you need to trigger it yourself):
https://code.launchpad.net/~larsu/notify-osd/fix-1189281/+merge/168550/+edit-commit-message

http://jenkins.qa.ubuntu.com/job/notify-osd-ci/2/
Executed test runs:
    FAILURE: http://jenkins.qa.ubuntu.com/job/generic-coverity-check/31/console
    SUCCESS: http://jenkins.qa.ubuntu.com/job/notify-osd-saucy-amd64-ci/1
    SUCCESS: http://jenkins.qa.ubuntu.com/job/notify-osd-saucy-armhf-ci/1
    SUCCESS: http://jenkins.qa.ubuntu.com/job/notify-osd-saucy-i386-ci/1
Coverity artifacts:
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/31/artifact/results/coverity/CID_10932.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/31/artifact/results/coverity/CID_10933.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/31/artifact/results/coverity/CID_10934.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/31/artifact/results/coverity/CID_10935.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/31/artifact/results/coverity/CID_10936.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/31/artifact/results/coverity/CID_10937.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/31/artifact/results/coverity/CID_10938.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/31/artifact/results/coverity/CID_10939.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/31/artifact/results/coverity/CID_10940.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/31/artifact/results/coverity/CID_10941.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/31/artifact/results/coverity/CID_13648.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/31/artifact/results/coverity/CID_13649.html

Click here to trigger a rebuild:
http://s-jenkins:8080/job/notify-osd-ci/2/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Mirco Müller (macslow) wrote :

Looks ok.

review: Approve
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

FAILED: Autolanding.
More details in the following jenkins job:
http://jenkins.qa.ubuntu.com/job/notify-osd-autolanding/6/
Executed test runs:
    FAILURE: http://jenkins.qa.ubuntu.com/job/generic-coverity-check/33/console
    SUCCESS: http://jenkins.qa.ubuntu.com/job/notify-osd-saucy-amd64-autolanding/1
    SUCCESS: http://jenkins.qa.ubuntu.com/job/notify-osd-saucy-armhf-autolanding/1
    SUCCESS: http://jenkins.qa.ubuntu.com/job/notify-osd-saucy-i386-autolanding/1
Coverity artifacts:
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/33/artifact/results/coverity/CID_10932.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/33/artifact/results/coverity/CID_10933.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/33/artifact/results/coverity/CID_10934.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/33/artifact/results/coverity/CID_10935.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/33/artifact/results/coverity/CID_10936.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/33/artifact/results/coverity/CID_10937.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/33/artifact/results/coverity/CID_10938.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/33/artifact/results/coverity/CID_10939.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/33/artifact/results/coverity/CID_10940.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/33/artifact/results/coverity/CID_10941.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/33/artifact/results/coverity/CID_13648.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/33/artifact/results/coverity/CID_13649.html

review: Needs Fixing (continuous-integration)
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :

FAILED: Continuous integration, rev:466
http://jenkins.qa.ubuntu.com/job/notify-osd-ci/3/
Executed test runs:
    FAILURE: http://jenkins.qa.ubuntu.com/job/generic-coverity-check/32/console
    SUCCESS: http://jenkins.qa.ubuntu.com/job/notify-osd-saucy-amd64-ci/2
    SUCCESS: http://jenkins.qa.ubuntu.com/job/notify-osd-saucy-armhf-ci/2
    SUCCESS: http://jenkins.qa.ubuntu.com/job/notify-osd-saucy-i386-ci/2
Coverity artifacts:
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/32/artifact/results/coverity/CID_10932.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/32/artifact/results/coverity/CID_10933.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/32/artifact/results/coverity/CID_10934.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/32/artifact/results/coverity/CID_10935.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/32/artifact/results/coverity/CID_10936.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/32/artifact/results/coverity/CID_10937.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/32/artifact/results/coverity/CID_10938.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/32/artifact/results/coverity/CID_10939.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/32/artifact/results/coverity/CID_10940.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/32/artifact/results/coverity/CID_10941.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/32/artifact/results/coverity/CID_13648.html
    http://jenkins.qa.ubuntu.com/job/generic-coverity-check/32/artifact/results/coverity/CID_13649.html

Click here to trigger a rebuild:
http://s-jenkins:8080/job/notify-osd-ci/3/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/display.c'
2--- src/display.c 2012-08-29 22:05:41 +0000
3+++ src/display.c 2013-06-10 21:39:30 +0000
4@@ -278,7 +278,8 @@
5 return next_to_display;
6 }
7
8-static void
9+/* Returns true if the next bubble is shown */
10+static gboolean
11 stack_layout (Stack* self)
12 {
13 Bubble* bubble = NULL;
14@@ -294,7 +295,7 @@
15 /* this actually happens when we're called for a synchronous
16 bubble or after a bubble timed out, but there where no other
17 notifications waiting in the queue */
18- return;
19+ return FALSE;
20
21 if (dnd_dont_disturb_user ()
22 && (! bubble_is_urgent (bubble)))
23@@ -310,7 +311,7 @@
24 /* loop, in case there are other bubbles to discard */
25 stack_layout (self);
26
27- return;
28+ return FALSE;
29 }
30
31 bubble_set_timeout (bubble,
32@@ -428,4 +429,6 @@
33 bubble_fade_in (bubble, 100);
34 else
35 bubble_fade_in (bubble, 200);
36+
37+ return TRUE;
38 }
39
40=== modified file 'src/stack.c'
41--- src/stack.c 2012-08-29 22:05:41 +0000
42+++ src/stack.c 2013-06-10 21:39:30 +0000
43@@ -575,6 +575,7 @@
44 GdkPixbuf* pixbuf = NULL;
45 gboolean new_bubble = FALSE;
46 gboolean turn_into_dialog;
47+ guint real_id;
48
49 // check max. allowed limit queue-size
50 if (g_list_length (self->list) > MAX_STACK_SIZE)
51@@ -660,6 +661,8 @@
52 }
53 }
54
55+ real_id = bubble_get_id (bubble);
56+
57 if (hints)
58 {
59 data = (GValue*) g_hash_table_lookup (hints, "x-canonical-private-synchronous");
60@@ -769,11 +772,11 @@
61
62 /* update the layout of the stack;
63 * this will also open the new bubble */
64- stack_layout (self);
65+ if (!stack_layout (self))
66+ bubble = NULL;
67 }
68
69- if (bubble)
70- dbus_g_method_return (context, bubble_get_id (bubble));
71+ dbus_g_method_return (context, real_id);
72
73 // FIXME: this is a temporary work-around, I do not like at all, until
74 // the heavy memory leakage of notify-osd is fully fixed...

Subscribers

People subscribed via source and target branches