Update to 1.22.2

This commit is contained in:
Kalev Lember 2016-08-26 19:48:42 +02:00
parent 68acef003d
commit 9c8500b298
3 changed files with 6 additions and 111 deletions

View File

@ -5,15 +5,14 @@
%global with_tests 1
Name: cogl
Version: 1.22.0
Release: 3%{?dist}
Version: 1.22.2
Release: 1%{?dist}
Summary: A library for using 3D graphics hardware to draw pretty pictures
Group: Development/Libraries
License: LGPLv2+
URL: http://www.clutter-project.org/
Source0: http://download.gnome.org/sources/cogl/1.22/cogl-%{version}.tar.xz
Patch0: fix-black-login-screen.patch
BuildRequires: cairo-devel
BuildRequires: chrpath
@ -89,7 +88,6 @@ This package contains the installable tests for %{cogl}.
%prep
%setup -q
%patch0 -p1 -b .fix-black-login-screen
%build
CFLAGS="$RPM_OPT_FLAGS -fPIC"
@ -155,6 +153,9 @@ chrpath --delete $RPM_BUILD_ROOT%{_libdir}/libcogl-pango.so
%endif
%changelog
* Fri Aug 26 2016 Kalev Lember <klember@redhat.com> - 1.22.2-1
- Update to 1.22.2
* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 1.22.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild

View File

@ -1,106 +0,0 @@
From 8aced2158d389d3dcb75710f92db0cee97ad397f Mon Sep 17 00:00:00 2001
From: Ray Strode <rstrode@redhat.com>
Date: Wed, 21 Oct 2015 15:47:01 -0400
Subject: [PATCH] kms-winsys: don't wait for a flip when page flipping fails
If we get EACCES from drmPageFlip we're not going to get
a flip event and shouldn't wait for one.
This commit changes the EACCES path to silently ignore the
failed flip request and just clean up the fb.
---
cogl/winsys/cogl-winsys-egl-kms.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/cogl/winsys/cogl-winsys-egl-kms.c b/cogl/winsys/cogl-winsys-egl-kms.c
index 20c325c..b460907 100644
--- a/cogl/winsys/cogl-winsys-egl-kms.c
+++ b/cogl/winsys/cogl-winsys-egl-kms.c
@@ -563,81 +563,82 @@ setup_crtc_modes (CoglDisplay *display, int fb_id)
CoglRendererKMS *kms_renderer = egl_renderer->platform;
GList *l;
for (l = kms_display->crtcs; l; l = l->next)
{
CoglKmsCrtc *crtc = l->data;
int ret = drmModeSetCrtc (kms_renderer->fd,
crtc->id,
fb_id, crtc->x, crtc->y,
crtc->connectors, crtc->count,
crtc->count ? &crtc->mode : NULL);
if (ret)
g_warning ("Failed to set crtc mode %s: %m", crtc->mode.name);
}
}
static void
flip_all_crtcs (CoglDisplay *display, CoglFlipKMS *flip, int fb_id)
{
CoglDisplayEGL *egl_display = display->winsys;
CoglDisplayKMS *kms_display = egl_display->platform;
CoglRendererEGL *egl_renderer = display->renderer->winsys;
CoglRendererKMS *kms_renderer = egl_renderer->platform;
GList *l;
gboolean needs_flip = FALSE;
for (l = kms_display->crtcs; l; l = l->next)
{
CoglKmsCrtc *crtc = l->data;
- int ret;
+ int ret = 0;
if (crtc->count == 0 || crtc->ignore)
continue;
needs_flip = TRUE;
if (!kms_renderer->page_flips_not_supported)
{
ret = drmModePageFlip (kms_renderer->fd,
crtc->id, fb_id,
DRM_MODE_PAGE_FLIP_EVENT, flip);
if (ret != 0 && ret != -EACCES)
{
g_warning ("Failed to flip: %m");
kms_renderer->page_flips_not_supported = TRUE;
break;
}
}
- flip->pending++;
+ if (ret == 0)
+ flip->pending++;
}
if (kms_renderer->page_flips_not_supported && needs_flip)
flip->pending = 1;
}
static void
crtc_free (CoglKmsCrtc *crtc)
{
g_free (crtc->connectors);
g_slice_free (CoglKmsCrtc, crtc);
}
static CoglKmsCrtc *
crtc_copy (CoglKmsCrtc *from)
{
CoglKmsCrtc *new;
new = g_slice_new (CoglKmsCrtc);
*new = *from;
new->connectors = g_memdup (from->connectors, from->count * sizeof(uint32_t));
return new;
}
static CoglBool
_cogl_winsys_egl_display_setup (CoglDisplay *display,
CoglError **error)
{
--
2.5.0

View File

@ -1 +1 @@
ab684ec96848d79d22757fb3064820c8 cogl-1.22.0.tar.xz
d53b708ca7c4af03d7254e46945d6b33 cogl-1.22.2.tar.xz