Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 430140 Details for
Bug 578216
[gnome-overlay] gnome-3.20.0 crashes after short time running
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
patch from arch to gnome-shell which is reported to fix issue
patch-fballoc.patch (text/plain), 3.87 KB, created by
Harris Landgarten
on 2016-04-11 13:30:06 UTC
(
hide
)
Description:
patch from arch to gnome-shell which is reported to fix issue
Filename:
MIME Type:
Creator:
Harris Landgarten
Created:
2016-04-11 13:30:06 UTC
Size:
3.87 KB
patch
obsolete
>diff --git a/src/st/st-theme-node-drawing.c b/src/st/st-theme-node-drawing.c >index 1f28ed9..4a6a234 100644 >--- a/src/st/st-theme-node-drawing.c >+++ b/src/st/st-theme-node-drawing.c >@@ -2247,22 +2247,33 @@ st_theme_node_prerender_shadow (StThemeNodePaintState *state) > COGL_TEXTURE_NO_SLICING, > COGL_PIXEL_FORMAT_ANY); > if (buffer != COGL_INVALID_HANDLE) >- offscreen = cogl_offscreen_new_with_texture (buffer); >- >- if (offscreen != COGL_INVALID_HANDLE) > { >- ClutterActorBox box = { 0, 0, state->box_shadow_width, state->box_shadow_height}; >+ CoglError *error = NULL; >+ >+ offscreen = cogl_offscreen_new_with_texture (buffer); >+ >+ if (cogl_framebuffer_allocate (COGL_FRAMEBUFFER (offscreen), &error)) >+ { >+ ClutterActorBox box = { 0, 0, state->box_shadow_width, state->box_shadow_height}; >+ >+ cogl_framebuffer_orthographic (offscreen, 0, 0, >+ state->box_shadow_width, >+ state->box_shadow_height, 0, 1.0); >+ cogl_framebuffer_clear4f (offscreen, COGL_BUFFER_BIT_COLOR, 0, 0, 0, 0); > >- cogl_framebuffer_orthographic (offscreen, 0, 0, >- state->box_shadow_width, >- state->box_shadow_height, 0, 1.0); >- cogl_framebuffer_clear4f (offscreen, COGL_BUFFER_BIT_COLOR, 0, 0, 0, 0); >+ st_theme_node_paint_borders (state, offscreen, &box, 0xFF); > >- st_theme_node_paint_borders (state, offscreen, &box, 0xFF); >- cogl_handle_unref (offscreen); >+ cogl_handle_unref (offscreen); > >- state->box_shadow_pipeline = _st_create_shadow_pipeline (st_theme_node_get_box_shadow (node), >- buffer); >+ state->box_shadow_pipeline = _st_create_shadow_pipeline (st_theme_node_get_box_shadow (node), >+ buffer); >+ } >+ else >+ { >+ cogl_handle_unref (offscreen); >+ >+ cogl_error_free (error); >+ } > } > > if (buffer != COGL_INVALID_HANDLE) >diff --git a/src/st/st-theme-node-transition.c b/src/st/st-theme-node-transition.c >index 1eef17b..3fef16d 100644 >--- a/src/st/st-theme-node-transition.c >+++ b/src/st/st-theme-node-transition.c >@@ -242,6 +242,8 @@ setup_framebuffers (StThemeNodeTransition *transition, > StThemeNodeTransitionPrivate *priv = transition->priv; > guint width, height; > >+ CoglError *catch_error = NULL; >+ > /* template material to avoid unnecessary shader compilation */ > static CoglHandle material_template = COGL_INVALID_HANDLE; > >@@ -269,13 +271,25 @@ setup_framebuffers (StThemeNodeTransition *transition, > if (priv->old_offscreen) > cogl_handle_unref (priv->old_offscreen); > priv->old_offscreen = cogl_offscreen_new_with_texture (priv->old_texture); >+ if (!cogl_framebuffer_allocate (COGL_FRAMEBUFFER (priv->old_offscreen), &catch_error)) >+ { >+ cogl_object_unref (priv->old_offscreen); >+ cogl_error_free (catch_error); >+ priv->old_offscreen = COGL_INVALID_HANDLE; >+ g_return_val_if_fail (priv->old_offscreen != COGL_INVALID_HANDLE, FALSE); >+ } > > if (priv->new_offscreen) > cogl_handle_unref (priv->new_offscreen); > priv->new_offscreen = cogl_offscreen_new_with_texture (priv->new_texture); > >- g_return_val_if_fail (priv->old_offscreen != COGL_INVALID_HANDLE, FALSE); >- g_return_val_if_fail (priv->new_offscreen != COGL_INVALID_HANDLE, FALSE); >+ if (!cogl_framebuffer_allocate (COGL_FRAMEBUFFER (priv->new_offscreen), &catch_error)) >+ { >+ cogl_object_unref (priv->new_offscreen); >+ cogl_error_free (catch_error); >+ priv->old_offscreen = COGL_INVALID_HANDLE; >+ g_return_val_if_fail (priv->new_offscreen != COGL_INVALID_HANDLE, FALSE); >+ } > > if (priv->material == NULL) > {
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 578216
: 430140