| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
| |
|
|\
| |
| |
| |
| | |
cogl-gles2: Fix undefined references.
See merge request GNOME/cogl!35
|
|/ |
|
| |
|
| |
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
Free state after freeing its contents
Closes #14
See merge request GNOME/cogl!25
|
|/
|
|
|
|
|
| |
We are freeing the big state inside the CoglPipeline before freeing the
snippets list, even though the snippets are stored in the big state.
Fixes: #14
|
|\
| |
| |
| |
| | |
Simple ci
See merge request GNOME/cogl!26
|
| |
| |
| |
| | |
Needs further experiments, as it completely fails on the CI runner.
|
| | |
|
| |
| |
| |
| |
| | |
Injecting this in the CPPFLAGS gets propagated into the introspection
build, which is not ideal, and will generate warnings.
|
| | |
|
| | |
|
|/ |
|
|\
| |
| |
| |
| | |
cogl-xlib-renderer: Ensure we don't close the same X display twice
See merge request GNOME/cogl!23
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If we don't do this, it results in a double-free that segfaults
test_atlas_migration on ES2, when running an x86_64 build under Xvfb
(probably other architectures and displays, I haven't checked).
==671783==ERROR: AddressSanitizer: SEGV on unknown address ...
==671783==The signal is caused by a READ memory access.
#0 0x7fbc0b5a28e7 in xcb_disconnect (...)
#1 0x7fbc0bfc2be8 in XCloseDisplay (...)
#2 0x7fbc0d6b8910 in _cogl_xlib_renderer_disconnect .../cogl/cogl-xlib-renderer.c:573
#3 0x7fbc0d6eba71 in _cogl_winsys_renderer_disconnect .../cogl/winsys/cogl-winsys-egl-x11.c:257
#4 0x7fbc0d6ebd7e in _cogl_winsys_renderer_connect .../cogl/winsys/cogl-winsys-egl-x11.c:289
#5 0x7fbc0d55e970 in cogl_renderer_connect .../cogl/cogl-renderer.c:687
#6 0x7fbc0d557dff in cogl_context_new .../cogl/cogl-context.c:202
#7 0x7fbc0d6fcce5 in test_utils_init .../test-fixtures/test-utils.c:176
#8 0x557c76a1c7f5 in main .../tests/conform/test-conform-main.c:90
#9 0x7fbc0c527bba in __libc_start_main ../csu/libc-start.c:308
#10 0x557c76a1b209 in _start (...)
Signed-off-by: Simon McVittie <smcv@debian.org>
|
|\
| |
| |
| |
| | |
[1.22] Terminate tests with SIGALRM if they take more than 120 seconds
See merge request GNOME/cogl!11
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The Debian autobuilders run cogl's build-time tests to get an idea of
how much can be expected to work on each supported architecture.
We're currently ignoring test failures and running the tests for
information only, but if a test hangs, that will still cause the build
to fail (and tie up an autobuilder until a rather long timeout is
reached).
The fork of cogl in Mutter uses a 120 second timeout for tests in its
Meson build system, but other than that it's purely an arbitrary number.
dbus uses a similar alarm()-based watchdog, as do a couple of tests
in GLib.
Bug-Debian: https://bugs.debian.org/935592
Signed-off-by: Simon McVittie <smcv@debian.org>
|
|\ \
| | |
| | |
| | |
| | | |
[1.22] tests: Show the actual output from tests if VERBOSE is set
See merge request GNOME/cogl!14
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Writing tests' output to a log file makes them difficult to debug when
the test might be running on an autobuilder or CI system where only
stdout/stderr are recorded. This is particularly troublesome if a
failure is only reproducible on a particular autobuilder.
Recent Automake versions have the convention that detailed output from
failing tests is written to stdout/stderr, not just to log files, when
the VERBOSE environment variable is set; borrow that convention as a
trigger for producing detailed test output.
Signed-off-by: Simon McVittie <smcv@debian.org>
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
[1.22] Normally skip tests that are not expected to succeed
See merge request GNOME/cogl!15
|
| | |/
| |/|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If a test is not expected to succeed, then running it could be considered
to be a waste of resources, particularly if the failure might manifest
as an indefinite hang (see !11), or if the test is likely to dump core
and trigger "expensive" crash-reporting mechanisms like systemd-coredump,
corekeeper, abrt or apport.
Skip the tests that are expected to fail. They can still be requested via
an environment variable, which can be set after fixing a bug to check which
tests are now passing.
Signed-off-by: Simon McVittie <smcv@debian.org>
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
[1.22] tests: Force defined behaviour for 24-bit left-shifts
See merge request GNOME/cogl!22
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When r is 128 or more, running tests compiled with the undefined behaviour
sanitizer (ubsan) reports:
test-utils.c:312:45: runtime error: left shift of 128 by 24 places cannot be represented in type 'int'
which indeed it cannot. Force the type to be unsigned 32-bit so that we
get defined behaviour.
Similarly, in test-atlas-migration, the left-shifted guint8 is promoted
to int, which again does not have enough non-sign bits available to
left-shift a value >= 128 by 24 bits. Again, force the shift to be done
in unsigned 32-bit space.
Signed-off-by: Simon McVittie <smcv@debian.org>
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
autogen.sh: Stop checking for specific versions of Automake
See merge request GNOME/cogl!20
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | | |
Automake 1.11 was released in May 2009, so cogl has been compatible with
the latest version for at least that long.
Signed-off-by: Simon McVittie <smcv@debian.org>
|
|\ \ \
| | |/
| |/|
| | |
| | | |
[1.22] tests: Use tmp file to dump test results
See merge request GNOME/cogl!10
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When running installed tests, the working directory for Cogl tests is
in /usr/libexec/installed-tests, which isn't writable by normal users.
To avoid the adding stray hidden files to the current directory,
adapt the runner script to fallback to $(mktemp) - which is
available on all platform we care about - and avoid adding
hidden files everywhere.
(Originally commit 05ab8eebe8f37d437fb915a2dafe0c0bb68e3950 in mutter's
fork of cogl.)
|
|\ \
| | |
| | |
| | |
| | | |
[1.22] Reassure gcc 9 that variables are not uninitialized
See merge request GNOME/cogl!21
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
gcc 9 detects that if we exit this switch due to an unsupported
cull mode, the variables that it sets will remain uninitialized,
causing compilation with -Werror=uninitialized to fail.
Signed-off-by: Simon McVittie <smcv@debian.org>
|
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
gcc 9 detects that if we exit this switch due to an unsupported
pixel format, the variables that it sets will remain uninitialized,
causing compilation with -Werror=uninitialized to fail. Treat invalid
pixel formats the same as the ones that are already unsupported.
Signed-off-by: Simon McVittie <smcv@debian.org>
|
|\ \
| | |
| | |
| | |
| | | |
[1.22] Fix building against libglvnd-provided EGL headers
See merge request GNOME/cogl!19
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| | |
Add missing EGL/eglmesaext.h include. When building against mesa-provided
headers, this header is included indirectly via EGL/eglext.h.
Also fix typo COGL_EGL_INCLUDE -> COGL_EGL_INCLUDES
(cherry picked from commit 9c4764224aded552fb855b1c2b85b26d2b894adf)
|
|\ \
| |/
|/|
| |
| | |
[1.22] test-premult: Don't free texture data until CoglBitmap is freed
See merge request GNOME/cogl!12
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
According to the cogl_bitmap_new_for_data documentation, the data is not
copied, so the application must keep the buffer alive for the lifetime
of the CoglBitmap. Freeing it too early led to a use-after-free in the
cogl unit tests. With that fixed, the test passes, so remove the known
failure annotation.
==6223==ERROR: AddressSanitizer: heap-use-after-free on address 0x62100001a500 at pc 0x7f3e2d4e7f4e bp 0x7ffcd9c41f30 sp 0x7ffcd9c416e0
READ of size 4096 at 0x62100001a500 thread T0
#0 0x7f3e2d4e7f4d (/usr/lib/x86_64-linux-gnu/libasan.so.5+0x96f4d)
#1 0x7f3e260c7f6b in util_copy_box ../src/gallium/auxiliary/util/u_surface.c:131
#2 0x7f3e268c6c10 in u_default_texture_subdata ../src/gallium/auxiliary/util/u_transfer.c:67
#3 0x7f3e26486459 in st_TexSubImage ../src/mesa/state_tracker/st_cb_texture.c:1480
#4 0x7f3e26487029 in st_TexImage ../src/mesa/state_tracker/st_cb_texture.c:1709
#5 0x7f3e26487029 in st_TexImage ../src/mesa/state_tracker/st_cb_texture.c:1691
#6 0x7f3e2644bdba in teximage ../src/mesa/main/teximage.c:3105
#7 0x7f3e2644bdba in teximage_err ../src/mesa/main/teximage.c:3132
#8 0x7f3e2644d84f in _mesa_TexImage2D ../src/mesa/main/teximage.c:3170
#9 0x7f3e2cd1f7df in _cogl_texture_driver_upload_to_gl driver/gl/gl/cogl-texture-driver-gl.c:347
#10 0x7f3e2ccd441b in allocate_from_bitmap driver/gl/cogl-texture-2d-gl.c:255
#11 0x7f3e2ccd441b in _cogl_texture_2d_gl_allocate driver/gl/cogl-texture-2d-gl.c:462
#12 0x7f3e2ce3a6c0 in cogl_texture_allocate cogl/cogl-texture.c:1398
#13 0x7f3e2ce3e116 in _cogl_texture_pre_paint cogl/cogl-texture.c:359
#14 0x7f3e2cdee177 in _cogl_pipeline_layer_pre_paint cogl/cogl-pipeline-layer.c:864
#15 0x7f3e2cd574af in _cogl_rectangles_validate_layer_cb cogl/cogl-primitives.c:542
#16 0x7f3e2cdd742f in cogl_pipeline_foreach_layer cogl/cogl-pipeline.c:735
#17 0x7f3e2cd5c8b0 in _cogl_framebuffer_draw_multitextured_rectangles cogl/cogl-primitives.c:658
#18 0x7f3e2cd60152 in cogl_rectangle cogl/cogl-primitives.c:858
#19 0x5570a71ed6a0 in check_texture tests/conform/test-premult.c:103
#20 0x5570a71ed946 in test_premult tests/conform/test-premult.c:159
#21 0x5570a71df0d6 in main tests/conform/test-conform-main.c:58
#22 0x7f3e2bcd809a in __libc_start_main ../csu/libc-start.c:308
#23 0x5570a71e0869 in _start (/home/smcv/src/debian/cogl/tests/conform/.libs/test-conformance+0x33869)
0x62100001a500 is located 0 bytes inside of 4096-byte region [0x62100001a500,0x62100001b500)
freed by thread T0 here:
#0 0x7f3e2d5581d7 in __interceptor_free (/usr/lib/x86_64-linux-gnu/libasan.so.5+0x1071d7)
#1 0x5570a71ed58b in make_texture tests/conform/test-premult.c:69
previously allocated by thread T0 here:
#0 0x7f3e2d558588 in malloc (/usr/lib/x86_64-linux-gnu/libasan.so.5+0x107588)
#1 0x7f3e2d384500 in g_malloc ../../../glib/gmem.c:99
Signed-off-by: Simon McVittie <smcv@debian.org>
|
| | |
|
| | |
|
|\ \
| | |
| | |
| | |
| | | |
[1.22] Fix some pkg-config metadata
See merge request GNOME/cogl!13
|
| | |
| | |
| | |
| | |
| | |
| | | |
It's libcogl-pango.so, not libcoglpango.so.
Signed-off-by: Simon McVittie <smcv@debian.org>
|
| |/
| |
| |
| |
| |
| |
| |
| |
| | |
Adding automated tests for the Debian -dev packages, which link a trivial
program to the pkg-config module under test, revealed that these .pc
files were not self-contained. Add the necessary dependencies for linking
to succeed.
Signed-off-by: Simon McVittie <smcv@debian.org>
|
|/ |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Pango dropped the PANGO_ENABLE_BACKEND and PANGO_ENABLE_ENGINE symbols,
so we need to add our own defines to avoid breaking the build.
|
| |
|