After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 696157 - Memory leak when changing background image
Memory leak when changing background image
Status: RESOLVED FIXED
Product: gnome-shell
Classification: Core
Component: general
3.7.x
Other Linux
: Normal normal
: ---
Assigned To: gnome-shell-maint
gnome-shell-maint
Depends on:
Blocks:
 
 
Reported: 2013-03-19 19:43 UTC by Yosef Or Boczko
Modified: 2013-09-18 08:14 UTC
See Also:
GNOME target: 3.8
GNOME version: ---


Attachments
(xz compressed) valgrind output (449.23 KB, application/x-xz)
2013-03-24 13:04 UTC, drago01
  Details
background: fix task leak in load_file_async (2.09 KB, patch)
2013-03-25 04:53 UTC, Ray Strode [halfline]
committed Details | Review
background: fix pixbuf leak in load_file_finish (3.85 KB, patch)
2013-03-25 04:53 UTC, Ray Strode [halfline]
needs-work Details | Review
background: always add content to cache (4.34 KB, patch)
2013-03-25 05:04 UTC, Ray Strode [halfline]
accepted-commit_after_freeze Details | Review
background: When updating actor content, evict old content from cache (2.12 KB, patch)
2013-03-25 05:04 UTC, Ray Strode [halfline]
committed Details | Review
background: explicitly destroy content (3.72 KB, patch)
2013-03-25 05:04 UTC, Ray Strode [halfline]
reviewed Details | Review
background: Don't add the pixbuf as user_data (1.04 KB, patch)
2013-03-25 10:12 UTC, drago01
rejected Details | Review
background: fix pixbuf leak in load_file_finish (3.88 KB, patch)
2013-03-25 12:27 UTC, Ray Strode [halfline]
committed Details | Review
background: always add content to cache (4.37 KB, patch)
2013-03-25 12:28 UTC, Ray Strode [halfline]
committed Details | Review
background: drop saturation and blur effects (23.83 KB, patch)
2013-03-25 22:27 UTC, Ray Strode [halfline]
committed Details | Review
background: share snippets between pipelines (3.92 KB, patch)
2013-03-25 22:27 UTC, Ray Strode [halfline]
committed Details | Review
background: don't tank if background is destroyed before it gets a pipeline (6.90 KB, patch)
2013-03-25 22:27 UTC, Ray Strode [halfline]
committed Details | Review
background: properly disconnect background signals (5.70 KB, patch)
2013-03-25 22:30 UTC, Ray Strode [halfline]
committed Details | Review
workspaceThumbnail: always destroy bgManager when destroyed (3.01 KB, patch)
2013-03-25 22:30 UTC, Ray Strode [halfline]
committed Details | Review
background: don't load the same image more than once concurrently (10.28 KB, patch)
2013-03-25 22:30 UTC, Ray Strode [halfline]
committed Details | Review
background: fix animations with UINT_MAX duration (2.71 KB, patch)
2013-03-25 23:55 UTC, Ray Strode [halfline]
reviewed Details | Review
background: don't choke on huge slide show durations (2.73 KB, patch)
2013-03-26 00:12 UTC, Ray Strode [halfline]
committed Details | Review

Description Yosef Or Boczko 2013-03-19 19:43:28 UTC
Almost every time I change my background image, 
GNOME Shell's memory usage grows by about 50MB, 
and sometimes even by 200-400MB.

The memory leak occurs whether there are active 
extensions or not.

I am using git master.
OS: Arch Linux
Comment 1 Matthias Clasen 2013-03-19 23:52:52 UTC
sounds blocker-worthy
Comment 2 drago01 2013-03-23 09:58:28 UTC
It seems way worse then that.

Memory usage goes up by 800MB to 1.3GB here when changing the background.
Comment 3 heroandtn3 2013-03-23 13:01:09 UTC
Someone should fix this bug :(
Comment 4 drago01 2013-03-24 13:04:37 UTC
Created attachment 239674 [details]
(xz compressed) valgrind output
Comment 5 Matthias Clasen 2013-03-24 14:21:09 UTC
I consider this to be a definitive blocker - we can't ship with a huge memory leak like that.
Comment 6 Ray Strode [halfline] 2013-03-25 04:52:19 UTC
This is pretty easy to reproduce by running:

while true; do for f in /usr/share/backgrounds/gnome/*; do gsettings set org.gnome.desktop.background picture-uri file://$f; sleep 1; done; done

I have a couple of mutter patches which are important, but there's some changes needed on the gnome-shell side too, and i'm still working on that.
Comment 7 Ray Strode [halfline] 2013-03-25 04:53:41 UTC
Created attachment 239721 [details] [review]
background: fix task leak in load_file_async

g_task_run_in_thread takes its own reference to the
task passed in, so we can unref the initial reference.
Comment 8 Ray Strode [halfline] 2013-03-25 04:53:45 UTC
Created attachment 239722 [details] [review]
background: fix pixbuf leak in load_file_finish

g_task_propagate_pointer relinishes the GTask
of its reference to the propagated pointer, so we need to
unref it ourselves when we're done with it.
Comment 9 Ray Strode [halfline] 2013-03-25 04:56:04 UTC
i'll attach my in-progress gnome-shell work, too.
Comment 10 Ray Strode [halfline] 2013-03-25 05:04:36 UTC
Created attachment 239723 [details] [review]
background: always add content to cache

We currently only add the first instance of a background
to the cache.  This means if the actor associated with that
background is destroyed, the content will be evicted and
it will need to get reloaded, even if it's already loaded
on another actor.

This commit ensures every content gets added to the cache.
Comment 11 Ray Strode [halfline] 2013-03-25 05:04:39 UTC
Created attachment 239724 [details] [review]
background: When updating actor content, evict old content from cache

Normally backgrounds get evicted from the cache when their actor is
destroyed.  If the actor changes content without destroying itself,
though, we should evict the old content from the cache, too.
Comment 12 Ray Strode [halfline] 2013-03-25 05:04:44 UTC
Created attachment 239725 [details] [review]
background: explicitly destroy content

in-progress patch that needs more investigation.
Comment 13 drago01 2013-03-25 09:36:42 UTC
Review of attachment 239721 [details] [review]:

Looks good.
Comment 14 drago01 2013-03-25 09:37:51 UTC
Review of attachment 239724 [details] [review]:

Makes sense.
Comment 15 drago01 2013-03-25 09:42:12 UTC
Review of attachment 239725 [details] [review]:

This does not really "fix" anything while debugging I confirmed that dispose will get run after the GC kicks in.
Comment 16 drago01 2013-03-25 09:43:01 UTC
Review of attachment 239722 [details] [review]:

OK.
Comment 17 drago01 2013-03-25 09:46:44 UTC
Review of attachment 239723 [details] [review]:

Not directly related to the leak but looks good anyway.
Comment 18 Matthias Clasen 2013-03-25 09:58:55 UTC
Review of attachment 239723 [details] [review]:

::: js/ui/background.js
@@ +167,3 @@
                 content = null;
 
+            this._images.push(content);

Is it ok to push null here ?
Comment 19 drago01 2013-03-25 10:04:42 UTC
Review of attachment 239722 [details] [review]:

Hmm not "OK" ... causes g_object_unref: assertion `G_IS_OBJECT (object)' failed
Comment 20 drago01 2013-03-25 10:12:14 UTC
Created attachment 239741 [details] [review]
background: Don't add the pixbuf as user_data

I have no idea why we do this ... we never access it again.
Comment 21 Ray Strode [halfline] 2013-03-25 12:16:17 UTC
(In reply to comment #18)
> Review of attachment 239723 [details] [review]:
> 
> ::: js/ui/background.js
> @@ +167,3 @@
>                  content = null;
> 
> +            this._images.push(content);
> 
> Is it ok to push null here ?

No, not a good idea.
Comment 22 Ray Strode [halfline] 2013-03-25 12:24:22 UTC
Review of attachment 239741 [details] [review]:

I don't think this is quite right.

::: src/compositor/meta-background.c
@@ -1199,3 @@
-                             (CoglUserDataDestroyCallback)
-                             g_object_unref);
-

The pixbuf owns its pixel data, but we're using it. cogl. We don't want to copy the that data to the texture, since it can be sizable, so we need to keep the pixbuf alive for the duration of the texture object's lifetime.
Comment 23 Ray Strode [halfline] 2013-03-25 12:27:46 UTC
Created attachment 239756 [details] [review]
background: fix pixbuf leak in load_file_finish

g_task_propagate_pointer relinishes the GTask
of its reference to the propagated pointer, so we need to
unref it ourselves when we're done with it.
Comment 24 Ray Strode [halfline] 2013-03-25 12:28:40 UTC
Created attachment 239757 [details] [review]
background: always add content to cache

We currently only add the first instance of a background
to the cache.  This means if the actor associated with that
background is destroyed, the content will be evicted and
it will need to get reloaded, even if it's already loaded
on another actor.

This commit ensures every content gets added to the cache.
Comment 25 drago01 2013-03-25 13:13:27 UTC
Review of attachment 239756 [details] [review]:

Looks good.
Comment 26 drago01 2013-03-25 13:14:43 UTC
(In reply to comment #22)
> Review of attachment 239741 [details] [review]:
> 
> I don't think this is quite right.
> 
> ::: src/compositor/meta-background.c
> @@ -1199,3 @@
> -                             (CoglUserDataDestroyCallback)
> -                             g_object_unref);
> -
> 
> The pixbuf owns its pixel data, but we're using it. cogl. We don't want to copy
> the that data to the texture, since it can be sizable, so we need to keep the
> pixbuf alive for the duration of the texture object's lifetime.

OK I though that the texture just uploads the data to video memory and forgot about it ... doesn't seem to be the case.
Comment 27 Jasper St. Pierre (not reading bugmail) 2013-03-25 16:44:13 UTC
Review of attachment 239725 [details] [review]:

"after the GC kicks in"

which right now isn't very often because we took out the periodic GC because of the deadlock bug.
Comment 28 Ray Strode [halfline] 2013-03-25 22:27:31 UTC
Created attachment 239835 [details] [review]
background: drop saturation and blur effects

We don't use them anymore, so drop them.
Comment 29 Ray Strode [halfline] 2013-03-25 22:27:35 UTC
Created attachment 239836 [details] [review]
background: share snippets between pipelines

Cogl automatically caches pipelines with no eviction policy,
so we need to make sure to reuse snippets to prevent
identical pipelines from getting cached separately.
Comment 30 Ray Strode [halfline] 2013-03-25 22:27:38 UTC
Created attachment 239837 [details] [review]
background: don't tank if background is destroyed before it gets a pipeline

Right now we call unset_texture from MetaBackground's dispose method.

unset_texture assumes there's a pipeline available, but there may not
be if the object was just created.

This commit fixes that incorrect assumption.
Comment 31 Ray Strode [halfline] 2013-03-25 22:30:42 UTC
Created attachment 239838 [details] [review]
background: properly disconnect background signals

BackgroundManager connects to the changed signal in
the backgrounds it manages.

The signal ids for the changed signal connectionss are stored
as state on the background manager object.

If the background being managed changes while the manager
is still loading the old background, then the signal id
variable can get out of sync with the background object being
managed.

This commit ties the signal id to the background objects themselves,
so there is no opportunity for them to desynchronize.
Comment 32 Ray Strode [halfline] 2013-03-25 22:30:47 UTC
Created attachment 239839 [details] [review]
workspaceThumbnail: always destroy bgManager when destroyed

Right now we only destroy the bgManager object when the
workspaceThumbnail is explicitly destroy with its destroy()
method.

This commit makes sure bgManager gets destroyed when the
workspaceThumbnail actor is destroyed without calling
destroy().
Comment 33 Ray Strode [halfline] 2013-03-25 22:30:51 UTC
Created attachment 239840 [details] [review]
background: don't load the same image more than once concurrently

If a background gets requested from the cache while it's still
being loaded from an earlier call, then there will be two concurrent
loads of the same file.

That concurrency is mitigates the effectiveness of the cache and
also causes leaks.

This commit consolidates file loads so that concurrency doesn't
happen.
Comment 34 drago01 2013-03-25 22:32:40 UTC
Review of attachment 239835 [details] [review]:

Looks good.

::: src/meta/meta-background.h
@@ +62,3 @@
 {
   META_BACKGROUND_EFFECTS_NONE       = 0,
+  META_BACKGROUND_EFFECTS_VIGNETTE   = 1 << 1,

Don't really have reason to keep the value so just use 1 << 0 (or 1). In theory we could just turn this into a boolean now maintaining flexibility doesn't really hurt.
Comment 35 drago01 2013-03-25 22:33:47 UTC
Review of attachment 239836 [details] [review]:

Looks good.
Comment 36 Ray Strode [halfline] 2013-03-25 22:34:24 UTC
Review of attachment 239837 [details] [review]:

::: src/compositor/meta-background.c
@@ +466,3 @@
 
+  g_printerr ("freeing background\n");
+

I'll drop this

@@ +967,3 @@
+    g_printerr ("freeing pixbuf %p\n", pixbuf);
+    g_object_unref (pixbuf);
+}

and these

@@ +986,3 @@
       return;
     }
+  g_printerr ("creating pixbuf '%s' %p\n", task_data->filename, pixbuf);

and this

@@ +990,3 @@
   g_task_return_pointer (task, pixbuf, (GDestroyNotify) g_object_unref);
+
+  g_object_weak_ref (G_OBJECT (pixbuf), (GWeakNotify) destroy_notify, pixbuf);

and this.
Comment 37 drago01 2013-03-25 22:34:31 UTC
Review of attachment 239757 [details] [review]:

OK.
Comment 38 drago01 2013-03-25 22:35:38 UTC
Review of attachment 239837 [details] [review]:

OK (with the debug stuff removed).
Comment 39 drago01 2013-03-25 22:37:06 UTC
Review of attachment 239838 [details] [review]:

Makes sense.
Comment 40 drago01 2013-03-25 22:37:47 UTC
Review of attachment 239839 [details] [review]:

Looks good.
Comment 41 drago01 2013-03-25 22:49:21 UTC
Review of attachment 239840 [details] [review]:

Something is not right here ...
When I change the background in this one it changes in the window thumbnail but the desktop background stays the same.

Can be easily seen using your "while true" loop and going to the overview.
Comment 42 drago01 2013-03-25 22:50:29 UTC
You forgot to attach the interval exception fix btw.
Comment 43 Ray Strode [halfline] 2013-03-25 23:55:29 UTC
Created attachment 239844 [details] [review]
background: fix animations with UINT_MAX duration

gnome-desktop uses UINT_MAX as a sentinel value to mean,
"don't ever update slide".

This commit adds support for that.
Comment 44 Jasper St. Pierre (not reading bugmail) 2013-03-25 23:57:30 UTC
Review of attachment 239844 [details] [review]:

Considering gnome-desktop itself sets the duration to UINT_MAX, I'd kinda just prefer if we fixed GnomeBGSlideShow and respected the "fixed" part of get_slide.
Comment 45 Ray Strode [halfline] 2013-03-26 00:06:13 UTC
(In reply to comment #44)
> Review of attachment 239844 [details] [review]:
> 
> Considering gnome-desktop itself sets the duration to UINT_MAX, I'd kinda just
> prefer if we fixed GnomeBGSlideShow and respected the "fixed" part of
> get_slide.

perhaps, but regardless we shouldn't throw an exception if a file has a really big number in it.

I guess a better "right now" fix than attachment 239844 [details] [review] is to explicitly check for any overflow, not just duration >= UINT_MAX
Comment 46 Ray Strode [halfline] 2013-03-26 00:12:54 UTC
Created attachment 239847 [details] [review]
background: don't choke on huge slide show durations

if a slideshow file has a really large duration we'll currently
throw an exception.

This bug is aggravated by the fact that some versions of
gnome-desktop use UINT_MAX as a sentinel value to mean,
"don't ever update slide".

This commit treats durations that would overflow as infinitely
long.
Comment 47 Jasper St. Pierre (not reading bugmail) 2013-03-26 00:17:04 UTC
Review of attachment 239847 [details] [review]:

Hm, OK. I still want to fix this for 3.8.1 though.
Comment 48 Colin Walters 2013-03-26 00:17:25 UTC
So this is a question of risk/benefits/drawbacks.  The risk seems to me to be relatively high, unless we get more people to test this.  The benefit is not leaking. 

This seems like something that could go in 3.8.1 after it's had more testing.  I'd be curious what Florian thinks.  Tentatively I'd say 3.8.1 myself, but if others feel it's 3.8.0 material I wouldn't object.
Comment 49 Matthias Clasen 2013-03-26 00:20:28 UTC
> The benefit is not leaking. 

the leaks that were described in earlier comments are _massive_...
Comment 50 Ray Strode [halfline] 2013-03-26 01:16:49 UTC
(In reply to comment #41)
> Review of attachment 239840 [details] [review]:
> 
> Something is not right here ...
> When I change the background in this one it changes in the window thumbnail but
> the desktop background stays the same.
> 
> Can be easily seen using your "while true" loop and going to the overview.

odd, I can't reproduce. are there any tracebacks in the log or the like?
Comment 51 drago01 2013-03-26 07:44:55 UTC
(In reply to comment #50)
> (In reply to comment #41)
> > Review of attachment 239840 [details] [review] [details]:
> > 
> > Something is not right here ...
> > When I change the background in this one it changes in the window thumbnail but
> > the desktop background stays the same.
> > 
> > Can be easily seen using your "while true" loop and going to the overview.
> 
> odd, I can't reproduce. are there any tracebacks in the log or the like?

I can't either ... no idea what I did yesterday.
Comment 52 drago01 2013-03-26 07:46:34 UTC
Review of attachment 239840 [details] [review]:

OK looks good, I can no longer reproduce the bug I saw yesterday.
Comment 53 drago01 2013-03-26 07:47:59 UTC
(In reply to comment #48)
> So this is a question of risk/benefits/drawbacks.  The risk seems to me to be
> relatively high, unless we get more people to test this.  The benefit is not
> leaking. 

Well leaking such huge amount of memory can has very bad side effect if you have lets say only 2GB of memory (not *that* unlikely) changing the background a few times and you end up with disk trashing and a very slow system.
Comment 54 Florian Müllner 2013-03-26 12:18:46 UTC
(In reply to comment #48)
> So this is a question of risk/benefits/drawbacks.  The risk seems to me to be
> relatively high, unless we get more people to test this.  The benefit is not
> leaking. 
> 
> This seems like something that could go in 3.8.1 after it's had more testing. 
> I'd be curious what Florian thinks.

It's "user-visible regression" vs. "big memory leak" for me here. I'm updating the whole stack now to not blame the patch set by mistake, but it does look like this needs some more work (so it's either 3.8.1 or delaying 3.8.0)
Comment 55 Matthias Clasen 2013-03-26 12:30:54 UTC
 Lets give this patchset a closer look, then.
I'm willing to wait until tomorrow, at least.
Comment 56 Florian Müllner 2013-03-26 12:32:21 UTC
OK. If I can still reproduce after lunch, I'll bisect the patch set.
Comment 57 drago01 2013-03-26 13:07:19 UTC
(In reply to comment #56)
> OK. If I can still reproduce after lunch, I'll bisect the patch set.

Reproduce what?
Comment 58 Ray Strode [halfline] 2013-03-26 14:25:11 UTC
there shouldn't be any user-visible changes. what does it look like? Do you have both the mutter and the gnome-shell patches?
Comment 59 Florian Müllner 2013-03-26 14:40:36 UTC
(In reply to comment #58)
> there shouldn't be any user-visible changes. what does it look like?

Failing to set the background in the overview or at all. So far I've only reproduced it with animated backgrounds.


> Do you have both the mutter and the gnome-shell patches?

Yes, everything from this bug.
Comment 60 Florian Müllner 2013-03-26 14:48:32 UTC
bisect points to "background: explicitly destroy content"
Comment 61 Ray Strode [halfline] 2013-03-26 14:51:32 UTC
Comment on attachment 239725 [details] [review]
background: explicitly destroy content

oh sorry, I should have obsoleted this attachment. it was just an in-progress patch I threw up while working on the problem. I don't have it in my tree atm.
Comment 62 Ray Strode [halfline] 2013-03-26 14:53:47 UTC
To be clear, the mutter patches are:

      background: fix task leak in load_file_async
      background: fix pixbuf leak in load_file_finish
      background: drop saturation and blur effects
      background: share snippets between pipelines
      background: don't tank if background is destroyed before it gets a pipeline

and the gnome shell patches are:

      background: always add content to cache
      background: When updating actor content, evict old content from cache
      background: properly disconnect background signals
      workspaceThumbnail: always destroy bgManager when destroyed
      background: don't load the same image more than once concurrently
      background: don't choke on huge slide show durations
Comment 63 Colin Walters 2013-03-26 14:55:58 UTC
Can we branch gnome-shell and push these to master if they're believed to be correct?  It's a lot more convenient for people to test that way then; e.g. I can just wait for gnome-ostree to build them.
Comment 64 Florian Müllner 2013-03-26 14:59:52 UTC
(In reply to comment #61)
> (From update of attachment 239725 [details] [review])
> oh sorry, I should have obsoleted this attachment. it was just an in-progress
> patch I threw up while working on the problem. I don't have it in my tree atm.

Ah! In a quick test, the problem goes away with that patch removed.
Comment 65 Florian Müllner 2013-03-26 15:00:59 UTC
(In reply to comment #63)
> Can we branch gnome-shell and push these to master if they're believed to be
> correct?

Mmmh, I was actually planning to continue our tradition to not branch before 3.x.1 ...
Comment 66 Ray Strode [halfline] 2013-03-26 15:05:58 UTC
To make testing easier, i've pushed this stuff to branches:

https://git.gnome.org/browse/mutter/log/?h=wip/bg-fixes
https://git.gnome.org/browse/gnome-shell/log/?h=wip/bg-fixes
Comment 67 Colin Walters 2013-03-26 19:52:00 UTC
(In reply to comment #66)
> To make testing easier, i've pushed this stuff to branches:
> 
> https://git.gnome.org/browse/mutter/log/?h=wip/bg-fixes
> https://git.gnome.org/browse/gnome-shell/log/?h=wip/bg-fixes

Current gnome-ostree now has this.  Playing with changing around the backgrounds, it looks fine to me.  I think I'll keep the hot pink just for fun...
Comment 68 Ray Strode [halfline] 2013-03-26 20:57:24 UTC
okay i've talked to walters on irc and he's giving his 2/2 (and I talked to matthias earlier in person and he gave his 1/2). Florian is okay with me pushing now before he does the releases, too, so i'm going to push.
Comment 69 Ray Strode [halfline] 2013-03-26 20:58:40 UTC
Attachment 239721 [details] pushed as 5ed6e37 - background: fix task leak in load_file_async
Attachment 239756 [details] pushed as 13c7020 - background: fix pixbuf leak in load_file_finish
Attachment 239835 [details] pushed as 0e58906 - background: drop saturation and blur effects
Attachment 239836 [details] pushed as 47cf63b - background: share snippets between pipelines
Attachment 239837 [details] pushed as 577e5e2 - background: don't tank if background is destroyed before it gets a pipeline
Comment 70 Ray Strode [halfline] 2013-03-26 21:07:40 UTC
Attachment 239724 [details] pushed as b9da6d9 - background: When updating actor content, evict old content from cache
Attachment 239757 [details] pushed as 3be489c - background: always add content to cache
Attachment 239838 [details] pushed as f920fd8 - background: properly disconnect background signals
Attachment 239839 [details] pushed as 18d850d - workspaceThumbnail: always destroy bgManager when destroyed
Attachment 239840 [details] pushed as bed3bb4 - background: don't load the same image more than once concurrently
Attachment 239847 [details] pushed as 1dadcee - background: don't choke on huge slide show durations
Comment 71 Yosef Or Boczko 2013-03-26 21:39:39 UTC
Still have a memory leak. Much smaller, in gnome-shell and gnome-control-center.
Replace many backgrounds - and see.
Comment 72 Ray Strode [halfline] 2013-03-27 13:42:28 UTC
If you run alt-f2 type lg click Memory then click "Full GC" does it recover the memory?
Comment 73 Yosef Or Boczko 2013-03-27 13:52:18 UTC
(In reply to comment #72)
> If you run alt-f2 type lg click Memory then click "Full GC" does it recover the
> memory?

No, it's not.
Comment 74 Jasper St. Pierre (not reading bugmail) 2013-03-27 16:04:14 UTC
Review of attachment 239840 [details] [review]:

This broke vignettes in the overview, since we lost the { effects: params.effects } setter.
Comment 75 Ray Strode [halfline] 2013-04-09 12:47:41 UTC
we've done a few more leak fixes. See bug 697119 and bug 697395
Comment 76 Ray Strode [halfline] 2013-04-09 13:03:59 UTC
(the vignette bug mentioned in comment 74 was fixed in bug 696712)
Comment 77 yuryrodrigues28 2013-08-28 14:28:54 UTC
I'm having the same problem :(

Gnome Shell 3.8.3
Manjaro Linux