Mir

Merge lp:~mir-team/mir/remove-eol-whitespace into lp:mir

Proposed by Daniel van Vugt
Status: Rejected
Rejected by: Daniel van Vugt
Proposed branch: lp:~mir-team/mir/remove-eol-whitespace
Merge into: lp:mir
Diff against target: 10229 lines (+1141/-1142)
348 files modified
COPYING.GPL (+2/-2)
HACKING.md (+2/-2)
benchmarks/frame-uniformity/CMakeLists.txt (+1/-1)
benchmarks/frame-uniformity/frame_uniformity_test.h (+4/-4)
benchmarks/frame-uniformity/main.cpp (+10/-10)
benchmarks/frame-uniformity/touch_measuring_client.cpp (+6/-6)
benchmarks/frame-uniformity/touch_measuring_client.h (+4/-4)
benchmarks/frame-uniformity/touch_producing_server.cpp (+3/-3)
benchmarks/frame-uniformity/touch_producing_server.h (+7/-7)
benchmarks/frame-uniformity/touch_samples.cpp (+1/-1)
benchmarks/frame-uniformity/touch_samples.h (+2/-2)
benchmarks/frame-uniformity/vsync_simulating_graphics_platform.cpp (+4/-4)
benchmarks/frame-uniformity/vsync_simulating_graphics_platform.h (+3/-3)
benchmarks/touch_event_latency.py (+1/-1)
cmake/ABICheck.cmake (+4/-4)
cmake/Debian.cmake (+2/-2)
cmake/FindBoost.cmake (+1/-1)
cmake/FindLcov.cmake (+1/-1)
cmake/FindLibHardware.cmake (+1/-1)
cmake/Findgcovr.cmake (+1/-1)
cmake/MirCommon.cmake (+1/-1)
cmake/ParseArguments.cmake (+8/-8)
cross-compile-chroot.sh (+6/-6)
debian/changelog (+60/-60)
doc/android_new_device_bringup.md (+15/-15)
doc/android_technical_details.md (+2/-2)
doc/building_source_for_arm.md (+6/-6)
doc/building_source_for_pc.md (+4/-4)
doc/demo_server_controls.md (+1/-1)
doc/dso_versioning_guide.md (+1/-1)
doc/extra.css (+1/-1)
doc/installing_prebuilt_on_android.md (+2/-2)
doc/mainpage.md (+11/-11)
doc/setup_kvm_for_mir.md (+3/-3)
doc/setup_vmware_for_mir.md (+2/-2)
doc/using_mir_on_android.md (+1/-1)
doc/using_mir_on_pc.md (+9/-9)
examples/animated_cursor_demo_client.c (+3/-3)
examples/client_helpers.cpp (+2/-2)
examples/client_helpers.h (+1/-1)
examples/client_touch_validator.cpp (+6/-6)
examples/cursors_demo_client.c (+2/-2)
examples/demo_client_display_config.c (+2/-2)
examples/eglapp.c (+4/-4)
examples/eglsquare.cpp (+4/-4)
examples/fingerpaint.c (+8/-8)
examples/input_shapes.cpp (+4/-4)
examples/multiwin.c (+4/-4)
examples/progressbar.c (+4/-4)
examples/server_example_adorning_compositor.cpp (+1/-1)
examples/server_example_adorning_compositor.h (+1/-1)
examples/server_example_canonical_window_manager.cpp (+1/-1)
examples/server_example_window_management_info.cpp (+2/-2)
examples/xcursor.c (+1/-1)
examples/xcursor_loader.cpp (+5/-5)
guides/cppguide.xml (+22/-22)
guides/styleguide.xsl (+6/-6)
include/client/mir/events/event_builders.h (+1/-1)
include/client/mir_toolkit/events/event.h (+2/-2)
include/client/mir_toolkit/events/input/input_event.h (+3/-3)
include/client/mir_toolkit/events/input/keyboard_event.h (+1/-1)
include/client/mir_toolkit/events/input/pointer_event.h (+2/-2)
include/client/mir_toolkit/events/input/touch_event.h (+2/-2)
include/client/mir_toolkit/events/input_configuration_event.h (+1/-1)
include/client/mir_toolkit/events/resize_event.h (+2/-2)
include/client/mir_toolkit/events/surface_placement.h (+1/-1)
include/client/mir_toolkit/mir_buffer_stream.h (+12/-12)
include/client/mir_toolkit/mir_cursor_configuration.h (+1/-1)
include/client/mir_toolkit/mir_screencast.h (+2/-2)
include/client/mir_toolkit/mir_surface.h (+4/-4)
include/client/mir_toolkit/version.h (+1/-1)
include/common/mir/fd.h (+1/-1)
include/common/mir/uncaught.h (+1/-1)
include/core/mir/geometry/rectangle.h (+1/-1)
include/platform/mir/graphics/cursor_image.h (+2/-2)
include/platform/mir/graphics/display.h (+1/-1)
include/platform/mir/graphics/display_buffer.h (+2/-2)
include/platform/mir/graphics/platform_ipc_operations.h (+4/-4)
include/renderers/sw/mir/renderer/sw/pixel_source.h (+1/-1)
include/server/mir/compositor/scene_element.h (+1/-1)
include/server/mir/frontend/buffer_stream.h (+3/-3)
include/server/mir/input/seat_report.h (+1/-1)
include/server/mir/input/touch_visualizer.h (+3/-3)
include/server/mir/scene/observer.h (+1/-1)
include/server/mir/scene/surface.h (+2/-2)
include/server/mir/server.h (+1/-1)
include/server/mir/shell/surface_specification.h (+1/-1)
include/test/mir/test/doubles/nested_mock_egl.h (+1/-1)
include/test/mir/test/doubles/null_display.h (+1/-1)
include/test/mir/test/event_factory.h (+1/-1)
include/test/mir/test/event_matchers.h (+8/-8)
include/test/mir_test_framework/declarative_placement_window_manage_policy.h (+1/-1)
playground/demo-shell/demo_compositor.cpp (+4/-4)
playground/demo-shell/demo_renderer.h (+1/-1)
playground/demo-shell/window_manager.cpp (+7/-7)
playground/demo-shell/window_manager.h (+2/-2)
playground/mir_demo_client_chain_jumping_buffers.c (+1/-1)
playground/mir_demo_client_prerendered_frames.c (+5/-5)
src/client/buffer.cpp (+1/-1)
src/client/buffer_factory.cpp (+1/-1)
src/client/buffer_stream.cpp (+3/-3)
src/client/buffer_vault.cpp (+4/-4)
src/client/client_buffer_stream.h (+1/-1)
src/client/connection_surface_map.cpp (+1/-1)
src/client/cursor_configuration.h (+2/-2)
src/client/event.cpp (+3/-3)
src/client/event_printer.cpp (+1/-1)
src/client/events/event_builders.cpp (+5/-5)
src/client/input/android/event_conversion_helpers.cpp (+2/-2)
src/client/input/input_event.cpp (+9/-9)
src/client/lttng/CMakeLists.txt (+1/-1)
src/client/lttng/input_receiver_report.cpp (+2/-2)
src/client/lttng/input_receiver_report.h (+1/-1)
src/client/mir_buffer_api.cpp (+3/-3)
src/client/mir_connection.cpp (+5/-5)
src/client/mir_connection.h (+0/-1)
src/client/mir_cursor_api.cpp (+3/-3)
src/client/mir_surface.cpp (+4/-4)
src/client/mir_surface.h (+1/-1)
src/client/mir_surface_api.cpp (+3/-3)
src/client/rpc/CMakeLists.txt (+1/-1)
src/client/rpc/mir_protobuf_rpc_channel.cpp (+4/-4)
src/client/surface_map.h (+1/-1)
src/client/symbols-debug.map (+1/-1)
src/client/symbols.map (+6/-6)
src/common/fd/fd.cpp (+1/-1)
src/common/fd/fd_socket_transmission.cpp (+4/-4)
src/common/sharedlibrary/CMakeLists.txt (+1/-1)
src/common/sharedlibrary/module_deleter.cpp (+3/-3)
src/common/symbols.map (+1/-1)
src/cookie/authority.cpp (+1/-1)
src/cookie/hmac_cookie.cpp (+1/-1)
src/include/client/mir_toolkit/mir_buffer.h (+3/-3)
src/include/client/mir_toolkit/mir_buffer_private.h (+1/-1)
src/include/client/mir_toolkit/mir_presentation_chain.h (+4/-4)
src/include/common/mir/events/event_private.h (+1/-1)
src/include/common/mir/protobuf/protocol_version.h (+1/-1)
src/include/server/mir/frontend/fd_sets.h (+1/-1)
src/include/server/mir/input/scene.h (+1/-1)
src/include/server/mir/scene/legacy_scene_change_notification.h (+3/-3)
src/platform/symbols.map (+4/-4)
src/platforms/CMakeLists.txt (+2/-2)
src/platforms/android/client/buffer.cpp (+7/-7)
src/platforms/android/client/buffer.h (+1/-1)
src/platforms/android/client/egl_native_surface_interpreter.cpp (+2/-2)
src/platforms/android/common/android_native_buffer.cpp (+1/-1)
src/platforms/android/common/egl_sync_fence.cpp (+1/-1)
src/platforms/android/common/native_window_report.cpp (+5/-5)
src/platforms/android/include/android/native_window.h (+1/-1)
src/platforms/android/include/command_stream_sync.h (+1/-1)
src/platforms/android/server/buffer.cpp (+2/-2)
src/platforms/android/server/device_quirks.h (+1/-1)
src/platforms/android/server/display.cpp (+4/-4)
src/platforms/android/server/display_device.h (+2/-2)
src/platforms/android/server/fb_device.cpp (+1/-1)
src/platforms/android/server/graphic_buffer_allocator.h (+1/-1)
src/platforms/android/server/hwc_device.cpp (+2/-2)
src/platforms/android/server/hwc_fallback_gl_renderer.cpp (+1/-1)
src/platforms/android/server/hwc_fb_device.cpp (+1/-1)
src/platforms/android/server/hwc_fb_device.h (+1/-1)
src/platforms/android/server/hwc_layerlist.cpp (+3/-3)
src/platforms/android/server/hwc_layers.cpp (+4/-4)
src/platforms/android/server/hwc_layers.h (+3/-3)
src/platforms/android/server/hwc_loggers.cpp (+5/-5)
src/platforms/android/server/hwc_wrapper.h (+1/-1)
src/platforms/android/server/real_hwc_wrapper.cpp (+1/-1)
src/platforms/android/server/resource_factory.cpp (+1/-1)
src/platforms/android/utils/test_android_hardware_sanity.cpp (+2/-2)
src/platforms/common/server/kms-utils/kms_connector.cpp (+1/-1)
src/platforms/eglstream-kms/client/client_platform.cpp (+1/-1)
src/platforms/evdev/CMakeLists.txt (+1/-1)
src/platforms/mesa/server/buffer_allocator.cpp (+2/-2)
src/platforms/mesa/server/kms/cursor.cpp (+5/-5)
src/platforms/mesa/server/kms/cursor.h (+1/-1)
src/platforms/mesa/server/kms/display_buffer.cpp (+1/-1)
src/platforms/mesa/server/kms/guest_platform.h (+1/-1)
src/platforms/mesa/server/x11/graphics/display.cpp (+1/-1)
src/platforms/mesa/server/x11/symbols.map.in (+2/-2)
src/protobuf/mir_protobuf.proto (+8/-8)
src/server/compositor/CMakeLists.txt (+1/-1)
src/server/compositor/buffer_map.cpp (+1/-1)
src/server/compositor/buffer_map.h (+1/-1)
src/server/compositor/multi_monitor_arbiter.cpp (+2/-2)
src/server/compositor/multi_monitor_arbiter.h (+1/-1)
src/server/compositor/occlusion.cpp (+1/-1)
src/server/compositor/stream.cpp (+7/-7)
src/server/compositor/stream.h (+1/-1)
src/server/display_server.cpp (+2/-2)
src/server/frontend/protobuf_message_processor.cpp (+1/-1)
src/server/frontend/session_mediator.cpp (+8/-8)
src/server/graphics/nested/cursor.h (+1/-1)
src/server/graphics/nested/host_connection.h (+1/-1)
src/server/graphics/nested/input_platform.cpp (+1/-1)
src/server/graphics/nested/ipc_operations.cpp (+1/-1)
src/server/graphics/nested/mir_client_host_connection.cpp (+2/-2)
src/server/graphics/nested/platform.cpp (+2/-2)
src/server/graphics/nested/platform.h (+4/-4)
src/server/input/cursor_controller.cpp (+2/-2)
src/server/input/cursor_controller.h (+1/-1)
src/server/input/default_configuration.cpp (+1/-1)
src/server/input/event_filter_chain_dispatcher.cpp (+2/-2)
src/server/input/event_filter_chain_dispatcher.h (+2/-2)
src/server/input/surface_input_dispatcher.cpp (+7/-7)
src/server/input/surface_input_dispatcher.h (+2/-2)
src/server/input/touchspot_controller.cpp (+13/-13)
src/server/input/touchspot_controller.h (+3/-3)
src/server/input/touchspot_image.c (+1/-1)
src/server/report/logging/display_configuration_report.cpp (+5/-5)
src/server/report/lttng/CMakeLists.txt (+1/-1)
src/server/scene/application_session.cpp (+4/-4)
src/server/scene/basic_surface.cpp (+11/-11)
src/server/scene/basic_surface.h (+2/-2)
src/server/scene/legacy_scene_change_notification.cpp (+2/-2)
src/server/scene/session_manager.cpp (+1/-1)
src/server/scene/session_manager.h (+1/-1)
src/server/scene/surface_stack.cpp (+4/-4)
src/server/scene/surface_stack.h (+4/-4)
src/server/shell/abstract_shell.cpp (+1/-1)
src/server/shell/canonical_window_manager.cpp (+1/-1)
src/server/shell/graphics_display_layout.cpp (+1/-1)
src/server/shell/system_compositor_window_manager.cpp (+1/-1)
src/server/symbols.map (+1/-1)
src/server/version.h.in (+1/-1)
src/utils/vanity.c (+1/-1)
tests/acceptance-tests/test_client_header_version.cpp (+5/-5)
tests/acceptance-tests/test_client_input.cpp (+5/-5)
tests/acceptance-tests/test_client_library.cpp (+1/-1)
tests/acceptance-tests/test_client_scaling.cpp (+1/-1)
tests/acceptance-tests/test_client_surface_events.cpp (+2/-2)
tests/acceptance-tests/test_client_surfaces.cpp (+3/-3)
tests/acceptance-tests/test_latency.cpp (+1/-1)
tests/acceptance-tests/test_nested_input.cpp (+4/-4)
tests/acceptance-tests/test_render_override.cpp (+2/-2)
tests/acceptance-tests/test_surface_modifications.cpp (+1/-1)
tests/acceptance-tests/test_surface_raise.cpp (+4/-4)
tests/acceptance-tests/test_surfaces_with_output_id.cpp (+1/-1)
tests/acceptance-tests/test_unresponsive_client.cpp (+3/-3)
tests/acceptance-tests/throwback/test_client_cursor_api.cpp (+5/-5)
tests/acceptance-tests/throwback/test_presentation_chain.cpp (+3/-3)
tests/include/mir/test/doubles/fd_matcher.h (+1/-1)
tests/include/mir/test/doubles/mock_client_buffer_stream.h (+1/-1)
tests/include/mir/test/doubles/mock_frontend_surface.h (+2/-2)
tests/include/mir/test/doubles/mock_hwc_report.h (+1/-1)
tests/include/mir/test/doubles/mock_mir_buffer.h (+1/-1)
tests/include/mir/test/doubles/mock_protobuf_server.h (+1/-1)
tests/include/mir/test/doubles/mock_scene_session.h (+1/-1)
tests/include/mir/test/doubles/stub_display_builder.h (+3/-3)
tests/include/mir/test/doubles/stub_driver_interpreter.h (+1/-1)
tests/include/mir/test/doubles/stub_gbm_native_buffer.h (+1/-1)
tests/include/mir/test/doubles/stub_host_connection.h (+2/-2)
tests/include/mir/test/doubles/stub_input_scene.h (+1/-1)
tests/include/mir/test/doubles/stub_input_surface.h (+1/-1)
tests/include/mir/test/doubles/stub_renderable.h (+1/-1)
tests/include/mir/test/doubles/stub_session.h (+1/-1)
tests/include/mir_test_framework/command_line_server_configuration.h (+1/-1)
tests/include/mir_test_framework/stub_platform_native_buffer.h (+1/-1)
tests/integration-tests/compositor/test_swapping_swappers.cpp (+5/-5)
tests/integration-tests/graphics/mesa/CMakeLists.txt (+2/-2)
tests/integration-tests/test_buffer_scheduling.cpp (+20/-20)
tests/integration-tests/test_submit_buffer.cpp (+8/-8)
tests/integration-tests/test_surface_first_frame_sync.cpp (+2/-2)
tests/integration-tests/test_surface_stack_with_compositor.cpp (+3/-3)
tests/integration-tests/test_test_framework.cpp (+2/-2)
tests/integration-tests/test_touchspot_visualization.cpp (+6/-6)
tests/mir_test/spin_wait.cpp (+2/-2)
tests/mir_test_doubles/mock_egl.cpp (+1/-1)
tests/mir_test_doubles/mock_timer.cpp (+1/-1)
tests/mir_test_framework/CMakeLists.txt (+2/-2)
tests/mir_test_framework/any_surface.cpp (+2/-2)
tests/mir_test_framework/declarative_placement_window_manage_policy.cpp (+2/-2)
tests/mir_test_framework/headless_display_buffer_compositor_factory.cpp (+1/-1)
tests/mir_test_framework/interprocess_client_server_test.cpp (+1/-1)
tests/mir_test_framework/placement_applying_shell.cpp (+3/-3)
tests/mir_test_framework/stub_client_platform_factory.cpp (+1/-1)
tests/mir_test_framework/symbols-client.map (+1/-1)
tests/mir_test_framework/udev_environment.cpp (+1/-1)
tests/performance-tests/test_glmark2-es2-mir.cpp (+1/-1)
tests/test-clients/impolite-shutdown/scroll.cpp (+2/-2)
tests/test-clients/mir-stress/CMakeLists.txt (+1/-1)
tests/unit-tests/client/test_aging_buffer.cpp (+1/-1)
tests/unit-tests/client/test_buffer_vault.cpp (+4/-4)
tests/unit-tests/client/test_client_buffer_stream.cpp (+8/-8)
tests/unit-tests/client/test_client_mir_surface.cpp (+10/-10)
tests/unit-tests/client/test_connection_resource_map.cpp (+1/-1)
tests/unit-tests/client/test_mir_buffer.cpp (+4/-4)
tests/unit-tests/client/test_mir_connection.cpp (+3/-3)
tests/unit-tests/client/test_presentation_chain.cpp (+1/-1)
tests/unit-tests/client/test_protobuf_rpc_channel.cpp (+3/-3)
tests/unit-tests/client/test_screencast_stream.cpp (+4/-4)
tests/unit-tests/compositor/test_dropping_schedule.cpp (+2/-2)
tests/unit-tests/compositor/test_multi_monitor_arbiter.cpp (+8/-8)
tests/unit-tests/compositor/test_multi_threaded_compositor.cpp (+3/-3)
tests/unit-tests/compositor/test_occlusion.cpp (+2/-2)
tests/unit-tests/compositor/test_stream.cpp (+3/-3)
tests/unit-tests/dispatch/test_multiplexing_dispatchable.cpp (+1/-1)
tests/unit-tests/frontend/test_event_sender.cpp (+1/-1)
tests/unit-tests/frontend/test_resource_cache.cpp (+2/-2)
tests/unit-tests/frontend/test_session_mediator.cpp (+4/-4)
tests/unit-tests/graphics/test_software_cursor.cpp (+1/-1)
tests/unit-tests/input/android/test_android_input_lexicon.cpp (+1/-1)
tests/unit-tests/input/test_event_builders.cpp (+2/-2)
tests/unit-tests/input/test_event_filter_chain_dispatcher.cpp (+2/-2)
tests/unit-tests/input/test_input_event.cpp (+12/-12)
tests/unit-tests/input/test_seat_input_device_tracker.cpp (+3/-3)
tests/unit-tests/input/test_surface_input_dispatcher.cpp (+19/-19)
tests/unit-tests/input/test_touchspot_controller.cpp (+10/-10)
tests/unit-tests/input/test_validator.cpp (+4/-4)
tests/unit-tests/platforms/android/client/test_buffer.cpp (+2/-2)
tests/unit-tests/platforms/android/client/test_egl_native_surface_interpreter.cpp (+4/-4)
tests/unit-tests/platforms/android/server/hwc_struct_helpers.h (+3/-3)
tests/unit-tests/platforms/android/server/test_anw_logger.cpp (+1/-1)
tests/unit-tests/platforms/android/server/test_buffer_tex_bind.cpp (+2/-2)
tests/unit-tests/platforms/android/server/test_display.cpp (+10/-10)
tests/unit-tests/platforms/android/server/test_display_buffer.cpp (+9/-9)
tests/unit-tests/platforms/android/server/test_display_group.cpp (+1/-1)
tests/unit-tests/platforms/android/server/test_display_hotplug.cpp (+2/-2)
tests/unit-tests/platforms/android/server/test_egl_sync_fence.cpp (+7/-7)
tests/unit-tests/platforms/android/server/test_fb_device.cpp (+1/-1)
tests/unit-tests/platforms/android/server/test_hwc_configuration.cpp (+1/-1)
tests/unit-tests/platforms/android/server/test_hwc_device.cpp (+7/-7)
tests/unit-tests/platforms/android/server/test_hwc_fallback_gl_renderer.cpp (+8/-8)
tests/unit-tests/platforms/android/server/test_hwc_layerlist.cpp (+1/-1)
tests/unit-tests/platforms/android/server/test_hwc_logger.cpp (+37/-37)
tests/unit-tests/platforms/android/server/test_hwc_wrapper.cpp (+6/-6)
tests/unit-tests/platforms/android/server/test_ipc_operations.cpp (+1/-1)
tests/unit-tests/platforms/android/server/test_output_builder.cpp (+5/-5)
tests/unit-tests/platforms/android/server/test_platform.cpp (+1/-1)
tests/unit-tests/platforms/android/server/test_server_interpreter.cpp (+1/-1)
tests/unit-tests/platforms/mesa/client/test_client_buffer.cpp (+3/-3)
tests/unit-tests/platforms/mesa/client/test_native_surface.cpp (+1/-1)
tests/unit-tests/platforms/mesa/kms/test_buffer_allocator.cpp (+5/-5)
tests/unit-tests/platforms/mesa/kms/test_cursor.cpp (+6/-6)
tests/unit-tests/platforms/mesa/kms/test_display_buffer.cpp (+1/-1)
tests/unit-tests/platforms/mesa/kms/test_drm_helper.cpp (+9/-9)
tests/unit-tests/platforms/mesa/x11/test_display.cpp (+1/-1)
tests/unit-tests/platforms/nested/test_nested_display_buffer.cpp (+16/-16)
tests/unit-tests/renderers/gl/test_gl_renderer.cpp (+1/-1)
tests/unit-tests/scene/test_application_session.cpp (+10/-10)
tests/unit-tests/scene/test_basic_surface.cpp (+8/-8)
tests/unit-tests/scene/test_legacy_scene_change_notification.cpp (+4/-4)
tests/unit-tests/scene/test_surface.cpp (+3/-3)
tests/unit-tests/scene/test_surface_impl.cpp (+2/-2)
tests/unit-tests/scene/test_surface_stack.cpp (+6/-6)
tests/unit-tests/scene/test_timeout_application_not_responding_detector.cpp (+6/-6)
tools/detect_fd_leaks.bash (+1/-1)
tools/process_doxygen_xml.py (+18/-18)
tools/setup-partial-armhf-chroot.sh (+6/-6)
tools/valgrind_suppressions_glibc_2.23 (+9/-9)
To merge this branch: bzr merge lp:~mir-team/mir/remove-eol-whitespace
Reviewer Review Type Date Requested Status
Mir CI Bot continuous-integration Approve
Kevin DuBois (community) Abstain
Cemil Azizoglu (community) Disapprove
Alan Griffiths Abstain
Chris Halse Rogers Disapprove
Review via email: mp+302625@code.launchpad.net

Commit message

Delete whitespace at ends of lines, everywhere except 3rd_party.

Description of the change

I didn't expect there to be this much, and wonder if the diff size will hurt us later in portability of patches/backports...

On the other hand, the diff will only be this large once, in theory.

To post a comment you must log in.
Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

FAILED: Continuous integration, rev:3641
https://mir-jenkins.ubuntu.com/job/mir-ci/1430/
Executed test runs:
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-mir/1757/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/1810
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/1801/console
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/1801/console
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/1801/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=vivid+overlay/1781
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=vivid+overlay/1781/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1781
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1781/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1781
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1781/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1781
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1781/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1781
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1781/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1781
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1781/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1430/rebuild

review: Needs Fixing (continuous-integration)
3642. By Daniel van Vugt

Ping

Revision history for this message
Chris Halse Rogers (raof) wrote :

So, I guess the meta-review is: is this valuable enough to outweigh the cost (lots of in-flight branches will conflict, as you say, patch backporting becomes more difficult).

I'm of the opinion that it isn't sufficiently valuable - in an ideal world there wouldn't be trailing whitespace, but it's *whitespace* so the only harm is that it very slightly increases the size of our source tree.

What does everyone else think?

-----

Outside the meta-review, needs-fixing: please don't change debian/changelog entries for versions that are already in the archive.

review: Disapprove
Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3642
https://mir-jenkins.ubuntu.com/job/mir-ci/1431/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/1759
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/1812
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/1803
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/1803
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/1803
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=vivid+overlay/1783
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=vivid+overlay/1783/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1783
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1783/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1783
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1783/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1783
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1783/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1783
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1783/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1783
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1783/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1431/rebuild

review: Approve (continuous-integration)
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

I understand and half of me agrees with what you said.

Although on the topic of changelog, we mess that up significantly on occasion and do have to fix it retrospectively anyway. :(

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

On the topic of avoiding conflicts, I thought it would be a problem but on the other hand if you look closely most files touched only have one or two lines changed in each. So the potential for significant conflicts is low.

Revision history for this message
Alan Griffiths (alan-griffiths) wrote :

I think I proposed something similar in the past and it got rejected for the same reasons

review: Abstain
Revision history for this message
Cemil Azizoglu (cemil-azizoglu) wrote :

Getting rid of whitespace is good, but without protection against it in the future, it'll happen again. E.g. some codereview tools show the trailing whitespace in red. Unfortunately not launchpad. Or we could have a script that would format each branch before merging. This way we could ensure it doesn't happen in the future. However, without these, we'll soon be back to where we are now.

review: Disapprove
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

I can write an automated test for it, and it would never happen again. However the precondition to that would be for this to land.

The three main reasons to reject this branch are easy to argue/disprove, so it's worth going over them again:

1. It would create too many conflicts. Actually only 15% of files are touched here and most of those that are changed only have a couple of lines modified. So the risk and pain of resolving any conflicts in future is quite low.

2. changelog should not be modified. I can undo that one if necessary however we have a history of writing incorrect documentation and changelog entries that need fixing after the fact.

3. It would happen again. Actually it wouldn't -- I can write an automated test to prevent that very easily.

3643. By Daniel van Vugt

Merge latest trunk and fix conflicts

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

FAILED: Continuous integration, rev:3643
https://mir-jenkins.ubuntu.com/job/mir-ci/1449/
Executed test runs:
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-mir/1789/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/1843
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/1834
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/1834
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/1834
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1813
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1813/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1813
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1813/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1813
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1813/artifact/output/*zip*/output.zip
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1813/console
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1813/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1813
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1813/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1813
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1813/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1449/rebuild

review: Needs Fixing (continuous-integration)
3644. By Daniel van Vugt

Again

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

FAILED: Continuous integration, rev:3644
https://mir-jenkins.ubuntu.com/job/mir-ci/1454/
Executed test runs:
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-mir/1794/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/1848
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/1839
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/1839
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/1839
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1818/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1818
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1818/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1818
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1818/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1818
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1818/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1818
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1818/artifact/output/*zip*/output.zip
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1818/console

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1454/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Failures are unrelated to this branch...
[ FAILED ] NestedServer.posts_when_scene_has_visible_changes (bug 1613518)
[ FAILED ] NestedServer.animated_cursor_image_changes_are_forwarded_to_host (bug 1523621)

3645. By Daniel van Vugt

Merge latest trunk

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3645
https://mir-jenkins.ubuntu.com/job/mir-ci/1461/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/1806
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/1860
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/1851
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/1851
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/1851
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1830
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1830/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1830
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1830/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1830
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1830/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1830
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1830/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1830
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1830/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1830
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1830/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1461/rebuild

review: Approve (continuous-integration)
3646. By Daniel van Vugt

Merge latest trunk

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3646
https://mir-jenkins.ubuntu.com/job/mir-ci/1470/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/1822
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/1876
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/1867
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/1867
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/1867
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1846
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1846/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1846
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1846/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1846
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1846/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1846
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1846/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1846
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1846/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1846
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1846/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1470/rebuild

review: Approve (continuous-integration)
3647. By Daniel van Vugt

Merge latest trunk

3648. By Daniel van Vugt

Merge latest trunk

3649. By Daniel van Vugt

Remove a couple more new spaces

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

FAILED: Continuous integration, rev:3649
https://mir-jenkins.ubuntu.com/job/mir-ci/1486/
Executed test runs:
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-mir/1844/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/1898
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/1889
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/1889
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/1889
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1868/console
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1868/console
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1868/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1868
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1868/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1868
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1868/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1868
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1868/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1486/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

^^^
Failures are bug 1523621 and bug 1563210

3650. By Daniel van Vugt

Merge latest trunk

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

FAILED: Continuous integration, rev:3650
https://mir-jenkins.ubuntu.com/job/mir-ci/1495/
Executed test runs:
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-mir/1857/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/1911
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/1902
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/1902
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/1902
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1881
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1881/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1881
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1881/artifact/output/*zip*/output.zip
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1881/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1881
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1881/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1881
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1881/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1881
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1881/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1495/rebuild

review: Needs Fixing (continuous-integration)
3651. By Daniel van Vugt

Merge latest trunk

3652. By Daniel van Vugt

Fix some newly-introduced EOL whitespace

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

^^^
Failure is bug 1523621

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

FAILED: Continuous integration, rev:3652
https://mir-jenkins.ubuntu.com/job/mir-ci/1498/
Executed test runs:
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-mir/1862/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/1916
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/1907
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/1907
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/1907
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1886/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1886
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1886/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1886
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1886/artifact/output/*zip*/output.zip
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1886/console
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1886/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1886
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1886/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1886
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1886/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1498/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

^^^
Clang is missing on the CI machine? This is the second branch to hit this problem today...

05:01:00 The CMAKE_C_COMPILER:
05:01:00
05:01:00 /usr/bin/clang
05:01:00
05:01:00 is not a full path to an existing compiler tool.

3653. By Daniel van Vugt

Try again

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

FAILED: Continuous integration, rev:3653
https://mir-jenkins.ubuntu.com/job/mir-ci/1506/
Executed test runs:
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-mir/1880/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/1940
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/1931
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/1931
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/1931
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1904/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1904
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1904/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1904
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1904/artifact/output/*zip*/output.zip
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1904/console
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1904/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1904
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1904/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1904
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1904/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1506/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

^^^
04:20:58 clang: error: invalid argument '/build/mir' to -fdebug-prefix-map ... What?

and

Configuration device-runtests-mir ? krillin is still in the queue: Waiting for next available executor on krillin-01
device-runtests-mir ? krillin completed with result ABORTED
Finished: ABORTED

3654. By Daniel van Vugt

Merge latest trunk

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

FAILED: Continuous integration, rev:3654
https://mir-jenkins.ubuntu.com/job/mir-ci/1512/
Executed test runs:
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-mir/1892/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/1952
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/1943
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/1943
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/1943
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1916
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1916/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1916
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1916/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1916
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1916/artifact/output/*zip*/output.zip
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1916/console
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1916/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1916
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1916/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1916
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1916/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1512/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

^^^
Only krillin failing. That's a good improvement.

02:27:32 Triggering device-runtests-mir ? krillin
02:54:09 Configuration device-runtests-mir ? krillin is still in the queue: Waiting for next available executor on krillin-01
03:02:34 device-runtests-mir ? krillin completed with result ABORTED
03:02:34 Finished: ABORTED

3655. By Daniel van Vugt

Merge latest trunk and fix a conflict

3656. By Daniel van Vugt

Fix more EOL whitespace

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

FAILED: Continuous integration, rev:3656
https://mir-jenkins.ubuntu.com/job/mir-ci/1528/
Executed test runs:
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-mir/1909/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/1969
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/1960
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/1960
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/1960
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1933
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1933/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1933
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1933/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1933
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1933/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1933
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1933/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1933
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1933/artifact/output/*zip*/output.zip
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1933/console

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1528/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Daniel van Vugt (vanvugt) wrote :
3657. By Daniel van Vugt

Try again

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

FAILED: Continuous integration, rev:3657
https://mir-jenkins.ubuntu.com/job/mir-ci/1529/
Executed test runs:
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-mir/1910/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/1970
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/1961
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/1961
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/1961
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1934
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1934/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1934
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1934/artifact/output/*zip*/output.zip
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1934/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1934
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1934/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1934
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1934/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1934
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1934/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1529/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Daniel van Vugt (vanvugt) wrote :
3658. By Daniel van Vugt

Try again

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3658
https://mir-jenkins.ubuntu.com/job/mir-ci/1536/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/1919
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/1979
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/1970
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/1970
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/1970
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1943
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1943/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1943
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1943/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1943
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1943/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1943
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1943/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1943
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1943/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1943
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1943/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1536/rebuild

review: Approve (continuous-integration)
3659. By Daniel van Vugt

Merge latest trunk

3660. By Daniel van Vugt

Fix more whitespace

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3660
https://mir-jenkins.ubuntu.com/job/mir-ci/1557/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/1944
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2004
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/1995
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/1995
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/1995
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1970
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1970/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1970
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1970/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1970
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1970/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1970
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1970/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1970
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1970/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1970
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1970/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1557/rebuild

review: Approve (continuous-integration)
3661. By Daniel van Vugt

Merge latest trunk

3662. By Daniel van Vugt

Remove more whitespace

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3662
https://mir-jenkins.ubuntu.com/job/mir-ci/1573/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/1967
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2027
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2018
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2018
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2018
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1993
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/1993/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1993
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/1993/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1993
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/1993/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1993
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/1993/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1993
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/1993/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1993
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/1993/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1573/rebuild

review: Approve (continuous-integration)
3663. By Daniel van Vugt

Merge latest trunk

3664. By Daniel van Vugt

Remove one more whitespace chunk

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3664
https://mir-jenkins.ubuntu.com/job/mir-ci/1601/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2003
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2063
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2054
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2054
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2054
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2029
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2029/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2029
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2029/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2029
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2029/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2029
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2029/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2029
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2029/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2029
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2029/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1601/rebuild

review: Approve (continuous-integration)
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Bump. My comment on 12 August hasn't been answered.

3665. By Daniel van Vugt

Merge latest trunk

3666. By Daniel van Vugt

Merge latest trunk and fix conflict

3667. By Daniel van Vugt

Remove more whitespace

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3667
https://mir-jenkins.ubuntu.com/job/mir-ci/1656/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2071
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2133
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2124
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2124
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2124
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2099
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2099/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2099
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2099/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2099
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2099/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2099
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2099/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2099
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2099/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1656/rebuild

review: Approve (continuous-integration)
3668. By Daniel van Vugt

Merge latest trunk and fix conflicts

3669. By Daniel van Vugt

Fix new whitespace

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3669
https://mir-jenkins.ubuntu.com/job/mir-ci/1668/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2088
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2150
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2141
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2141
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2141
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2116
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2116/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2116
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2116/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2116
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2116/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2116
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2116/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2116
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2116/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1668/rebuild

review: Approve (continuous-integration)
Revision history for this message
Kevin DuBois (kdub) wrote :

I feel pretty neutrally about this. Whitespace is a small annoyance imho. OTOH, sweeping whitespace changes all accross the codebase can be annoying with merges and conflicts... Seems the middle way is to add a script, and gradually eliminate whitespace. I suppose abstain from me.

review: Abstain
3670. By Daniel van Vugt

Merge latest trunk

3671. By Daniel van Vugt

Merge latest trunk

3672. By Daniel van Vugt

Merge latest trunk and fix a conflict

3673. By Daniel van Vugt

Remove more whitespace

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Well I've been updating this branch regularly for a month now and I'm only encountering minor conflicts every few days or so. The headaches appear to be minimal.

The diff is only large once, and it's simple to script an automated test after that.

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3673
https://mir-jenkins.ubuntu.com/job/mir-ci/1700/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2128
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2190
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2181
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2181
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2181
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2156
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2156/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2156
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2156/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2156
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2156/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2156
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2156/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2156
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2156/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1700/rebuild

review: Approve (continuous-integration)
Revision history for this message
Cemil Azizoglu (cemil-azizoglu) wrote :

I guess the worry is the script may come too late and the code gets unwanted whitespace again. I'd be more in favor if there were a script that Jenkaas runs on every MP.

Revision history for this message
Daniel van Vugt (vanvugt) wrote :

"Too late" I think would mean we have as big a diff as this again. That's not going to happen because that would take years to eventuate.

More likely the script would come with zero or a couple of additional whitespace fixes. In fact it's better if it does for the sake of testing the test.

3674. By Daniel van Vugt

Merge latest trunk

3675. By Daniel van Vugt

Merge latest trunk and fix conflicts

3676. By Daniel van Vugt

And fix another whitespace

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3676
https://mir-jenkins.ubuntu.com/job/mir-ci/1739/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2176
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2239
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2230
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2230
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2230
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2204
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2204/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2204
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2204/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2204
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2204/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2204
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2204/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2204
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2204/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1739/rebuild

review: Approve (continuous-integration)
3677. By Daniel van Vugt

Merge latest trunk and fix a conflict.

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3677
https://mir-jenkins.ubuntu.com/job/mir-ci/1749/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2191
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2254
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2245
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2245
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2245
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2219
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2219/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2219
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2219/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2219
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2219/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2219
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2219/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2219
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2219/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1749/rebuild

review: Approve (continuous-integration)
3678. By Daniel van Vugt

Merge latest trunk and fix conflicts

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3678
https://mir-jenkins.ubuntu.com/job/mir-ci/1770/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2218
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2281
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2272
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2272
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2272
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2246
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2246/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2246
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2246/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2246
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2246/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2246
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2246/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2246
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2246/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1770/rebuild

review: Approve (continuous-integration)
3679. By Daniel van Vugt

Merge latest trunk

3680. By Daniel van Vugt

Merge latest trunk

3681. By Daniel van Vugt

Merge latest trunk

3682. By Daniel van Vugt

Merge latest trunk

3683. By Daniel van Vugt

Remove more whitespace

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3683
https://mir-jenkins.ubuntu.com/job/mir-ci/1823/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2288
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2351
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2342
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2342
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2342
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2316
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2316/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2316
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2316/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2316
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2316/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2316
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2316/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2316
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2316/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1823/rebuild

review: Approve (continuous-integration)
3684. By Daniel van Vugt

Merge latest trunk and fix conflicts

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

FAILED: Continuous integration, rev:3684
https://mir-jenkins.ubuntu.com/job/mir-ci/1835/
Executed test runs:
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-mir/2309/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2372
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2363
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2363
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2363
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2337
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2337/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2337
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2337/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2337
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2337/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2337
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2337/artifact/output/*zip*/output.zip
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2337/console

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1835/rebuild

review: Needs Fixing (continuous-integration)
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

^^^
Bug 1523621 as usual

3685. By Daniel van Vugt

Merge latest trunk and fix a conflict

3686. By Daniel van Vugt

Remove more whitespace

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3686
https://mir-jenkins.ubuntu.com/job/mir-ci/1838/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2317
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2380
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2371
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2371
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2371
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2345
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2345/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2345
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2345/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2345
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2345/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2345
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2345/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2345
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2345/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1838/rebuild

review: Approve (continuous-integration)
3687. By Daniel van Vugt

Merge latest trunk and fix conflicts

3688. By Daniel van Vugt

Fix more whitespace

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3688
https://mir-jenkins.ubuntu.com/job/mir-ci/1850/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2333
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2396
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2388
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2388
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2388
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2362
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2362/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2362
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2362/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2362
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2362/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2362
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2362/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2362
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2362/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2362
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2362/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1850/rebuild

review: Approve (continuous-integration)
3689. By Daniel van Vugt

Merge latest trunk and fix conflicts.

3690. By Daniel van Vugt

Remove more EOL whitespace

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3690
https://mir-jenkins.ubuntu.com/job/mir-ci/1858/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2346
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2409
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2401
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2401
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2401
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2375
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2375/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2375
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2375/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2375
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2375/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2375
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2375/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2375
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2375/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2375
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2375/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1858/rebuild

review: Approve (continuous-integration)
3691. By Daniel van Vugt

Merge latest trunk

3692. By Daniel van Vugt

Merge latest trunk

3693. By Daniel van Vugt

Merge latest trunk and resolve conflicts (from kdub's massive
code removal)

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3693
https://mir-jenkins.ubuntu.com/job/mir-ci/1892/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2397
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2460
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2452
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2452
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2452
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2426
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2426/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2426
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2426/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2426
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2426/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2426
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2426/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2426
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2426/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2426
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2426/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1892/rebuild

review: Approve (continuous-integration)
3694. By Daniel van Vugt

Merge latest trunk

3695. By Daniel van Vugt

Merge latest trunk

3696. By Daniel van Vugt

Merge latest trunk and fix a conflict.

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3696
https://mir-jenkins.ubuntu.com/job/mir-ci/1932/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2449
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2512
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2504
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2504
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2504
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2478
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2478/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2478
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2478/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2478
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2478/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2478
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2478/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2478
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2478/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2478
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2478/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1932/rebuild

review: Approve (continuous-integration)
3697. By Daniel van Vugt

Merge latest trunk and fix conflicts.

3698. By Daniel van Vugt

Fix more EOL whitespace

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3698
https://mir-jenkins.ubuntu.com/job/mir-ci/1938/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2457
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2520
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2512
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2512
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2512
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2486
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2486/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2486
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2486/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2486
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2486/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2486
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2486/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2486
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2486/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2486
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2486/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1938/rebuild

review: Approve (continuous-integration)
3699. By Daniel van Vugt

Merge latest trunk and fix conflicts.

3700. By Daniel van Vugt

Remove more whitespace

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3700
https://mir-jenkins.ubuntu.com/job/mir-ci/1947/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2481
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2544
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2536
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2536
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2536
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2510
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2510/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2510
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2510/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2510
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2510/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2510
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2510/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2510
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2510/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2510
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2510/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1947/rebuild

review: Approve (continuous-integration)
3701. By Daniel van Vugt

Merge latest trunk

3702. By Daniel van Vugt

Fix more whitespace

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3702
https://mir-jenkins.ubuntu.com/job/mir-ci/1968/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2511
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2574
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2566
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2566
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2566
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2540
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2540/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2540
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2540/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2540
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2540/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2540
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2540/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2540
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2540/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2540
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2540/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1968/rebuild

review: Approve (continuous-integration)
Revision history for this message
Daniel van Vugt (vanvugt) wrote :

Eventually I will get around to proposing the automated test for this..

3703. By Daniel van Vugt

Merge latest trunk

3704. By Daniel van Vugt

Remove another EOL whitespace

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3704
https://mir-jenkins.ubuntu.com/job/mir-ci/1984/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2542
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2605
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2597
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2597
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2597
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2571
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2571/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2571
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2571/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2571
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2571/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2571
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2571/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2571
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2571/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2571
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2571/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1984/rebuild

review: Approve (continuous-integration)
3705. By Daniel van Vugt

Merge latest trunk

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

FAILED: Continuous integration, rev:3705
https://mir-jenkins.ubuntu.com/job/mir-ci/1991/
Executed test runs:
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-mir/2551/console
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2614
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2606
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2606
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2606
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2580
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2580/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2580
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2580/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2580
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2580/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2580
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2580/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2580
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2580/artifact/output/*zip*/output.zip
    FAILURE: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2580/console

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/1991/rebuild

review: Needs Fixing (continuous-integration)
3706. By Daniel van Vugt

Merge latest trunk

Revision history for this message
Daniel van Vugt (vanvugt) wrote :
Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3706
https://mir-jenkins.ubuntu.com/job/mir-ci/2002/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2564
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2627
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2619
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2619
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2619
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2593
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2593/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2593
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2593/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2593
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2593/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2593
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2593/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2593
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2593/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2593
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2593/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/2002/rebuild

review: Approve (continuous-integration)
3707. By Daniel van Vugt

Merge latest trunk and fix a conflict

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3707
https://mir-jenkins.ubuntu.com/job/mir-ci/2018/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2587
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2650
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2642
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2642
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2642
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2616
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2616/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2616
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2616/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2616
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2616/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2616
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2616/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2616
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2616/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2616
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2616/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/2018/rebuild

review: Approve (continuous-integration)
3708. By Daniel van Vugt

Merge latest trunk and fix conflicts

3709. By Daniel van Vugt

Merge latest trunk

3710. By Daniel van Vugt

Fix more whitespace

Revision history for this message
Mir CI Bot (mir-ci-bot) wrote :

PASSED: Continuous integration, rev:3710
https://mir-jenkins.ubuntu.com/job/mir-ci/2060/
Executed test runs:
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-mir/2647
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-0-fetch/2710
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=vivid+overlay/2702
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=xenial+overlay/2702
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-1-sourcepkg/release=yakkety/2702
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2676
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=clang,platform=mesa,release=yakkety/2676/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2676
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=xenial+overlay/2676/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2676
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=amd64,compiler=gcc,platform=mesa,release=yakkety/2676/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2676
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=cross-armhf,compiler=gcc,platform=android,release=vivid+overlay/2676/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2676
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=android,release=vivid+overlay/2676/artifact/output/*zip*/output.zip
    SUCCESS: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2676
        deb: https://mir-jenkins.ubuntu.com/job/build-2-binpkg-mir/arch=i386,compiler=gcc,platform=mesa,release=xenial+overlay/2676/artifact/output/*zip*/output.zip

Click here to trigger a rebuild:
https://mir-jenkins.ubuntu.com/job/mir-ci/2060/rebuild

review: Approve (continuous-integration)

Unmerged revisions

3710. By Daniel van Vugt

Fix more whitespace

3709. By Daniel van Vugt

Merge latest trunk

3708. By Daniel van Vugt

Merge latest trunk and fix conflicts

3707. By Daniel van Vugt

Merge latest trunk and fix a conflict

3706. By Daniel van Vugt

Merge latest trunk

3705. By Daniel van Vugt

Merge latest trunk

3704. By Daniel van Vugt

Remove another EOL whitespace

3703. By Daniel van Vugt

Merge latest trunk

3702. By Daniel van Vugt

Fix more whitespace

3701. By Daniel van Vugt

Merge latest trunk

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'COPYING.GPL'
--- COPYING.GPL 2013-03-04 15:57:30 +0000
+++ COPYING.GPL 2016-10-27 03:52:22 +0000
@@ -77,7 +77,7 @@
7777
78 "Copyright" also means copyright-like laws that apply to other kinds of78 "Copyright" also means copyright-like laws that apply to other kinds of
79works, such as semiconductor masks.79works, such as semiconductor masks.
80 80
81 "The Program" refers to any copyrightable work licensed under this81 "The Program" refers to any copyrightable work licensed under this
82License. Each licensee is addressed as "you". "Licensees" and82License. Each licensee is addressed as "you". "Licensees" and
83"recipients" may be individuals or organizations.83"recipients" may be individuals or organizations.
@@ -510,7 +510,7 @@
510covered work in a country, or your recipient's use of the covered work510covered work in a country, or your recipient's use of the covered work
511in a country, would infringe one or more identifiable patents in that511in a country, would infringe one or more identifiable patents in that
512country that you have reason to believe are valid.512country that you have reason to believe are valid.
513 513
514 If, pursuant to or in connection with a single transaction or514 If, pursuant to or in connection with a single transaction or
515arrangement, you convey, or propagate by procuring conveyance of, a515arrangement, you convey, or propagate by procuring conveyance of, a
516covered work, and grant a patent license to some of the parties516covered work, and grant a patent license to some of the parties
517517
=== modified file 'HACKING.md'
--- HACKING.md 2013-06-17 15:35:53 +0000
+++ HACKING.md 2016-10-27 03:52:22 +0000
@@ -90,7 +90,7 @@
90strong and no-throw guarantees. http://www.boost.org/community/exception_safety.html90strong and no-throw guarantees. http://www.boost.org/community/exception_safety.html
9191
92A function is not required to check its preconditions (there should be no92A function is not required to check its preconditions (there should be no
93tests that preconditions failures are reported). This means that 93tests that preconditions failures are reported). This means that
94preconditions may be verified using the "assert" macro - which may or may94preconditions may be verified using the "assert" macro - which may or may
95not report problems (depending upon the NDEBUG define).95not report problems (depending upon the NDEBUG define).
9696
@@ -103,7 +103,7 @@
103expected to refer to valid objects. This avoids repetitive tests for103expected to refer to valid objects. This avoids repetitive tests for
104validity. Unless otherwise documented functions and constructors that104validity. Unless otherwise documented functions and constructors that
105take pointer parameters have validity of the referenced objects as a105take pointer parameters have validity of the referenced objects as a
106precondition. Exceptions to the rule must be of limited scope and 106precondition. Exceptions to the rule must be of limited scope and
107documented.107documented.
108108
109109
110110
=== modified file 'benchmarks/frame-uniformity/CMakeLists.txt'
--- benchmarks/frame-uniformity/CMakeLists.txt 2016-08-19 07:49:12 +0000
+++ benchmarks/frame-uniformity/CMakeLists.txt 2016-10-27 03:52:22 +0000
@@ -36,7 +36,7 @@
36 mirserver36 mirserver
37 mirclient37 mirclient
38 mirplatform38 mirplatform
39 39
40 mir-test-assist40 mir-test-assist
4141
42 # needed for fake_event_hub_server_configuration.h (which relies on private APIs)42 # needed for fake_event_hub_server_configuration.h (which relies on private APIs)
4343
=== modified file 'benchmarks/frame-uniformity/frame_uniformity_test.h'
--- benchmarks/frame-uniformity/frame_uniformity_test.h 2015-06-25 03:00:08 +0000
+++ benchmarks/frame-uniformity/frame_uniformity_test.h 2016-10-27 03:52:22 +0000
@@ -46,13 +46,13 @@
46public:46public:
47 FrameUniformityTest(FrameUniformityTestParameters const& parameters);47 FrameUniformityTest(FrameUniformityTestParameters const& parameters);
48 virtual ~FrameUniformityTest() = default;48 virtual ~FrameUniformityTest() = default;
49 49
50 mir::DefaultServerConfiguration& server_config() override;50 mir::DefaultServerConfiguration& server_config() override;
51 51
52 void run_test();52 void run_test();
53 53
54 std::shared_ptr<TouchSamples> client_results();54 std::shared_ptr<TouchSamples> client_results();
55 55
56 TouchProducingServer::TouchTimings server_timings();56 TouchProducingServer::TouchTimings server_timings();
5757
58private:58private:
5959
=== modified file 'benchmarks/frame-uniformity/main.cpp'
--- benchmarks/frame-uniformity/main.cpp 2015-04-28 07:54:10 +0000
+++ benchmarks/frame-uniformity/main.cpp 2016-10-27 03:52:22 +0000
@@ -46,7 +46,7 @@
46 touch_start_time.time_since_epoch().count();46 touch_start_time.time_since_epoch().count();
4747
48 double alpha = elapsed_interval / total_interval;48 double alpha = elapsed_interval / total_interval;
49 49
50 return touch_start + alpha*(touch_end-touch_start);50 return touch_start + alpha*(touch_end-touch_start);
51}51}
5252
@@ -73,7 +73,7 @@
73 double sum = 0;73 double sum = 0;
74 for (auto const& sample : results)74 for (auto const& sample : results)
75 {75 {
76 auto distance = pixel_lag_for_sample_at_time(touch_start_point, touch_end_point, touch_start_time, 76 auto distance = pixel_lag_for_sample_at_time(touch_start_point, touch_end_point, touch_start_time,
77 touch_end_time, sample);77 touch_end_time, sample);
78 sum += distance;78 sum += distance;
79 }79 }
@@ -93,11 +93,11 @@
93{93{
94 auto average_pixel_offset = compute_average_frame_offset(results, touch_start_point, touch_end_point,94 auto average_pixel_offset = compute_average_frame_offset(results, touch_start_point, touch_end_point,
95 touch_start_time, touch_end_time);95 touch_start_time, touch_end_time);
96 96
97 double sum = 0;97 double sum = 0;
98 for (auto const& sample : results)98 for (auto const& sample : results)
99 {99 {
100 auto distance = pixel_lag_for_sample_at_time(touch_start_point, touch_end_point, touch_start_time, 100 auto distance = pixel_lag_for_sample_at_time(touch_start_point, touch_end_point, touch_start_time,
101 touch_end_time, sample);101 touch_end_time, sample);
102 sum += (distance-average_pixel_offset)*(distance-average_pixel_offset);102 sum += (distance-average_pixel_offset)*(distance-average_pixel_offset);
103 }103 }
@@ -115,7 +115,7 @@
115 geom::Point const touch_start_point{0, 0};115 geom::Point const touch_start_point{0, 0};
116 geom::Point const touch_end_point{1024, 1024};116 geom::Point const touch_end_point{1024, 1024};
117 std::chrono::milliseconds touch_duration{1000};117 std::chrono::milliseconds touch_duration{1000};
118 118
119 int const run_count = 1;119 int const run_count = 1;
120 double average_lag = 0, average_uniformity = 0;120 double average_lag = 0, average_uniformity = 0;
121121
@@ -123,13 +123,13 @@
123 setenv("MIR_CLIENT_PLATFORM_PATH",123 setenv("MIR_CLIENT_PLATFORM_PATH",
124 (mtf::library_path() + "/client-modules").c_str(),124 (mtf::library_path() + "/client-modules").c_str(),
125 true);125 true);
126 126
127 for (int i = 0; i < run_count; i++)127 for (int i = 0; i < run_count; i++)
128 {128 {
129 FrameUniformityTest t({screen_size, touch_start_point, touch_end_point, touch_duration});129 FrameUniformityTest t({screen_size, touch_start_point, touch_end_point, touch_duration});
130130
131 t.run_test();131 t.run_test();
132 132
133 auto touch_timings = t.server_timings();133 auto touch_timings = t.server_timings();
134 auto touch_start_time = touch_timings.touch_start;134 auto touch_start_time = touch_timings.touch_start;
135 auto touch_end_time = touch_timings.touch_end;135 auto touch_end_time = touch_timings.touch_end;
@@ -137,14 +137,14 @@
137137
138 auto results = compute_frame_uniformity(samples, touch_start_point, touch_end_point,138 auto results = compute_frame_uniformity(samples, touch_start_point, touch_end_point,
139 touch_start_time, touch_end_time);139 touch_start_time, touch_end_time);
140 140
141 average_lag += results.average_pixel_offset;141 average_lag += results.average_pixel_offset;
142 average_uniformity += results.frame_uniformity;142 average_uniformity += results.frame_uniformity;
143 }143 }
144 144
145 average_lag /= run_count;145 average_lag /= run_count;
146 average_uniformity /= run_count;146 average_uniformity /= run_count;
147 147
148 std::cout << "Average pixel lag: " << average_lag << "px" << std::endl;148 std::cout << "Average pixel lag: " << average_lag << "px" << std::endl;
149 std::cout << "Frame Uniformity (smaller scores are more uniform): " << average_uniformity << "px per sample\n"149 std::cout << "Frame Uniformity (smaller scores are more uniform): " << average_uniformity << "px per sample\n"
150 << std::endl;150 << std::endl;
151151
=== modified file 'benchmarks/frame-uniformity/touch_measuring_client.cpp'
--- benchmarks/frame-uniformity/touch_measuring_client.cpp 2015-06-17 05:20:42 +0000
+++ benchmarks/frame-uniformity/touch_measuring_client.cpp 2016-10-27 03:52:22 +0000
@@ -42,7 +42,7 @@
4242
43 auto surface = mir_surface_create_sync(spec);43 auto surface = mir_surface_create_sync(spec);
44 mir_surface_spec_release(spec);44 mir_surface_spec_release(spec);
45 45
46 if (!mir_surface_is_valid(surface))46 if (!mir_surface_is_valid(surface))
47 {47 {
48 std::cerr << "Surface creation failed: " << mir_surface_get_error_message(surface) << std::endl;48 std::cerr << "Surface creation failed: " << mir_surface_get_error_message(surface) << std::endl;
@@ -55,14 +55,14 @@
55void input_callback(MirSurface * /* surface */, MirEvent const* event, void* context)55void input_callback(MirSurface * /* surface */, MirEvent const* event, void* context)
56{56{
57 auto results = static_cast<TouchSamples*>(context);57 auto results = static_cast<TouchSamples*>(context);
58 58
59 results->record_pointer_coordinates(std::chrono::high_resolution_clock::now(), *event);59 results->record_pointer_coordinates(std::chrono::high_resolution_clock::now(), *event);
60}60}
6161
62void collect_input_and_frame_timing(MirSurface *surface, mt::Barrier& client_ready, std::chrono::high_resolution_clock::duration duration, std::shared_ptr<TouchSamples> const& results)62void collect_input_and_frame_timing(MirSurface *surface, mt::Barrier& client_ready, std::chrono::high_resolution_clock::duration duration, std::shared_ptr<TouchSamples> const& results)
63{63{
64 mir_surface_set_event_handler(surface, input_callback, results.get());64 mir_surface_set_event_handler(surface, input_callback, results.get());
65 65
66 client_ready.ready();66 client_ready.ready();
6767
68 // May be better if end time were relative to the first input event68 // May be better if end time were relative to the first input event
@@ -99,17 +99,17 @@
99 std::cerr << "Connection to Mir failed: " << mir_connection_get_error_message(connection) << std::endl;99 std::cerr << "Connection to Mir failed: " << mir_connection_get_error_message(connection) << std::endl;
100 exit(1);100 exit(1);
101 }101 }
102 102
103 /*103 /*
104 * Set a null callback to avoid killing the process104 * Set a null callback to avoid killing the process
105 * (default callback raises SIGHUP).105 * (default callback raises SIGHUP).
106 */106 */
107 mir_connection_set_lifecycle_event_callback(connection, null_lifecycle_callback, nullptr);107 mir_connection_set_lifecycle_event_callback(connection, null_lifecycle_callback, nullptr);
108 108
109 auto surface = create_surface(connection);109 auto surface = create_surface(connection);
110110
111 collect_input_and_frame_timing(surface, client_ready, touch_duration, results_);111 collect_input_and_frame_timing(surface, client_ready, touch_duration, results_);
112 112
113 mir_surface_release_sync(surface);113 mir_surface_release_sync(surface);
114 mir_connection_release(connection);114 mir_connection_release(connection);
115}115}
116116
=== modified file 'benchmarks/frame-uniformity/touch_measuring_client.h'
--- benchmarks/frame-uniformity/touch_measuring_client.h 2015-06-25 03:00:08 +0000
+++ benchmarks/frame-uniformity/touch_measuring_client.h 2016-10-27 03:52:22 +0000
@@ -31,16 +31,16 @@
31public:31public:
32 TouchMeasuringClient(mir::test::Barrier& client_ready,32 TouchMeasuringClient(mir::test::Barrier& client_ready,
33 std::chrono::high_resolution_clock::duration const& touch_duration);33 std::chrono::high_resolution_clock::duration const& touch_duration);
34 34
35 void run(std::string const& connect_string);35 void run(std::string const& connect_string);
36 36
37 std::shared_ptr<TouchSamples> results();37 std::shared_ptr<TouchSamples> results();
3838
39private:39private:
40 mir::test::Barrier& client_ready;40 mir::test::Barrier& client_ready;
41 41
42 std::chrono::high_resolution_clock::duration const touch_duration;42 std::chrono::high_resolution_clock::duration const touch_duration;
43 43
44 std::shared_ptr<TouchSamples> results_;44 std::shared_ptr<TouchSamples> results_;
45};45};
4646
4747
=== modified file 'benchmarks/frame-uniformity/touch_producing_server.cpp'
--- benchmarks/frame-uniformity/touch_producing_server.cpp 2016-01-29 08:18:22 +0000
+++ benchmarks/frame-uniformity/touch_producing_server.cpp 2016-10-27 03:52:22 +0000
@@ -61,7 +61,7 @@
6161
62 if (!graphics_platform)62 if (!graphics_platform)
63 graphics_platform = std::make_shared<VsyncSimulatingPlatform>(screen_dimensions.size, refresh_rate_in_hz);63 graphics_platform = std::make_shared<VsyncSimulatingPlatform>(screen_dimensions.size, refresh_rate_in_hz);
64 64
65 return graphics_platform;65 return graphics_platform;
66}66}
6767
@@ -86,7 +86,7 @@
86 std::chrono::milliseconds const pause_between_events{10};86 std::chrono::milliseconds const pause_between_events{10};
8787
88 client_ready.ready();88 client_ready.ready();
89 89
90 auto start = std::chrono::high_resolution_clock::now();90 auto start = std::chrono::high_resolution_clock::now();
91 auto end = start + touch_duration;91 auto end = start + touch_duration;
92 auto now = start;92 auto now = start;
@@ -100,7 +100,7 @@
100 if (touch_start_time == std::chrono::high_resolution_clock::time_point::min())100 if (touch_start_time == std::chrono::high_resolution_clock::time_point::min())
101 touch_start_time = now;101 touch_start_time = now;
102 touch_end_time = now;102 touch_end_time = now;
103 103
104 double alpha = (now.time_since_epoch().count()-start.time_since_epoch().count()) / static_cast<double>(end.time_since_epoch().count()-start.time_since_epoch().count());104 double alpha = (now.time_since_epoch().count()-start.time_since_epoch().count()) / static_cast<double>(end.time_since_epoch().count()-start.time_since_epoch().count());
105 auto point = touch_start + alpha*(touch_end-touch_start);105 auto point = touch_start + alpha*(touch_end-touch_start);
106 synthesize_event_at(point);106 synthesize_event_at(point);
107107
=== modified file 'benchmarks/frame-uniformity/touch_producing_server.h'
--- benchmarks/frame-uniformity/touch_producing_server.h 2016-01-29 08:18:22 +0000
+++ benchmarks/frame-uniformity/touch_producing_server.h 2016-10-27 03:52:22 +0000
@@ -32,16 +32,16 @@
32{32{
33public:33public:
34 TouchProducingServer(mir::geometry::Rectangle screen_dimensions, mir::geometry::Point touch_start, mir::geometry::Point touch_end, std::chrono::high_resolution_clock::duration touch_duration, mir::test::Barrier& client_ready);34 TouchProducingServer(mir::geometry::Rectangle screen_dimensions, mir::geometry::Point touch_start, mir::geometry::Point touch_end, std::chrono::high_resolution_clock::duration touch_duration, mir::test::Barrier& client_ready);
35 35
36 struct TouchTimings {36 struct TouchTimings {
37 std::chrono::high_resolution_clock::time_point touch_start;37 std::chrono::high_resolution_clock::time_point touch_start;
38 std::chrono::high_resolution_clock::time_point touch_end;38 std::chrono::high_resolution_clock::time_point touch_end;
39 };39 };
40 TouchTimings touch_timings();40 TouchTimings touch_timings();
41 41
42 std::shared_ptr<mir::graphics::Platform> the_graphics_platform() override;42 std::shared_ptr<mir::graphics::Platform> the_graphics_platform() override;
4343
44 ~TouchProducingServer(); 44 ~TouchProducingServer();
45private:45private:
46 mir::geometry::Rectangle const screen_dimensions;46 mir::geometry::Rectangle const screen_dimensions;
4747
@@ -50,14 +50,14 @@
50 std::chrono::high_resolution_clock::duration const touch_duration;50 std::chrono::high_resolution_clock::duration const touch_duration;
5151
52 mir::test::Barrier& client_ready;52 mir::test::Barrier& client_ready;
53 53
54 std::thread input_injection_thread;54 std::thread input_injection_thread;
55 55
56 std::chrono::high_resolution_clock::time_point touch_start_time;56 std::chrono::high_resolution_clock::time_point touch_start_time;
57 std::chrono::high_resolution_clock::time_point touch_end_time;57 std::chrono::high_resolution_clock::time_point touch_end_time;
58 58
59 std::shared_ptr<mir::graphics::Platform> graphics_platform;59 std::shared_ptr<mir::graphics::Platform> graphics_platform;
60 60
61 void synthesize_event_at(mir::geometry::Point const& point);61 void synthesize_event_at(mir::geometry::Point const& point);
62 void thread_function();62 void thread_function();
6363
6464
=== modified file 'benchmarks/frame-uniformity/touch_samples.cpp'
--- benchmarks/frame-uniformity/touch_samples.cpp 2015-06-17 05:20:42 +0000
+++ benchmarks/frame-uniformity/touch_samples.cpp 2016-10-27 03:52:22 +0000
@@ -28,7 +28,7 @@
28 }28 }
29 samples_being_prepared.clear();29 samples_being_prepared.clear();
30}30}
31 31
32void TouchSamples::record_pointer_coordinates(std::chrono::high_resolution_clock::time_point reception_time,32void TouchSamples::record_pointer_coordinates(std::chrono::high_resolution_clock::time_point reception_time,
33 MirEvent const& event)33 MirEvent const& event)
34{34{
3535
=== modified file 'benchmarks/frame-uniformity/touch_samples.h'
--- benchmarks/frame-uniformity/touch_samples.h 2014-10-22 14:08:51 +0000
+++ benchmarks/frame-uniformity/touch_samples.h 2016-10-27 03:52:22 +0000
@@ -30,7 +30,7 @@
30public:30public:
31 TouchSamples() = default;31 TouchSamples() = default;
32 ~TouchSamples() = default;32 ~TouchSamples() = default;
33 33
34 // A touch sample34 // A touch sample
35 struct Sample35 struct Sample
36 {36 {
@@ -43,7 +43,7 @@
43 std::chrono::high_resolution_clock::time_point frame_time;43 std::chrono::high_resolution_clock::time_point frame_time;
44 };44 };
45 std::vector<Sample> get();45 std::vector<Sample> get();
46 46
47 void record_frame_time(std::chrono::high_resolution_clock::time_point time);47 void record_frame_time(std::chrono::high_resolution_clock::time_point time);
48 void record_pointer_coordinates(std::chrono::high_resolution_clock::time_point reception_time,48 void record_pointer_coordinates(std::chrono::high_resolution_clock::time_point reception_time,
49 MirEvent const& ev);49 MirEvent const& ev);
5050
=== modified file 'benchmarks/frame-uniformity/vsync_simulating_graphics_platform.cpp'
--- benchmarks/frame-uniformity/vsync_simulating_graphics_platform.cpp 2016-01-29 08:18:22 +0000
+++ benchmarks/frame-uniformity/vsync_simulating_graphics_platform.cpp 2016-10-27 03:52:22 +0000
@@ -54,10 +54,10 @@
54 {54 {
55 auto now = std::chrono::high_resolution_clock::now();55 auto now = std::chrono::high_resolution_clock::now();
56 auto next_sync = last_sync + std::chrono::seconds(1) / vsync_rate_in_hz;56 auto next_sync = last_sync + std::chrono::seconds(1) / vsync_rate_in_hz;
57 57
58 if (now < next_sync)58 if (now < next_sync)
59 std::this_thread::sleep_for(next_sync - now);59 std::this_thread::sleep_for(next_sync - now);
60 60
61 last_sync = now;61 last_sync = now;
62 }62 }
6363
@@ -65,7 +65,7 @@
65 {65 {
66 return std::chrono::milliseconds::zero();66 return std::chrono::milliseconds::zero();
67 }67 }
68 68
69 double const vsync_rate_in_hz;69 double const vsync_rate_in_hz;
7070
71 std::chrono::high_resolution_clock::time_point last_sync;71 std::chrono::high_resolution_clock::time_point last_sync;
@@ -80,7 +80,7 @@
80 group(output_size, vsync_rate_in_hz)80 group(output_size, vsync_rate_in_hz)
81 {81 {
82 }82 }
83 83
84 void for_each_display_sync_group(std::function<void(mg::DisplaySyncGroup&)> const& exec) override84 void for_each_display_sync_group(std::function<void(mg::DisplaySyncGroup&)> const& exec) override
85 {85 {
86 exec(group);86 exec(group);
8787
=== modified file 'benchmarks/frame-uniformity/vsync_simulating_graphics_platform.h'
--- benchmarks/frame-uniformity/vsync_simulating_graphics_platform.h 2016-01-29 08:18:22 +0000
+++ benchmarks/frame-uniformity/vsync_simulating_graphics_platform.h 2016-10-27 03:52:22 +0000
@@ -29,13 +29,13 @@
29public:29public:
30 VsyncSimulatingPlatform(mir::geometry::Size const& output_size, int vsync_rate_in_hz);30 VsyncSimulatingPlatform(mir::geometry::Size const& output_size, int vsync_rate_in_hz);
31 ~VsyncSimulatingPlatform() = default;31 ~VsyncSimulatingPlatform() = default;
32 32
33 mir::UniqueModulePtr<mir::graphics::GraphicBufferAllocator> create_buffer_allocator();33 mir::UniqueModulePtr<mir::graphics::GraphicBufferAllocator> create_buffer_allocator();
34 34
35 mir::UniqueModulePtr<mir::graphics::Display> create_display(35 mir::UniqueModulePtr<mir::graphics::Display> create_display(
36 std::shared_ptr<mir::graphics::DisplayConfigurationPolicy> const& initial_conf_policy,36 std::shared_ptr<mir::graphics::DisplayConfigurationPolicy> const& initial_conf_policy,
37 std::shared_ptr<mir::graphics::GLConfig> const& gl_config);37 std::shared_ptr<mir::graphics::GLConfig> const& gl_config);
38 38
39 mir::UniqueModulePtr<mir::graphics::PlatformIpcOperations> make_ipc_operations() const;39 mir::UniqueModulePtr<mir::graphics::PlatformIpcOperations> make_ipc_operations() const;
4040
41private:41private:
4242
=== modified file 'benchmarks/touch_event_latency.py'
--- benchmarks/touch_event_latency.py 2015-07-02 14:40:40 +0000
+++ benchmarks/touch_event_latency.py 2016-10-27 03:52:22 +0000
@@ -25,7 +25,7 @@
25 evdev.ecodes.BTN_TOUCH,25 evdev.ecodes.BTN_TOUCH,
26 ]26 ]
27 }27 }
28 28
29 self.ui = evdev.UInput(events=allowed_events, name="autopilot-finger")29 self.ui = evdev.UInput(events=allowed_events, name="autopilot-finger")
3030
31 def get_resolution(self):31 def get_resolution(self):
3232
=== modified file 'cmake/ABICheck.cmake'
--- cmake/ABICheck.cmake 2016-07-18 07:38:38 +0000
+++ cmake/ABICheck.cmake 2016-10-27 03:52:22 +0000
@@ -50,11 +50,11 @@
50 cmake_policy(SET CMP0026 OLD)50 cmake_policy(SET CMP0026 OLD)
51 endif()51 endif()
52 get_property(LIB_DESC_LIBS TARGET ${libname} PROPERTY LOCATION)52 get_property(LIB_DESC_LIBS TARGET ${libname} PROPERTY LOCATION)
53 53
54 get_includes(${libname} LIB_DESC_INCLUDE_PATHS)54 get_includes(${libname} LIB_DESC_INCLUDE_PATHS)
55 set(LIB_DESC_GCC_OPTS "${CMAKE_CXX_FLAGS}")55 set(LIB_DESC_GCC_OPTS "${CMAKE_CXX_FLAGS}")
5656
57 # Optional EXCLUDE_HEADERS - a list 57 # Optional EXCLUDE_HEADERS - a list
58 # while attempting an abi dump58 # while attempting an abi dump
59 get_value_for_key("${ARGN}" "EXCLUDE_HEADERS" LIB_DESC_SKIP_HEADERS)59 get_value_for_key("${ARGN}" "EXCLUDE_HEADERS" LIB_DESC_SKIP_HEADERS)
6060
@@ -90,8 +90,8 @@
90 add_custom_target(abi-dump-${libname} DEPENDS ${ABI_DUMP_NAME})90 add_custom_target(abi-dump-${libname} DEPENDS ${ABI_DUMP_NAME})
91endmacro(_define_abi_dump_for)91endmacro(_define_abi_dump_for)
9292
93macro(_define_abi_check_for libname) 93macro(_define_abi_check_for libname)
94 add_custom_target(abi-check-${libname} 94 add_custom_target(abi-check-${libname}
95 COMMAND /bin/bash -c '${CMAKE_SOURCE_DIR}/tools/abi_check.sh ${libname} ${ABI_DUMPS_DIR} ${CMAKE_SOURCE_DIR}'95 COMMAND /bin/bash -c '${CMAKE_SOURCE_DIR}/tools/abi_check.sh ${libname} ${ABI_DUMPS_DIR} ${CMAKE_SOURCE_DIR}'
96 DEPENDS abi-dump-${libname}96 DEPENDS abi-dump-${libname}
97 )97 )
9898
=== modified file 'cmake/Debian.cmake'
--- cmake/Debian.cmake 2012-11-12 12:27:40 +0000
+++ cmake/Debian.cmake 2016-10-27 03:52:22 +0000
@@ -9,13 +9,13 @@
9 OUTPUT_VARIABLE DPKG_BUILDFLAGS_CFLAGS9 OUTPUT_VARIABLE DPKG_BUILDFLAGS_CFLAGS
10 OUTPUT_STRIP_TRAILING_WHITESPACE10 OUTPUT_STRIP_TRAILING_WHITESPACE
11 )11 )
12 12
13 execute_process(13 execute_process(
14 COMMAND ${DPKG_BUILDFLAGS} "--get" "CPPFLAGS"14 COMMAND ${DPKG_BUILDFLAGS} "--get" "CPPFLAGS"
15 OUTPUT_VARIABLE DPKG_BUILDFLAGS_CPPFLAGS15 OUTPUT_VARIABLE DPKG_BUILDFLAGS_CPPFLAGS
16 OUTPUT_STRIP_TRAILING_WHITESPACE16 OUTPUT_STRIP_TRAILING_WHITESPACE
17 )17 )
18 18
19 execute_process(19 execute_process(
20 COMMAND ${DPKG_BUILDFLAGS} "--get" "CXXFLAGS"20 COMMAND ${DPKG_BUILDFLAGS} "--get" "CXXFLAGS"
21 OUTPUT_VARIABLE DPKG_BUILDFLAGS_CXXFLAGS21 OUTPUT_VARIABLE DPKG_BUILDFLAGS_CXXFLAGS
2222
=== modified file 'cmake/FindBoost.cmake'
--- cmake/FindBoost.cmake 2012-08-10 10:05:29 +0000
+++ cmake/FindBoost.cmake 2016-10-27 03:52:22 +0000
@@ -1194,7 +1194,7 @@
1194 set(Boost_LIBRARIES ${Boost_LIBRARIES} ${Boost_${UPPERCOMPONENT}_LIBRARY})1194 set(Boost_LIBRARIES ${Boost_LIBRARIES} ${Boost_${UPPERCOMPONENT}_LIBRARY})
1195 if(${UPPERCOMPONENT} STREQUAL "THREAD" AND UNIX)1195 if(${UPPERCOMPONENT} STREQUAL "THREAD" AND UNIX)
1196 find_package (Threads)1196 find_package (Threads)
1197 set(Boost_LIBRARIES 1197 set(Boost_LIBRARIES
1198 ${Boost_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT})1198 ${Boost_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT})
1199 endif(${UPPERCOMPONENT} STREQUAL "THREAD" AND UNIX)1199 endif(${UPPERCOMPONENT} STREQUAL "THREAD" AND UNIX)
1200 endif( Boost_${UPPERCOMPONENT}_FOUND )1200 endif( Boost_${UPPERCOMPONENT}_FOUND )
12011201
=== modified file 'cmake/FindLcov.cmake'
--- cmake/FindLcov.cmake 2012-07-26 07:03:35 +0000
+++ cmake/FindLcov.cmake 2016-10-27 03:52:22 +0000
@@ -1,4 +1,4 @@
1# - Find lcov 1# - Find lcov
2# Will define:2# Will define:
3#3#
4# LCOV_EXECUTABLE - the lcov binary4# LCOV_EXECUTABLE - the lcov binary
55
=== modified file 'cmake/FindLibHardware.cmake'
--- cmake/FindLibHardware.cmake 2016-07-18 07:38:38 +0000
+++ cmake/FindLibHardware.cmake 2016-10-27 03:52:22 +0000
@@ -12,7 +12,7 @@
1212
13find_library(LIBHARDWARE_LIBRARY13find_library(LIBHARDWARE_LIBRARY
14 NAMES libhardware.so.214 NAMES libhardware.so.2
15 libhardware.so 15 libhardware.so
16)16)
1717
18set(LIBHARDWARE_LIBRARIES ${LIBHARDWARE_LIBRARY})18set(LIBHARDWARE_LIBRARIES ${LIBHARDWARE_LIBRARY})
1919
=== modified file 'cmake/Findgcovr.cmake'
--- cmake/Findgcovr.cmake 2012-07-26 07:03:35 +0000
+++ cmake/Findgcovr.cmake 2016-10-27 03:52:22 +0000
@@ -1,4 +1,4 @@
1# - Find gcovr scrip 1# - Find gcovr scrip
2# Will define:2# Will define:
3#3#
4# GCOVR_EXECUTABLE - the gcovr script4# GCOVR_EXECUTABLE - the gcovr script
55
=== modified file 'cmake/MirCommon.cmake'
--- cmake/MirCommon.cmake 2016-08-10 07:57:05 +0000
+++ cmake/MirCommon.cmake 2016-10-27 03:52:22 +0000
@@ -79,7 +79,7 @@
79 set(TSAN_EXTRA_OPTIONS "external_symbolizer_path=${LLVM_SYMBOLIZER}")79 set(TSAN_EXTRA_OPTIONS "external_symbolizer_path=${LLVM_SYMBOLIZER}")
80 endif()80 endif()
81 endif()81 endif()
82 # Space after ${TSAN_EXTRA_OPTIONS} works around bug in TSAN env. variable parsing 82 # Space after ${TSAN_EXTRA_OPTIONS} works around bug in TSAN env. variable parsing
83 list(APPEND test_env "TSAN_OPTIONS=\"suppressions=${CMAKE_SOURCE_DIR}/tools/tsan-suppressions second_deadlock_stack=1 halt_on_error=1 history_size=7 die_after_fork=0 ${TSAN_EXTRA_OPTIONS} \"")83 list(APPEND test_env "TSAN_OPTIONS=\"suppressions=${CMAKE_SOURCE_DIR}/tools/tsan-suppressions second_deadlock_stack=1 halt_on_error=1 history_size=7 die_after_fork=0 ${TSAN_EXTRA_OPTIONS} \"")
84 # TSan does not support starting threads after fork84 # TSan does not support starting threads after fork
85 set(test_exclusion_filter "${test_exclusion_filter}:ThreadedDispatcherSignalTest.keeps_dispatching_after_signal_interruption")85 set(test_exclusion_filter "${test_exclusion_filter}:ThreadedDispatcherSignalTest.keeps_dispatching_after_signal_interruption")
8686
=== modified file 'cmake/ParseArguments.cmake'
--- cmake/ParseArguments.cmake 2012-07-26 07:03:35 +0000
+++ cmake/ParseArguments.cmake 2016-10-27 03:52:22 +0000
@@ -18,29 +18,29 @@
18# * ARG_OPTION2: TRUE18# * ARG_OPTION2: TRUE
19# * ARG_OPTION3: TRUE19# * ARG_OPTION3: TRUE
20#20#
21# taken from http://www.cmake.org/Wiki/CMakeMacroParseArguments 21# taken from http://www.cmake.org/Wiki/CMakeMacroParseArguments
2222
23MACRO(PARSE_ARGUMENTS prefix arg_names option_names)23MACRO(PARSE_ARGUMENTS prefix arg_names option_names)
24 SET(DEFAULT_ARGS)24 SET(DEFAULT_ARGS)
25 FOREACH(arg_name ${arg_names}) 25 FOREACH(arg_name ${arg_names})
26 SET(${prefix}_${arg_name})26 SET(${prefix}_${arg_name})
27 ENDFOREACH(arg_name)27 ENDFOREACH(arg_name)
28 FOREACH(option ${option_names})28 FOREACH(option ${option_names})
29 SET(${prefix}_${option} FALSE)29 SET(${prefix}_${option} FALSE)
30 ENDFOREACH(option)30 ENDFOREACH(option)
31 31
32 SET(current_arg_name DEFAULT_ARGS)32 SET(current_arg_name DEFAULT_ARGS)
33 SET(current_arg_list)33 SET(current_arg_list)
34 FOREACH(arg ${ARGN}) 34 FOREACH(arg ${ARGN})
35 SET(larg_names ${arg_names}) 35 SET(larg_names ${arg_names})
36 LIST(FIND larg_names "${arg}" is_arg_name) 36 LIST(FIND larg_names "${arg}" is_arg_name)
37 IF (is_arg_name GREATER -1)37 IF (is_arg_name GREATER -1)
38 SET(${prefix}_${current_arg_name} ${current_arg_list})38 SET(${prefix}_${current_arg_name} ${current_arg_list})
39 SET(current_arg_name ${arg})39 SET(current_arg_name ${arg})
40 SET(current_arg_list)40 SET(current_arg_list)
41 ELSE (is_arg_name GREATER -1)41 ELSE (is_arg_name GREATER -1)
42 SET(loption_names ${option_names}) 42 SET(loption_names ${option_names})
43 LIST(FIND loption_names "${arg}" is_option) 43 LIST(FIND loption_names "${arg}" is_option)
44 IF (is_option GREATER -1)44 IF (is_option GREATER -1)
45 SET(${prefix}_${arg} TRUE)45 SET(${prefix}_${arg} TRUE)
46 ELSE (is_option GREATER -1)46 ELSE (is_option GREATER -1)
4747
=== modified file 'cross-compile-chroot.sh'
--- cross-compile-chroot.sh 2016-08-09 08:13:02 +0000
+++ cross-compile-chroot.sh 2016-10-27 03:52:22 +0000
@@ -22,7 +22,7 @@
22NUM_JOBS=$(( $(grep -c ^processor /proc/cpuinfo) + 1 ))22NUM_JOBS=$(( $(grep -c ^processor /proc/cpuinfo) + 1 ))
23_do_update_chroot=023_do_update_chroot=0
2424
25# Default to vivid as we don't seem to have any working wily devices right now 25# Default to vivid as we don't seem to have any working wily devices right now
26dist=vivid26dist=vivid
27clean=027clean=0
28update_build_dir=028update_build_dir=0
@@ -84,12 +84,12 @@
84 export MIR_NDK_PATH=~/.cache/mir-${target_arch}-chroot-${dist}84 export MIR_NDK_PATH=~/.cache/mir-${target_arch}-chroot-${dist}
85fi85fi
8686
87if [ ! -d ${MIR_NDK_PATH} ]; then 87if [ ! -d ${MIR_NDK_PATH} ]; then
88 echo "no partial chroot dir detected. attempting to create one"88 echo "no partial chroot dir detected. attempting to create one"
89 _do_update_chroot=189 _do_update_chroot=1
90fi90fi
9191
92if [ ! -d ${BUILD_DIR} ]; then 92if [ ! -d ${BUILD_DIR} ]; then
93 mkdir ${BUILD_DIR}93 mkdir ${BUILD_DIR}
94fi94fi
9595
@@ -157,7 +157,7 @@
157 clean_build_dir ${BUILD_DIR}157 clean_build_dir ${BUILD_DIR}
158fi158fi
159159
160pushd ${BUILD_DIR} > /dev/null 160pushd ${BUILD_DIR} > /dev/null
161161
162 export PKG_CONFIG_PATH="${MIR_NDK_PATH}/usr/lib/pkgconfig:${MIR_NDK_PATH}/usr/lib/${target_machine}/pkgconfig"162 export PKG_CONFIG_PATH="${MIR_NDK_PATH}/usr/lib/pkgconfig:${MIR_NDK_PATH}/usr/lib/${target_machine}/pkgconfig"
163 export PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1163 export PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1
@@ -171,8 +171,8 @@
171 cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/LinuxCrossCompile.cmake \171 cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/LinuxCrossCompile.cmake \
172 -DMIR_PLATFORM=${mir_platform} -DMIR_ENABLE_TESTS=${enable_tests}\172 -DMIR_PLATFORM=${mir_platform} -DMIR_ENABLE_TESTS=${enable_tests}\
173 -DMIR_USE_PRECOMPILED_HEADERS=OFF \173 -DMIR_USE_PRECOMPILED_HEADERS=OFF \
174 .. 174 ..
175175
176 make -j${NUM_JOBS} $@176 make -j${NUM_JOBS} $@
177177
178popd > /dev/null 178popd > /dev/null
179179
=== modified file 'debian/changelog'
--- debian/changelog 2016-08-25 08:16:10 +0000
+++ debian/changelog 2016-10-27 03:52:22 +0000
@@ -92,9 +92,9 @@
92 . ftbfs in linking libmir-test-assist.a in xenial+overlay and92 . ftbfs in linking libmir-test-assist.a in xenial+overlay and
93 yakkety+overlay (LP: #1601810)93 yakkety+overlay (LP: #1601810)
94 . [testsfail] failure in NestedInput.on_input_device_state_nested_*94 . [testsfail] failure in NestedInput.on_input_device_state_nested_*
95 (LP: #1602646) 95 (LP: #1602646)
96 . mirtest-dev provides an incorrect .pc file (LP: #1603080)96 . mirtest-dev provides an incorrect .pc file (LP: #1603080)
97 . mir_test_framework::server_platform_path(), 97 . mir_test_framework::server_platform_path(),
98 mir_test_framework::server_platform() don't support use in a downstream98 mir_test_framework::server_platform() don't support use in a downstream
99 test built against mir-test-assist (LP: #1603091)99 test built against mir-test-assist (LP: #1603091)
100 . Servers based on Mir need a hook to execute code when the server is100 . Servers based on Mir need a hook to execute code when the server is
@@ -105,7 +105,7 @@
105 count, fixing dpi to 25.4 (LP: #1596051)105 count, fixing dpi to 25.4 (LP: #1596051)
106 . Mir build and test failures with gcc-6 and LTO (LP: #1610215)106 . Mir build and test failures with gcc-6 and LTO (LP: #1610215)
107 . [regression] Trust prompt not shown when starting camera (LP: #1612256)107 . [regression] Trust prompt not shown when starting camera (LP: #1612256)
108 108
109 -- Kevin DuBois <kevin.dubois@canonical.com> Mon, 15 Aug 2016 16:29:03 +0000109 -- Kevin DuBois <kevin.dubois@canonical.com> Mon, 15 Aug 2016 16:29:03 +0000
110110
111mir (0.23.5+16.10.20160729-0ubuntu2) yakkety; urgency=medium111mir (0.23.5+16.10.20160729-0ubuntu2) yakkety; urgency=medium
@@ -170,7 +170,7 @@
170 . No ABI changes in any libraries. Bugfix release only.170 . No ABI changes in any libraries. Bugfix release only.
171 - Bugs fixed:171 - Bugs fixed:
172 . Turn off NBS as workaround to LP: #1590765172 . Turn off NBS as workaround to LP: #1590765
173 173
174 [ Daniel van Vugt, Kevin DuBois ]174 [ Daniel van Vugt, Kevin DuBois ]
175 * Mir 0.23.1 bugfix release. Fix flickering issue seen with onscreen175 * Mir 0.23.1 bugfix release. Fix flickering issue seen with onscreen
176 keyboard (LP: 1590765)176 keyboard (LP: 1590765)
@@ -192,7 +192,7 @@
192 . mirinputplatform ABI unchanged at 5192 . mirinputplatform ABI unchanged at 5
193 - Enhancements:193 - Enhancements:
194 . Enable internal usage of more flexible graphics buffer submission,194 . Enable internal usage of more flexible graphics buffer submission,
195 precursing client API additions. 195 precursing client API additions.
196 - Bug fixes:196 - Bug fixes:
197 . Potential NBS performance loss after resize (LP: #1579076)197 . Potential NBS performance loss after resize (LP: #1579076)
198 . Performance loss with NBS and overlays on (LP: #1578159)198 . Performance loss with NBS and overlays on (LP: #1578159)
@@ -207,7 +207,7 @@
207 . Virtual display output configuration is set to LVDS (LP: #1573782)207 . Virtual display output configuration is set to LVDS (LP: #1573782)
208 . Mir-on-X11 doesn't pass Alt+primary button drag to Mir (LP: #1575765)208 . Mir-on-X11 doesn't pass Alt+primary button drag to Mir (LP: #1575765)
209 . Mir-on-X11 breaks mir_proving_server resize logic (LP: #1575192)209 . Mir-on-X11 breaks mir_proving_server resize logic (LP: #1575192)
210 . Resizing can crash mir_demo_server (LP: #1575211) 210 . Resizing can crash mir_demo_server (LP: #1575211)
211 . [regression] Cursor stops at phantom edge on M10 and N7 (LP: #1580774)211 . [regression] Cursor stops at phantom edge on M10 and N7 (LP: #1580774)
212 . [regression] MIR_CLIENT_PERF_REPORT is showing bogus render times and212 . [regression] MIR_CLIENT_PERF_REPORT is showing bogus render times and
213 buffer lag (LP: #1581368)213 buffer lag (LP: #1581368)
@@ -259,31 +259,31 @@
259 upgrade to ld-2.23 (LP: #1560415)259 upgrade to ld-2.23 (LP: #1560415)
260 . [regression] failure in CI on ThreadedDispatcherSignalTest.keeps_260 . [regression] failure in CI on ThreadedDispatcherSignalTest.keeps_
261 dispatching_after_signal_interruption under Valgrind (LP: #1499229)261 dispatching_after_signal_interruption under Valgrind (LP: #1499229)
262 . [regression] Cursor mostly does not move at all in response to slow 262 . [regression] Cursor mostly does not move at all in response to slow
263 mouse movement, but then sometimes jumps (LP: #1528109)263 mouse movement, but then sometimes jumps (LP: #1528109)
264 . Sometimes devices don't suspend - display turns back on immediately264 . Sometimes devices don't suspend - display turns back on immediately
265 (LP: #1549701)265 (LP: #1549701)
266 . CI failure in NestedServer.display_orientation_changes_are_forwarded_to_266 . CI failure in NestedServer.display_orientation_changes_are_forwarded_to_
267 host (LP: #1555074)267 host (LP: #1555074)
268 . NBS fullscreen overlay benchmark performance is much lower than 268 . NBS fullscreen overlay benchmark performance is much lower than
269 BufferQueue (LP: #1557962)269 BufferQueue (LP: #1557962)
270 . server crashes when shutting down in smoke tests (LP: #1560900)270 . server crashes when shutting down in smoke tests (LP: #1560900)
271 . [regression] [OTA-10] Spread animation stutters badly with only a few271 . [regression] [OTA-10] Spread animation stutters badly with only a few
272 apps opened (LP: #1563287)272 apps opened (LP: #1563287)
273 . nested mir_demo_server crashes on startup (LP: #1570362)273 . nested mir_demo_server crashes on startup (LP: #1570362)
274 . mir_acceptance_tests & mir_unit_tests dump core files (even when 274 . mir_acceptance_tests & mir_unit_tests dump core files (even when
275 everything passes) (LP: #1342092)275 everything passes) (LP: #1342092)
276 . [regression] Tests fail with: std::exception::what: Failed to read from276 . [regression] Tests fail with: std::exception::what: Failed to read from
277 device: /dev/random after: 30 seconds (LP: #1541188)277 device: /dev/random after: 30 seconds (LP: #1541188)
278 . [testsfail] ClientLatency.throttled_input_rate_yields_lower_latency278 . [testsfail] ClientLatency.throttled_input_rate_yields_lower_latency
279 (LP: #1554572)279 (LP: #1554572)
280 . NBS causes sudden loss of performance after un-fullscreening a swap 280 . NBS causes sudden loss of performance after un-fullscreening a swap
281 interval zero client (LP: #1557442)281 interval zero client (LP: #1557442)
282 . surface creation with non-default buffer streams is ignored by server282 . surface creation with non-default buffer streams is ignored by server
283 (LP: #1563278)283 (LP: #1563278)
284 . [regression] mir_integration_tests take significantly longer (27x284 . [regression] mir_integration_tests take significantly longer (27x
285 longer) when running with ctest (LP: #1568966)285 longer) when running with ctest (LP: #1568966)
286 . CI failure in TestClientInput.receives_one_touch_event_per_frame 286 . CI failure in TestClientInput.receives_one_touch_event_per_frame
287 (LP: #1570698)287 (LP: #1570698)
288 . Racy shutdown in mir_demo_client_scroll causes SEGFAULT (LP: #1560943)288 . Racy shutdown in mir_demo_client_scroll causes SEGFAULT (LP: #1560943)
289 . mir_demo_client_target does not quit after SIGTERM/SIGINT (LP: #1562340)289 . mir_demo_client_target does not quit after SIGTERM/SIGINT (LP: #1562340)
@@ -501,7 +501,7 @@
501 - Bugs fixed:501 - Bugs fixed:
502 . Lock ordering issues causing deadlocks between input and display502 . Lock ordering issues causing deadlocks between input and display
503 configuration (LP: #1538632, LP: #1543594, LP: #1532607)503 configuration (LP: #1538632, LP: #1543594, LP: #1532607)
504 . Workaound for a g++ 4.9 bug where std::uncaught_exception() 504 . Workaound for a g++ 4.9 bug where std::uncaught_exception()
505 unexpectedly returns true505 unexpectedly returns true
506506
507 [ CI Train Bot ]507 [ CI Train Bot ]
@@ -618,7 +618,7 @@
618 - No ABI changes. Bug fix release only.618 - No ABI changes. Bug fix release only.
619 - Bug fixed:619 - Bug fixed:
620 . [regression] pinch to zoom not working reliably (LP: #1531517)620 . [regression] pinch to zoom not working reliably (LP: #1531517)
621 621
622622
623 [ CI Train Bot ]623 [ CI Train Bot ]
624 * No-change rebuild.624 * No-change rebuild.
@@ -903,7 +903,7 @@
903 (LP: #1488500)903 (LP: #1488500)
904 . CI test failure in ClientLatency.triple_buffered_client_uses_all_buffers904 . CI test failure in ClientLatency.triple_buffered_client_uses_all_buffers
905 (LP: #1491876)905 (LP: #1491876)
906 . Intermittent CI failure in 906 . Intermittent CI failure in
907 DisplayConfigurationTest.changing_focus_from_client_with_config_to_client_without_config_configures_display907 DisplayConfigurationTest.changing_focus_from_client_with_config_to_client_without_config_configures_display
908 (LP: #1494663)908 (LP: #1494663)
909 . acceptance test ClientLatency.double_buffered_client_uses_all_buffers909 . acceptance test ClientLatency.double_buffered_client_uses_all_buffers
@@ -912,10 +912,10 @@
912 . make ptest returns 0 when tests fail (LP: #1454250)912 . make ptest returns 0 when tests fail (LP: #1454250)
913 . [regression] Mir is holding buffers much longer than it used to913 . [regression] Mir is holding buffers much longer than it used to
914 (LP: #1480164)914 (LP: #1480164)
915 . Acceptance test fails under debuild: 915 . Acceptance test fails under debuild:
916 ClientCredsTestFixture.session_authorizer_receives_pid_of_connecting_clients916 ClientCredsTestFixture.session_authorizer_receives_pid_of_connecting_clients
917 (LP: #1483097)917 (LP: #1483097)
918 . dpkg-shlibdeps: warning: 918 . dpkg-shlibdeps: warning:
919 debian/mir-platform-graphics-mesa-x4/usr/lib/x86_64-linux-gnu/mir/server-platform/server-mesa-x11.so.4919 debian/mir-platform-graphics-mesa-x4/usr/lib/x86_64-linux-gnu/mir/server-platform/server-mesa-x11.so.4
920 contains an unresolvable reference to symbol920 contains an unresolvable reference to symbol
921 _ZN3mir6events10make_eventElNSt6chrono8durationIlSt5ratioILl1ELl1000000000EEEE17MirKeyboardActionjij:921 _ZN3mir6events10make_eventElNSt6chrono8durationIlSt5ratioILl1ELl1000000000EEEE17MirKeyboardActionjij:
@@ -1004,12 +1004,12 @@
1004 . Fix focus issues breaking autopilot tests entering text (LP: #1468029)1004 . Fix focus issues breaking autopilot tests entering text (LP: #1468029)
1005 . Fix mir tests failure on armhf with GCC5 (LP: #1478213)1005 . Fix mir tests failure on armhf with GCC5 (LP: #1478213)
1006 . mir_buffer_stream_swap_buffers_sync can hang constraints (LP: #1479899)1006 . mir_buffer_stream_swap_buffers_sync can hang constraints (LP: #1479899)
1007 . Loading libmirclient.so twice leads to a segfault in libmirprotobuf.so 1007 . Loading libmirclient.so twice leads to a segfault in libmirprotobuf.so
1008 (LP: #1391976)1008 (LP: #1391976)
1009 . Visible corruption in SDL apps (LP: #1460149)1009 . Visible corruption in SDL apps (LP: #1460149)
1010 . MultiThreadedCompositor::destroy_compositing_threads hangs/deadlocks on1010 . MultiThreadedCompositor::destroy_compositing_threads hangs/deadlocks on
1011 shutdown or display reconfiguration (LP: #1471909)1011 shutdown or display reconfiguration (LP: #1471909)
1012 . ctest/"make test" reports 100% tests pass even when some fail. 1012 . ctest/"make test" reports 100% tests pass even when some fail.
1013 (LP: #1472911)1013 (LP: #1472911)
1014 . Mir server crashed - GLib-CRITICAL **: g_source_get_context: assertion1014 . Mir server crashed - GLib-CRITICAL **: g_source_get_context: assertion
1015 'source->context != NULL || !SOURCE_DESTROYED (source)' failed1015 'source->context != NULL || !SOURCE_DESTROYED (source)' failed
@@ -1018,7 +1018,7 @@
1018 hwc prepare()] (LP: #1474891)1018 hwc prepare()] (LP: #1474891)
1019 . [regression] Input focus delay after switching app back into focus1019 . [regression] Input focus delay after switching app back into focus
1020 (LP: #1480654)1020 (LP: #1480654)
1021 . GLibMainLoopTest.propagates_exception_from_server_action fails with 1021 . GLibMainLoopTest.propagates_exception_from_server_action fails with
1022 GCC 5 in armhf (LP: #1482274)1022 GCC 5 in armhf (LP: #1482274)
1023 . [enhancement] Mir lacks relative mouse support (LP: #1276322)1023 . [enhancement] Mir lacks relative mouse support (LP: #1276322)
1024 . ShmBuffer ignores pixel_format (LP: #1424909)1024 . ShmBuffer ignores pixel_format (LP: #1424909)
@@ -1028,7 +1028,7 @@
1028 (LP: #1439078)1028 (LP: #1439078)
1029 . [regression] The software cursor has a rectangular shadow around it1029 . [regression] The software cursor has a rectangular shadow around it
1030 in mir_proving_server (LP: #1447911)1030 in mir_proving_server (LP: #1447911)
1031 . TestClientCursorAPI.cursor_passed_through_nested_server fails 1031 . TestClientCursorAPI.cursor_passed_through_nested_server fails
1032 intermittently (LP: #1462088)1032 intermittently (LP: #1462088)
1033 . [enhancement] Add support for high colour (15/16-bit colour) clients1033 . [enhancement] Add support for high colour (15/16-bit colour) clients
1034 (LP: #1469673)1034 (LP: #1469673)
@@ -1072,7 +1072,7 @@
1072 . Mircommon ABI bumped to 51072 . Mircommon ABI bumped to 5
1073 . Mirplatform ABI bumped to 81073 . Mirplatform ABI bumped to 8
1074 - Enhancements:1074 - Enhancements:
1075 . mir_demo_server: tweaks, features and improvements 1075 . mir_demo_server: tweaks, features and improvements
1076 . More MirEvent-2.0 related changes and unifications1076 . More MirEvent-2.0 related changes and unifications
1077 . New SurfaceInputDispatcher to replace the android InputDispatcher1077 . New SurfaceInputDispatcher to replace the android InputDispatcher
1078 . New Threaded dispatcher for Dispatchable added1078 . New Threaded dispatcher for Dispatchable added
@@ -1093,12 +1093,12 @@
1093 server start-up has finished (LP: #1451844)1093 server start-up has finished (LP: #1451844)
1094 . build-dependency on g++-4.9 dropped (LP: #1452320)1094 . build-dependency on g++-4.9 dropped (LP: #1452320)
1095 - Bug fixes:1095 - Bug fixes:
1096 . Crash because uncaught exception in mir::events::add_touch 1096 . Crash because uncaught exception in mir::events::add_touch
1097 (LP: #1437357)1097 (LP: #1437357)
1098 . [vegetahd] android buffer allocator does consider hwc alignment1098 . [vegetahd] android buffer allocator does consider hwc alignment
1099 constraints (LP: #1461314)1099 constraints (LP: #1461314)
1100 . [regression] Touch input does not work at all any more (LP: #1464174)1100 . [regression] Touch input does not work at all any more (LP: #1464174)
1101 . Mir emits a mir_motion_action_hover_exit event before of a 1101 . Mir emits a mir_motion_action_hover_exit event before of a
1102 mir_motion_action_pointer_down (LP: #1419048)1102 mir_motion_action_pointer_down (LP: #1419048)
1103 . [testsfail] NestedInput.nested_event_filter_receives_keyboard_from_host1103 . [testsfail] NestedInput.nested_event_filter_receives_keyboard_from_host
1104 failure in CI (LP: #1462033)1104 failure in CI (LP: #1462033)
@@ -1376,8 +1376,8 @@
1376 [ Alberto Aguirre ]1376 [ Alberto Aguirre ]
1377 * New upstream release 0.12.0 (https://launchpad.net/mir/+milestone/0.12.0)1377 * New upstream release 0.12.0 (https://launchpad.net/mir/+milestone/0.12.0)
1378 - Packaging changes:1378 - Packaging changes:
1379 . Client platform packages now include the Mir client platform ABI 1379 . Client platform packages now include the Mir client platform ABI
1380 number. Thusly, mir-client-platform-(mesa|android) is replaced by 1380 number. Thusly, mir-client-platform-(mesa|android) is replaced by
1381 mir-client-platform-(mesa|android)21381 mir-client-platform-(mesa|android)2
1382 . Server graphics platform packages now include the Mir graphics1382 . Server graphics platform packages now include the Mir graphics
1383 platform ABI number. Thusly, mir-platform-graphics-(mesa|android)1383 platform ABI number. Thusly, mir-platform-graphics-(mesa|android)
@@ -1391,7 +1391,7 @@
1391 . [regression] Platform libraries and packages are not versioned thus1391 . [regression] Platform libraries and packages are not versioned thus
1392 are not installable in parallel (LP: #1423591)1392 are not installable in parallel (LP: #1423591)
1393 . [regression] Deadlock in TimeoutFrameDroppingPolicy logic (LP: #1421255)1393 . [regression] Deadlock in TimeoutFrameDroppingPolicy logic (LP: #1421255)
1394 1394
1395 [ CI Train Bot ]1395 [ CI Train Bot ]
1396 * New rebuild forced.1396 * New rebuild forced.
13971397
@@ -1492,7 +1492,7 @@
1492 - ABI summary: Servers need rebuilding, but clients do not;1492 - ABI summary: Servers need rebuilding, but clients do not;
1493 . Mirclient ABI unchanged at 81493 . Mirclient ABI unchanged at 8
1494 . Mircommon ABI unchanged at 31494 . Mircommon ABI unchanged at 3
1495 . Mirplatform ABI bumped to 5 1495 . Mirplatform ABI bumped to 5
1496 . Mirserver ABI bumped to 281496 . Mirserver ABI bumped to 28
1497 - Bug fixes:1497 - Bug fixes:
1498 . [regression] Mir servers (since 0.9) randomly crash in malloc due to1498 . [regression] Mir servers (since 0.9) randomly crash in malloc due to
@@ -1583,7 +1583,7 @@
1583 - Bug fixes:1583 - Bug fixes:
1584 . Add a debug interface to translate from surface to screen coordinates1584 . Add a debug interface to translate from surface to screen coordinates
1585 (LP: #1346633)1585 (LP: #1346633)
1586 . Ensure a buffer requested by a surface is not delivered 1586 . Ensure a buffer requested by a surface is not delivered
1587 after the surface is deleted (LP: #1376324)1587 after the surface is deleted (LP: #1376324)
1588 . Overlays are not displayed onscreen in some positions (LP: #1378326)1588 . Overlays are not displayed onscreen in some positions (LP: #1378326)
1589 . Server aborts when an exception is thrown from the main thread1589 . Server aborts when an exception is thrown from the main thread
@@ -1597,14 +1597,14 @@
1597 (LP: #1303817)1597 (LP: #1303817)
1598 . A prompt session with an invalid application pid should be an error1598 . A prompt session with an invalid application pid should be an error
1599 (LP: #1377968)1599 (LP: #1377968)
1600 . When XDG_RUNTIME_DIR is defined but pointing to a non-existing 1600 . When XDG_RUNTIME_DIR is defined but pointing to a non-existing
1601 directory use "/tmp" (LP: #1304873)1601 directory use "/tmp" (LP: #1304873)
1602 . [regression] demo-shell bypass is not used on fullscreen surfaces if 1602 . [regression] demo-shell bypass is not used on fullscreen surfaces if
1603 there are windowed surfaces behind (LP: #1378706)1603 there are windowed surfaces behind (LP: #1378706)
1604 . Mir upgrade through dist-upgrade installs incorrect platform1604 . Mir upgrade through dist-upgrade installs incorrect platform
1605 (LP: #1378995)1605 (LP: #1378995)
1606 . Fix Mir progressbar example using internal glibc defines(LP: #239272)1606 . Fix Mir progressbar example using internal glibc defines(LP: #239272)
1607 . Stop the default_lifecycle_event_handler raising SIGHUP while 1607 . Stop the default_lifecycle_event_handler raising SIGHUP while
1608 disconnecting (LP: #1386185)1608 disconnecting (LP: #1386185)
1609 . [regression] Mir fails to build with MIR_ENABLE_TESTS=OFF (LP: #1388539)1609 . [regression] Mir fails to build with MIR_ENABLE_TESTS=OFF (LP: #1388539)
1610 . [regression] mir_demo_server_basic does not start (LP: #1391923)1610 . [regression] mir_demo_server_basic does not start (LP: #1391923)
@@ -1722,7 +1722,7 @@
1722 * New upstream release 0.7.3 (https://launchpad.net/mir/+milestone/0.7.3)1722 * New upstream release 0.7.3 (https://launchpad.net/mir/+milestone/0.7.3)
1723 - Bug fixes1723 - Bug fixes
1724 . Fix constructor syntax errors (LP: #1369389)1724 . Fix constructor syntax errors (LP: #1369389)
1725 . server: Workaround for unresponsive clients causing the server to hang 1725 . server: Workaround for unresponsive clients causing the server to hang
1726 (LP: #1350207)1726 (LP: #1350207)
1727 . Relax strict dependencies of graphics drivers on an exact version1727 . Relax strict dependencies of graphics drivers on an exact version
1728 of the libmirplatform2 package. It's blocking CI. (LP: #1370866)1728 of the libmirplatform2 package. It's blocking CI. (LP: #1370866)
@@ -1747,7 +1747,7 @@
1747 [ Alberto Aguirre ]1747 [ Alberto Aguirre ]
1748 * New upstream release 0.7.1 (https://launchpad.net/mir/+milestone/0.7.1)1748 * New upstream release 0.7.1 (https://launchpad.net/mir/+milestone/0.7.1)
1749 - Bug fixes1749 - Bug fixes
1750 . Recycle compositor threads by using a thread pool (LP: #1362841) 1750 . Recycle compositor threads by using a thread pool (LP: #1362841)
17511751
1752 -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Tue, 09 Sep 2014 18:28:01 +00001752 -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Tue, 09 Sep 2014 18:28:01 +0000
17531753
@@ -1796,7 +1796,7 @@
1796 drawn (LP: #1348330)1796 drawn (LP: #1348330)
1797 . Client: Fix SIGTERM dispatch in our default lifecycle event handler1797 . Client: Fix SIGTERM dispatch in our default lifecycle event handler
1798 (LP: #1353867)1798 (LP: #1353867)
1799 . DemoRenderer: Don't try to create a texture of width zero. 1799 . DemoRenderer: Don't try to create a texture of width zero.
1800 (LP: #1358210)1800 (LP: #1358210)
1801 . Fix CI failures (LP: #1358698)1801 . Fix CI failures (LP: #1358698)
1802 . Fix build failure: "variable ‘rc’ set but not used" which happens in1802 . Fix build failure: "variable ‘rc’ set but not used" which happens in
@@ -1974,7 +1974,7 @@
1974 - Bugs fixed:1974 - Bugs fixed:
1975 . Nexus 10 leaks during overlay operations (LP: #1331769)1975 . Nexus 10 leaks during overlay operations (LP: #1331769)
1976 . MultiThreadedCompositor deadlocks (LP: #1335311)1976 . MultiThreadedCompositor deadlocks (LP: #1335311)
1977 . Intermittent test failure in ClientSurfaceEvents can client query 1977 . Intermittent test failure in ClientSurfaceEvents can client query
1978 orientation (LP: #1335741)1978 orientation (LP: #1335741)
1979 . Intermittent test failure in ClientSurfaceEvents/OrientationEvents1979 . Intermittent test failure in ClientSurfaceEvents/OrientationEvents
1980 (LP: #1335752)1980 (LP: #1335752)
@@ -2115,7 +2115,7 @@
2115 where id is an opaque compositor ID of your choosing.2115 where id is an opaque compositor ID of your choosing.
2116 . Scene::set_change_callback() replaced by the more generic:2116 . Scene::set_change_callback() replaced by the more generic:
2117 add_observer() and remove_observer() functions.2117 add_observer() and remove_observer() functions.
2118 . Added default implementation for SceneObserver. 2118 . Added default implementation for SceneObserver.
2119 . SessionCreator renamed to ConnectionCreator.2119 . SessionCreator renamed to ConnectionCreator.
2120 . ConnectedSessions renamed to Connections.2120 . ConnectedSessions renamed to Connections.
2121 . ProtobufSessionCreator renamed to ProtobufConnectionCreator.2121 . ProtobufSessionCreator renamed to ProtobufConnectionCreator.
@@ -2145,9 +2145,9 @@
2145 the mouse pointer is on.2145 the mouse pointer is on.
2146 . New shell controls documented.2146 . New shell controls documented.
2147 - A new testing category, performance test, was introduced. It currently2147 - A new testing category, performance test, was introduced. It currently
2148 runs glmark2-es2 and compares the result to a minimum threshold. 2148 runs glmark2-es2 and compares the result to a minimum threshold.
2149 - MIR_VERSION_MINOR is tied to MIRSERVER_ABI in the sense that a change2149 - MIR_VERSION_MINOR is tied to MIRSERVER_ABI in the sense that a change
2150 in the former now requires dependent projects that a rebuild is 2150 in the former now requires dependent projects that a rebuild is
2151 necessary.2151 necessary.
2152 - SwitchingBundle was replaced by BufferQueue.2152 - SwitchingBundle was replaced by BufferQueue.
2153 - Expand credentials to include uid/gid for session authorizer.2153 - Expand credentials to include uid/gid for session authorizer.
@@ -2173,7 +2173,7 @@
2173 . [regression] unity8 fails to load libmirplatformgraphics2173 . [regression] unity8 fails to load libmirplatformgraphics
2174 (undefined symbol: _ZN3mir8graphics9GLProgramD1Ev). (LP: #1317200)2174 (undefined symbol: _ZN3mir8graphics9GLProgramD1Ev). (LP: #1317200)
2175 . [regression] unity8 rendering artifacts. (LP: #1317260)2175 . [regression] unity8 rendering artifacts. (LP: #1317260)
2176 . [regression] [BufferQueue] 2176 . [regression] [BufferQueue]
2177 BufferQueueTest.compositor_never_owns_client_buffers occasionally2177 BufferQueueTest.compositor_never_owns_client_buffers occasionally
2178 crashes with: what(): unexpected release: buffer was not given to2178 crashes with: what(): unexpected release: buffer was not given to
2179 compositor. (LP: #1317801)2179 compositor. (LP: #1317801)
@@ -2185,16 +2185,16 @@
2185 and toolkit/apps are laggy/throttled. (LP: #1321886)2185 and toolkit/apps are laggy/throttled. (LP: #1321886)
2186 . [regression] [BufferQueue] current_buffer_users vector memory usage2186 . [regression] [BufferQueue] current_buffer_users vector memory usage
2187 grows unbounded. (LP: #1317808)2187 grows unbounded. (LP: #1317808)
2188 . Intermittent test failures in 2188 . Intermittent test failures in
2189 CustomInputDispatcherFixture.custom_input_dispatcher_receives_input.2189 CustomInputDispatcherFixture.custom_input_dispatcher_receives_input.
2190 (LP: #1318587)2190 (LP: #1318587)
2191 . [regression] [BufferQueue] Race condition in 2191 . [regression] [BufferQueue] Race condition in
2192 BufferQueue::compositor_acquire could underflow shared_ptr refcount and2192 BufferQueue::compositor_acquire could underflow shared_ptr refcount and
2193 delete prematurely, crash. (LP: #1318632)2193 delete prematurely, crash. (LP: #1318632)
2194 . Overflow in 2194 . Overflow in
2195 mir::client::rpc::MirSocketRpcChannel::receive_file_descriptors as2195 mir::client::rpc::MirSocketRpcChannel::receive_file_descriptors as
2196 reported by address sanitizer. (LP: #1320821)2196 reported by address sanitizer. (LP: #1320821)
2197 . [regression] [input] Scroll events are now always zero: 2197 . [regression] [input] Scroll events are now always zero:
2198 event.motion.pointer_coordinates[0].vscroll. (LP: #1321077)2198 event.motion.pointer_coordinates[0].vscroll. (LP: #1321077)
2199 . CI failures in CustomInputDispatcherFixture2199 . CI failures in CustomInputDispatcherFixture
2200 .custom_input_dispatcher_gets_started_and_stopped. (LP: #1321215)2200 .custom_input_dispatcher_gets_started_and_stopped. (LP: #1321215)
@@ -2214,7 +2214,7 @@
2214 client connects to Mir. (LP: #1314574)2214 client connects to Mir. (LP: #1314574)
2215 . [regression] Clients can't acquire multiple buffers any more.2215 . [regression] Clients can't acquire multiple buffers any more.
2216 (LP: #1315302)2216 (LP: #1315302)
2217 . [regression] Enabling SwitchingBundleTest 2217 . [regression] Enabling SwitchingBundleTest
2218 DISABLED_synchronous_clients_only_get_two_real_buffers now crashes with2218 DISABLED_synchronous_clients_only_get_two_real_buffers now crashes with
2219 no usable stack trace. It used to only fail. (LP: #1315312)2219 no usable stack trace. It used to only fail. (LP: #1315312)
2220 . [regression] [BufferQueue] double-buffered client freezes as no buffer2220 . [regression] [BufferQueue] double-buffered client freezes as no buffer
@@ -2247,29 +2247,29 @@
2247 - Bugs fixed:2247 - Bugs fixed:
2248 . Stale socket issue. (LP: #1285215)2248 . Stale socket issue. (LP: #1285215)
2249 . Qt render gets blocked on EGLSwapBuffers. (LP: #1292306)2249 . Qt render gets blocked on EGLSwapBuffers. (LP: #1292306)
2250 . Lock order violated found in helgrind (potential deadlock). 2250 . Lock order violated found in helgrind (potential deadlock).
2251 (LP: #1296544)2251 (LP: #1296544)
2252 . [regression] SwitchingBundle in framedropping mode can hang. 2252 . [regression] SwitchingBundle in framedropping mode can hang.
2253 (LP: #1306464)2253 (LP: #1306464)
2254 . [DPMS] Display backlight turns back on almost immediately after2254 . [DPMS] Display backlight turns back on almost immediately after
2255 being turned off. (LP: #1231857)2255 being turned off. (LP: #1231857)
2256 . Wrong frame is seen on wake up/resume/unlock. (LP: #1233564)2256 . Wrong frame is seen on wake up/resume/unlock. (LP: #1233564)
2257 . Nested platform is not testable (LP: #1299101)2257 . Nested platform is not testable (LP: #1299101)
2258 . [regression] mir_demo_server_shell crashes on display resume. 2258 . [regression] mir_demo_server_shell crashes on display resume.
2259 (LP: #1308941)2259 (LP: #1308941)
2260 . Multi-threaded composition is actually mostly serialized by2260 . Multi-threaded composition is actually mostly serialized by
2261 SurfaceStack::guard. (LP: #1234018)2261 SurfaceStack::guard. (LP: #1234018)
2262 . Mirscreencast slows down compositing and makes it very jerky. 2262 . Mirscreencast slows down compositing and makes it very jerky.
2263 (LP: #1280938)2263 (LP: #1280938)
2264 . Mirscreencast can cause clients to render faster than the screen2264 . Mirscreencast can cause clients to render faster than the screen
2265 refresh rate. (LP: #1294361)2265 refresh rate. (LP: #1294361)
2266 . Screen turns on when a new session/surface appears. (LP: #1297876)2266 . Screen turns on when a new session/surface appears. (LP: #1297876)
2267 . mir-doc package is >56MB in size, expands to >100MB of files. 2267 . mir-doc package is >56MB in size, expands to >100MB of files.
2268 (LP: #1304998)2268 (LP: #1304998)
2269 . [regression] Clang: 'mir::test::doubles::MockSurface::visible'2269 . [regression] Clang: 'mir::test::doubles::MockSurface::visible'
2270 hides overloaded virtual function [-Woverloaded-virtual]. 2270 hides overloaded virtual function [-Woverloaded-virtual].
2271 (LP: #1301135)2271 (LP: #1301135)
2272 . [regression] GLRenderer* unit tests have recently become noisy. 2272 . [regression] GLRenderer* unit tests have recently become noisy.
2273 (LP: #1308905)2273 (LP: #1308905)
2274 . FocusController::set_focus_to() no longer seems to raise a session2274 . FocusController::set_focus_to() no longer seems to raise a session
2275 to the top. (LP: #1302689)2275 to the top. (LP: #1302689)
@@ -2443,7 +2443,7 @@
2443 - tools: Add new libmirclientplatform.so to install_on_android.sh.2443 - tools: Add new libmirclientplatform.so to install_on_android.sh.
2444 - Add "mir_demo_standalone_render_overlays", which is a free-standing2444 - Add "mir_demo_standalone_render_overlays", which is a free-standing
2445 example of overlay support.2445 example of overlay support.
2446 - Proper DisplayConfiguration for the AndroidDisplay to be better 2446 - Proper DisplayConfiguration for the AndroidDisplay to be better
2447 prepared for multi-monitor Android.2447 prepared for multi-monitor Android.
2448 - Commenced/continued simplifying the surface class hierarchy: BasicSurface2448 - Commenced/continued simplifying the surface class hierarchy: BasicSurface
2449 has now absorbed SurfaceData.2449 has now absorbed SurfaceData.
@@ -2457,10 +2457,10 @@
2457 . examples: correct "fullscreen-surfaces" option. (LP: #1284554)2457 . examples: correct "fullscreen-surfaces" option. (LP: #1284554)
2458 . Fix mutex data race reported by helgrind in integration test:2458 . Fix mutex data race reported by helgrind in integration test:
2459 SwapperSwappingStress (LP: #1282886)2459 SwapperSwappingStress (LP: #1282886)
2460 . scene: Return null snapshots for sessions without surfaces 2460 . scene: Return null snapshots for sessions without surfaces
2461 (LP: #1281728)2461 (LP: #1281728)
2462 . tests: Address some raciness in2462 . tests: Address some raciness in
2463 MesaDisplayTest.drm_device_change_event_triggers_handler. 2463 MesaDisplayTest.drm_device_change_event_triggers_handler.
2464 (LP: #1283085)2464 (LP: #1283085)
2465 . tests: Suppress spurious memory errors occuring when running the2465 . tests: Suppress spurious memory errors occuring when running the
2466 unit tests on armhf with valgrind. (LP: #1279438)2466 unit tests on armhf with valgrind. (LP: #1279438)
@@ -2471,8 +2471,8 @@
2471 . Set field "current_format" when sending a display config to the2471 . Set field "current_format" when sending a display config to the
2472 server. (LP: #1277343)2472 server. (LP: #1277343)
2473 . Fix crash in android devices by working around a subtle threading2473 . Fix crash in android devices by working around a subtle threading
2474 bug, use a dummy thead_local array to push the gl/egl context TLS 2474 bug, use a dummy thead_local array to push the gl/egl context TLS
2475 into a region where the future wait code does not overwrite it. 2475 into a region where the future wait code does not overwrite it.
2476 (LP: #1280086)2476 (LP: #1280086)
2477 . compositor: calling SwitchingBundle::force_requests_to_complete()2477 . compositor: calling SwitchingBundle::force_requests_to_complete()
2478 can be a no-op when there are no requests. (LP: #1281145)2478 can be a no-op when there are no requests. (LP: #1281145)
@@ -2586,7 +2586,7 @@
2586 - compositor: ignore double requests to start or stop the2586 - compositor: ignore double requests to start or stop the
2587 MultiThreadedCompositor.2587 MultiThreadedCompositor.
2588 - Add DisplayBuffer::orientation(), to tell the Renderer if we need it2588 - Add DisplayBuffer::orientation(), to tell the Renderer if we need it
2589 to do screen rotation in GL (for platforms which don't implement 2589 to do screen rotation in GL (for platforms which don't implement
2590 rotation natively) Fixes: https://bugs.launchpad.net/bugs/1203215.2590 rotation natively) Fixes: https://bugs.launchpad.net/bugs/1203215.
2591 - graphics: add an post_update function that takes a list of renderables2591 - graphics: add an post_update function that takes a list of renderables
2592 to the display buffer. This will let the display buffer take advantage2592 to the display buffer. This will let the display buffer take advantage
@@ -2629,7 +2629,7 @@
2629 background (LP: #1256702)2629 background (LP: #1256702)
2630 . Compiling without tests fails (-DMIR_ENABLE_TESTS=NO) (LP: #1263724)2630 . Compiling without tests fails (-DMIR_ENABLE_TESTS=NO) (LP: #1263724)
2631 . examples, doc: Make it clear and consistent how to use2631 . examples, doc: Make it clear and consistent how to use
2632 a non-root client with a root compositor endpoint. 2632 a non-root client with a root compositor endpoint.
2633 (LP: #1272143)2633 (LP: #1272143)
2634 . Avoid linking to umockdev on platforms (android) which don't yet2634 . Avoid linking to umockdev on platforms (android) which don't yet
2635 use it. This allows mir_unit_tests to run on touch images again2635 use it. This allows mir_unit_tests to run on touch images again
@@ -2655,7 +2655,7 @@
2655 set. Otherwise SwitchingBundle::compositor_acquire could follow a bogus2655 set. Otherwise SwitchingBundle::compositor_acquire could follow a bogus
2656 code path. (LP:#1270964)2656 code path. (LP:#1270964)
2657 . tests: Override configuration to avoid creating an (unused)2657 . tests: Override configuration to avoid creating an (unused)
2658 filesystem endpoint for connections when using InProcessServer. 2658 filesystem endpoint for connections when using InProcessServer.
2659 (LP: #1271604)2659 (LP: #1271604)
2660 . frontend: ensure that BasicConnector threads don't exit2660 . frontend: ensure that BasicConnector threads don't exit
2661 immediately. (LP: #1271655)2661 immediately. (LP: #1271655)
@@ -2809,7 +2809,7 @@
2809 MIR_SERVER_NAME=.2809 MIR_SERVER_NAME=.
2810 - graphics,gbm: Inform the EGL platform about the used gbm device when2810 - graphics,gbm: Inform the EGL platform about the used gbm device when
2811 using the native GBM platform2811 using the native GBM platform
2812 - examples: Restore GL state after initializing buffers, fixing crashes 2812 - examples: Restore GL state after initializing buffers, fixing crashes
2813 observed in render_surfaces (LP: #1234563)2813 observed in render_surfaces (LP: #1234563)
2814 - Continue refactoring the mir android display classes.2814 - Continue refactoring the mir android display classes.
2815 - shell: Hoist focus control functions needed by unity-mir into2815 - shell: Hoist focus control functions needed by unity-mir into
28162816
=== modified file 'doc/android_new_device_bringup.md'
--- doc/android_new_device_bringup.md 2016-07-18 07:38:38 +0000
+++ doc/android_new_device_bringup.md 2016-10-27 03:52:22 +0000
@@ -10,7 +10,7 @@
10Mir has a test suite available in the package mir-test-tools that checks the10Mir has a test suite available in the package mir-test-tools that checks the
11operation of Mir.11operation of Mir.
12Mir also provides a test suite in mir-android-diagnostics that is helpful in12Mir also provides a test suite in mir-android-diagnostics that is helpful in
13checking how a new device will work with Mir. 13checking how a new device will work with Mir.
1414
15##Mir and libhybris##15##Mir and libhybris##
16Vendor provided drivers are compiled against Android's bionic libc.16Vendor provided drivers are compiled against Android's bionic libc.
@@ -21,7 +21,7 @@
21tests to see if mir will run on the device. The tests are aimed checking21tests to see if mir will run on the device. The tests are aimed checking
22the operation of hybris on non-Mir graphics stacks. Furthermore, they test a22the operation of hybris on non-Mir graphics stacks. Furthermore, they test a
23more limited range of hardware module capabilities (e.g. they don't test HWC23more limited range of hardware module capabilities (e.g. they don't test HWC
24overlay capability) 24overlay capability)
2525
26###Mir Client Software Rendering###26###Mir Client Software Rendering###
2727
@@ -45,7 +45,7 @@
45This test checks that the display can post content to the screen. It should45This test checks that the display can post content to the screen. It should
46flash the screen briefly and run without error. Since it is important that46flash the screen briefly and run without error. Since it is important that
47screen looks flawless, a visual inspection should also be perfomed using47screen looks flawless, a visual inspection should also be perfomed using
48mir_demo_standalone_render_to_fb and mir_demo_standalone_render_overlays 48mir_demo_standalone_render_to_fb and mir_demo_standalone_render_overlays
4949
50###Mir GPU buffer allocations (gralloc tests)###50###Mir GPU buffer allocations (gralloc tests)###
5151
@@ -113,22 +113,22 @@
113Mir has some android specific options for watching HWC interactions. This113Mir has some android specific options for watching HWC interactions. This
114option is available with mir_demo_standalone_* and mir_demo_server_*114option is available with mir_demo_standalone_* and mir_demo_server_*
115115
116If you run 116If you run
117117
118 mir_proving_server --hwc-report log118 mir_proving_server --hwc-report log
119119
120You will get output similar to this:120You will get output similar to this:
121121
122 before prepare():122 before prepare():
123 # | pos {l,t,r,b} | crop {l,t,r,b} | transform | blending | 123 # | pos {l,t,r,b} | crop {l,t,r,b} | transform | blending |
124 0 | { 0, 0, 512, 512} | { 0, 0, 512, 512} | NONE | NONE | 124 0 | { 0, 0, 512, 512} | { 0, 0, 512, 512} | NONE | NONE |
125 1 | { 80, 80, 592, 592} | { 0, 0, 512, 512} | NONE | NONE | 125 1 | { 80, 80, 592, 592} | { 0, 0, 512, 512} | NONE | NONE |
126 2 | { 0, 0, 768,1280} | { 0, 0, 768,1280} | NONE | NONE | 126 2 | { 0, 0, 768,1280} | { 0, 0, 768,1280} | NONE | NONE |
127 after prepare():127 after prepare():
128 # | Type | 128 # | Type |
129 0 | OVERLAY | 129 0 | OVERLAY |
130 1 | OVERLAY | 130 1 | OVERLAY |
131 2 | FB_TARGET | 131 2 | FB_TARGET |
132 set list():132 set list():
133 # | handle133 # | handle
134 0 | 0x2183540134 0 | 0x2183540
@@ -142,8 +142,8 @@
142vsync signal and the blanking are also logged.142vsync signal and the blanking are also logged.
143143
144The "--hwc-report log" option should work with all android-based mir servers144The "--hwc-report log" option should work with all android-based mir servers
145and demo standalone programs. If its more convenient, setting 145and demo standalone programs. If its more convenient, setting
146MIR_SERVER_HWC_REPORT=log to the environment of the running server will give 146MIR_SERVER_HWC_REPORT=log to the environment of the running server will give
147the hwc report on stdout.147the hwc report on stdout.
148148
149###Android platform quirks###149###Android platform quirks###
@@ -164,7 +164,7 @@
164164
165This means that Mir does not support the version of hwc on the device.165This means that Mir does not support the version of hwc on the device.
166As of Feb 2016, Mir supports the legacy FB module, as well as HWC versions166As of Feb 2016, Mir supports the legacy FB module, as well as HWC versions
1671.0, 1.1, 1.2, 1.3, and 1.4. 1671.0, 1.1, 1.2, 1.3, and 1.4.
168168
169If you run169If you run
170170
171171
=== modified file 'doc/android_technical_details.md'
--- doc/android_technical_details.md 2015-02-22 07:46:25 +0000
+++ doc/android_technical_details.md 2016-10-27 03:52:22 +0000
@@ -35,6 +35,6 @@
35later. The deprecated FB HAL module from android's libhardware should also work.35later. The deprecated FB HAL module from android's libhardware should also work.
36If you are attempting to get mir to work on a new device, check out36If you are attempting to get mir to work on a new device, check out
37\subpage android_new_device_bringup "this page" for suggestions on37\subpage android_new_device_bringup "this page" for suggestions on
38troubleshooting. You can also 38troubleshooting. You can also
39<a href="https://bugs.launchpad.net/mir">file a bug,</a> being very specific39<a href="https://bugs.launchpad.net/mir">file a bug,</a> being very specific
40about the chipset, GPU, and driver versions that your phone has. 40about the chipset, GPU, and driver versions that your phone has.
4141
=== modified file 'doc/building_source_for_arm.md'
--- doc/building_source_for_arm.md 2016-09-08 02:58:56 +0000
+++ doc/building_source_for_arm.md 2016-10-27 03:52:22 +0000
@@ -7,7 +7,7 @@
7Building on the ARM device7Building on the ARM device
8--------------------------8--------------------------
99
10If you have an ARM device you should be able to compile and install directly 10If you have an ARM device you should be able to compile and install directly
11on the device. Although this will usually be significantly slower than using a11on the device. Although this will usually be significantly slower than using a
12desktop. On the armhf or arm64 target device just follow these steps:12desktop. On the armhf or arm64 target device just follow these steps:
1313
@@ -63,7 +63,7 @@
6363
64 * <a href="https://wiki.debian.org/sbuild"> https://wiki.debian.org/sbuild</a>64 * <a href="https://wiki.debian.org/sbuild"> https://wiki.debian.org/sbuild</a>
65 * <a href="https://wiki.ubuntu.com/SimpleSbuild">65 * <a href="https://wiki.ubuntu.com/SimpleSbuild">
66https://wiki.ubuntu.com/SimpleSbuild</a> 66https://wiki.ubuntu.com/SimpleSbuild</a>
6767
68If you do not wish to run the Mir test suite during package generation, set68If you do not wish to run the Mir test suite during package generation, set
69DEB_BUILD_OPTIONS=nocheck to your environment69DEB_BUILD_OPTIONS=nocheck to your environment
@@ -76,20 +76,20 @@
7676
77 $ cd mir_source_dir77 $ cd mir_source_dir
78 $ debuild -S -uc -us78 $ debuild -S -uc -us
79 $ cd .. 79 $ cd ..
80 $ sbuild -d vivid --arch armhf mir_<version_string>.dsc80 $ sbuild -d vivid --arch armhf mir_<version_string>.dsc
8181
82Cross-compile sbuild package generation82Cross-compile sbuild package generation
83---------------------------------------83---------------------------------------
8484
85This uses a cross-compile toolchain to compile the package, and generally 85This uses a cross-compile toolchain to compile the package, and generally
86should be faster than the emulated sbuild package generation.86should be faster than the emulated sbuild package generation.
8787
88Substitute \<version_string> for the .dsc file name generated by the debuild 88Substitute \<version_string> for the .dsc file name generated by the debuild
89command.89command.
9090
91 $ cd mir_source_dir91 $ cd mir_source_dir
92 $ debuild -S -uc -us92 $ debuild -S -uc -us
93 $ cd .. 93 $ cd ..
94 $ sbuild -d vivid --host armhf --build amd64 mir_\<version_string>.dsc94 $ sbuild -d vivid --host armhf --build amd64 mir_\<version_string>.dsc
9595
9696
=== modified file 'doc/building_source_for_pc.md'
--- doc/building_source_for_pc.md 2016-01-29 08:18:22 +0000
+++ doc/building_source_for_pc.md 2016-10-27 03:52:22 +0000
@@ -57,15 +57,15 @@
57 $ bin/mir_demo_server --launch_client bin/mir_demo_client_multiwin57 $ bin/mir_demo_server --launch_client bin/mir_demo_client_multiwin
5858
59Other examples described elsewhere in this documentation assume you're using the59Other examples described elsewhere in this documentation assume you're using the
60installed version and simply need "bin/" adding to specify the local build. 60installed version and simply need "bin/" adding to specify the local build.
6161
6262
63Install Mir63Install Mir
64-----------64-----------
6565
66*It should not be necessary to install Mir for experimental purposes (see 66*It should not be necessary to install Mir for experimental purposes (see
67"Running Mir" above).* Further, if you are using an Ubuntu derived disto then67"Running Mir" above).* Further, if you are using an Ubuntu derived disto then
68there's likely to be existing Mir binaries elsewhere that may interact badly 68there's likely to be existing Mir binaries elsewhere that may interact badly
69with a second install.69with a second install.
7070
71To install Mir just use the normal make install command:71To install Mir just use the normal make install command:
@@ -78,7 +78,7 @@
78NB You may need "sudo ldconfig" to refresh the cache before the installed78NB You may need "sudo ldconfig" to refresh the cache before the installed
79programs work.79programs work.
8080
81If you install to a non-standard location, keep in mind that you will probably 81If you install to a non-standard location, keep in mind that you will probably
82need to properly set the PKG_CONFIG_PATH environment variable to allow other82need to properly set the PKG_CONFIG_PATH environment variable to allow other
83applications to build against Mir, and LD_LIBRARY_PATH to allow applications to83applications to build against Mir, and LD_LIBRARY_PATH to allow applications to
84find the Mir libraries at runtime.84find the Mir libraries at runtime.
8585
=== modified file 'doc/demo_server_controls.md'
--- doc/demo_server_controls.md 2016-01-29 08:18:22 +0000
+++ doc/demo_server_controls.md 2016-10-27 03:52:22 +0000
@@ -39,7 +39,7 @@
3939
40For those writing client code request to set the surface attribute40For those writing client code request to set the surface attribute
41`mir_surface_attrib_state` are honoured:41`mir_surface_attrib_state` are honoured:
42 - `mir_surface_state_restored`: restores the window 42 - `mir_surface_state_restored`: restores the window
43 - `mir_surface_state_maximized`: maximizes size43 - `mir_surface_state_maximized`: maximizes size
44 - `mir_surface_state_vertmaximized`: maximizes height44 - `mir_surface_state_vertmaximized`: maximizes height
45 - `mir_surface_state_horizmaximized`: maximizes width45 - `mir_surface_state_horizmaximized`: maximizes width
4646
=== modified file 'doc/dso_versioning_guide.md'
--- doc/dso_versioning_guide.md 2016-07-18 07:38:38 +0000
+++ doc/dso_versioning_guide.md 2016-10-27 03:52:22 +0000
@@ -185,7 +185,7 @@
185versions. For the moment, we can not bother trying to make this work.185versions. For the moment, we can not bother trying to make this work.
186186
187187
188See also: 188See also:
189---------189---------
190[Binutils manual](https://sourceware.org/binutils/docs/ld/VERSION.html)190[Binutils manual](https://sourceware.org/binutils/docs/ld/VERSION.html)
191191
192192
=== modified file 'doc/extra.css'
--- doc/extra.css 2013-07-02 13:38:43 +0000
+++ doc/extra.css 2016-10-27 03:52:22 +0000
@@ -8,7 +8,7 @@
8 margin: 0px;8 margin: 0px;
9 padding: 2px 0px;9 padding: 2px 0px;
10}10}
11 11
12#projectbrief12#projectbrief
13{13{
14 font: 120% Ubuntu,Arial,sans-serif;14 font: 120% Ubuntu,Arial,sans-serif;
1515
=== modified file 'doc/installing_prebuilt_on_android.md'
--- doc/installing_prebuilt_on_android.md 2015-04-28 07:54:10 +0000
+++ doc/installing_prebuilt_on_android.md 2016-10-27 03:52:22 +0000
@@ -4,7 +4,7 @@
4Supported Devices4Supported Devices
5-----------------5-----------------
66
7Mir has been used on an array of devices powered by the factory-provided 7Mir has been used on an array of devices powered by the factory-provided
8android drivers. Mir currently supports the fb module and the hwc module8android drivers. Mir currently supports the fb module and the hwc module
9up to version 1.3. If you encounter a problem with your device, please9up to version 1.3. If you encounter a problem with your device, please
10file a bug and we'll see if we can help.10file a bug and we'll see if we can help.
@@ -12,7 +12,7 @@
12Installing Mir12Installing Mir
13--------------13--------------
1414
15Mir should be installed and used by default on Ubuntu Touch images. Mir is 15Mir should be installed and used by default on Ubuntu Touch images. Mir is
16available in the Ubuntu archive. Ensure that the android platform drivers,16available in the Ubuntu archive. Ensure that the android platform drivers,
17available in the mir-graphics-drivers-android metapackage, are installed for17available in the mir-graphics-drivers-android metapackage, are installed for
18an android-based device.18an android-based device.
1919
=== modified file 'doc/mainpage.md'
--- doc/mainpage.md 2016-10-12 06:03:15 +0000
+++ doc/mainpage.md 2016-10-27 03:52:22 +0000
@@ -56,7 +56,7 @@
56lp:~mir-team/mir/development-branch56lp:~mir-team/mir/development-branch
5757
58Approximately fortnightly, this development branch is promoted to the branch58Approximately fortnightly, this development branch is promoted to the branch
59used for the ubuntu archive and touch images. Please submit any merge proposals 59used for the ubuntu archive and touch images. Please submit any merge proposals
60against the development branch.60against the development branch.
6161
62Please file bug reports at: https://bugs.launchpad.net/mir62Please file bug reports at: https://bugs.launchpad.net/mir
@@ -82,23 +82,23 @@
82Mir server is written as a library which allows the server code to be adapted82Mir server is written as a library which allows the server code to be adapted
83for bespoke applications.83for bespoke applications.
8484
85 - \subpage server_example.cpp 85 - \subpage server_example.cpp
86 "server_example.cpp: a test executable hosting the following"86 "server_example.cpp: a test executable hosting the following"
87 - \subpage server_example_input_event_filter.cpp 87 - \subpage server_example_input_event_filter.cpp
88 "server_example_input_event_filter.cpp: provide a Quit command"88 "server_example_input_event_filter.cpp: provide a Quit command"
89 - \subpage server_example_display_configuration_policy.cpp 89 - \subpage server_example_display_configuration_policy.cpp
90 "server_example_display_configuration_policy.cpp: configuring display layout"90 "server_example_display_configuration_policy.cpp: configuring display layout"
91 - \subpage server_example_input_filter.cpp 91 - \subpage server_example_input_filter.cpp
92 "server_example_input_filter.cpp: print input events to stdout"92 "server_example_input_filter.cpp: print input events to stdout"
93 - \subpage server_example_log_options.cpp 93 - \subpage server_example_log_options.cpp
94 "server_example_log_options.cpp: replace Mir logger with glog"94 "server_example_log_options.cpp: replace Mir logger with glog"
95 - \subpage server_example_basic_window_manager.h 95 - \subpage server_example_basic_window_manager.h
96 "server_example_basic_window_manager.h: How to wire up a window manager"96 "server_example_basic_window_manager.h: How to wire up a window manager"
97 - \subpage server_example_window_management.cpp 97 - \subpage server_example_window_management.cpp
98 "server_example_window_management.cpp: simple window management examples"98 "server_example_window_management.cpp: simple window management examples"
99 - \subpage server_example_canonical_window_manager.cpp 99 - \subpage server_example_canonical_window_manager.cpp
100 "server_example_canonical_window_manager.cpp: canonical window management policy"100 "server_example_canonical_window_manager.cpp: canonical window management policy"
101 - \subpage server_example_custom_compositor.cpp 101 - \subpage server_example_custom_compositor.cpp
102 "server_example_custom_compositor.cpp: demonstrate writing an alternative GL rendering code"102 "server_example_custom_compositor.cpp: demonstrate writing an alternative GL rendering code"
103103
104Working on Mir code104Working on Mir code
@@ -106,7 +106,7 @@
106106
107 - \ref md_README "Mir Read me"107 - \ref md_README "Mir Read me"
108 - \ref md_HACKING "Mir hacking guide"108 - \ref md_HACKING "Mir hacking guide"
109 - \subpage android_new_device_bringup "New android device bringup" 109 - \subpage android_new_device_bringup "New android device bringup"
110 - \ref component_reports110 - \ref component_reports
111 - \ref dso_versioning_guide111 - \ref dso_versioning_guide
112 - \ref abi_compatibility_tools112 - \ref abi_compatibility_tools
113113
=== modified file 'doc/setup_kvm_for_mir.md'
--- doc/setup_kvm_for_mir.md 2015-06-17 05:20:42 +0000
+++ doc/setup_kvm_for_mir.md 2016-10-27 03:52:22 +0000
@@ -18,7 +18,7 @@
18More details on setting up KVM can be found in the18More details on setting up KVM can be found in the
19[wiki](https://help.ubuntu.com/community/KVM/Installation).19[wiki](https://help.ubuntu.com/community/KVM/Installation).
2020
21Now create a new virtual machine with virt-manager and a current Linux boot iso 21Now create a new virtual machine with virt-manager and a current Linux boot iso
22image or reconfigure an existing installation.22image or reconfigure an existing installation.
2323
24Configure the virtual machine24Configure the virtual machine
@@ -29,7 +29,7 @@
29configuration entries: Video and Display.29configuration entries: Video and Display.
3030
31* Open the Display settings and select SPICE instead of KVM31* Open the Display settings and select SPICE instead of KVM
32* Open the Video settings and select QXL as model. 32* Open the Video settings and select QXL as model.
3333
34Now boot the machine and build a new kernel and verify that you have the right34Now boot the machine and build a new kernel and verify that you have the right
35Mesa package.35Mesa package.
@@ -41,7 +41,7 @@
41Since the DRM QXL driver only provides KMS, GEM and dma-buf support, and no 3D41Since the DRM QXL driver only provides KMS, GEM and dma-buf support, and no 3D
42GPU emulation or forwarding, Mesa will load the kms-swrast driver. This driver42GPU emulation or forwarding, Mesa will load the kms-swrast driver. This driver
43is available since Mesa 10.3.0. The necessary support for dmabuf fds and crtc43is available since Mesa 10.3.0. The necessary support for dmabuf fds and crtc
44handling in QXL is available since Linux 3.18. 44handling in QXL is available since Linux 3.18.
4545
46With that we have enough support for EGL and GLESv2 to run Mir.46With that we have enough support for EGL and GLESv2 to run Mir.
4747
4848
=== modified file 'doc/setup_vmware_for_mir.md'
--- doc/setup_vmware_for_mir.md 2016-09-08 02:58:56 +0000
+++ doc/setup_vmware_for_mir.md 2016-10-27 03:52:22 +0000
@@ -33,9 +33,9 @@
3333
349. Try out a Mir demo server:349. Try out a Mir demo server:
35 1. Change to VT2 and run35 1. Change to VT2 and run
36 36
37 `$ sudo mir_demo_server --launch-client mir_demo_client_egltriangle`37 `$ sudo mir_demo_server --launch-client mir_demo_client_egltriangle`
38 38
39 2. You should see a window with a triangle spinning fast39 2. You should see a window with a triangle spinning fast
40 3. Use Alt + click + drag to move the window around40 3. Use Alt + click + drag to move the window around
41 4. Use Ctrl+Alt+BkSp to stop the server41 4. Use Ctrl+Alt+BkSp to stop the server
4242
=== modified file 'doc/using_mir_on_android.md'
--- doc/using_mir_on_android.md 2016-01-29 08:18:22 +0000
+++ doc/using_mir_on_android.md 2016-10-27 03:52:22 +0000
@@ -5,7 +5,7 @@
5you're already using Mir.5you're already using Mir.
66
7If you would like to run a pre-release version of Mir on your device, you'll7If you would like to run a pre-release version of Mir on your device, you'll
8need to recompile our downstream dependencies (unity-system-compositor and 8need to recompile our downstream dependencies (unity-system-compositor and
9qtmir) to ensure ABI compatibility with the pre-release version of Mir.9qtmir) to ensure ABI compatibility with the pre-release version of Mir.
1010
11Using some demo applications11Using some demo applications
1212
=== modified file 'doc/using_mir_on_pc.md'
--- doc/using_mir_on_pc.md 2016-01-29 08:18:22 +0000
+++ doc/using_mir_on_pc.md 2016-10-27 03:52:22 +0000
@@ -43,15 +43,15 @@
43To run Mir as an X client start it from an X terminal:43To run Mir as an X client start it from an X terminal:
4444
45 $ mir_demo_server --launch-client mir_demo_client_multiwin45 $ mir_demo_server --launch-client mir_demo_client_multiwin
46 46
47You can start additional Mir clients, for example (in a new terminal):47You can start additional Mir clients, for example (in a new terminal):
4848
49 $ mir_demo_egltriangle49 $ mir_demo_egltriangle
50 50
51To exit from Mir:51To exit from Mir:
52 52
53 <Ctrl+Alt+BkSp>53 <Ctrl+Alt+BkSp>
54 54
55Note: up to Mir 0.18 it is also necessary to specify `--platform-input-lib` when55Note: up to Mir 0.18 it is also necessary to specify `--platform-input-lib` when
56starting the server:56starting the server:
57 - for Mir-0.17 add: `--platform-input-lib server-mesa-x11.so.6`57 - for Mir-0.17 add: `--platform-input-lib server-mesa-x11.so.6`
@@ -62,20 +62,20 @@
62To run Mir natively on a PC/desktop/laptop:62To run Mir natively on a PC/desktop/laptop:
6363
64 $ sudo DISPLAY= mir_demo_server --vt 1 --arw-file64 $ sudo DISPLAY= mir_demo_server --vt 1 --arw-file
65 65
66This will switch you to a Mir session on VT1. Switch back to your X-based 66This will switch you to a Mir session on VT1. Switch back to your X-based
67desktop:67desktop:
6868
69 <Ctrl+Alt+F7>69 <Ctrl+Alt+F7>
70 70
71In a new terminal:71In a new terminal:
7272
73 $ mir_demo_client_multiwin -m /tmp/mir_socket73 $ mir_demo_client_multiwin -m /tmp/mir_socket
74 74
75Switch back to Mir.75Switch back to Mir.
7676
77 <Ctrl+Alt+F1>77 <Ctrl+Alt+F1>
78 78
79Watch your friends be amazed!79Watch your friends be amazed!
8080
81To exit from Mir:81To exit from Mir:
8282
=== modified file 'examples/animated_cursor_demo_client.c'
--- examples/animated_cursor_demo_client.c 2016-10-21 07:53:23 +0000
+++ examples/animated_cursor_demo_client.c 2016-10-27 03:52:22 +0000
@@ -39,7 +39,7 @@
3939
40 MirGraphicsRegion region;40 MirGraphicsRegion region;
41 mir_buffer_stream_get_graphics_region(stream, &region);41 mir_buffer_stream_get_graphics_region(stream, &region);
42 42
43 for (int y = 0; y < region.height; ++y)43 for (int y = 0; y < region.height; ++y)
44 {44 {
45 for (int x = 0; x < region.width; ++x)45 for (int x = 0; x < region.width; ++x)
@@ -62,7 +62,7 @@
62 uint32_t* pixel = (uint32_t*)(origin + x*bpp + y*region.stride);62 uint32_t* pixel = (uint32_t*)(origin + x*bpp + y*region.stride);
63 *pixel = foreground;63 *pixel = foreground;
64 }64 }
65 65
66 mir_buffer_stream_swap_buffers_sync(stream);66 mir_buffer_stream_swap_buffers_sync(stream);
67}67}
6868
@@ -76,7 +76,7 @@
76 MirCursorConfiguration* conf = mir_cursor_configuration_from_buffer_stream(stream, 0, 0);76 MirCursorConfiguration* conf = mir_cursor_configuration_from_buffer_stream(stream, 0, 0);
77 mir_wait_for(mir_surface_configure_cursor(surface, conf));77 mir_wait_for(mir_surface_configure_cursor(surface, conf));
78 mir_cursor_configuration_destroy(conf);78 mir_cursor_configuration_destroy(conf);
79 79
80 return stream;80 return stream;
81}81}
8282
8383
=== modified file 'examples/client_helpers.cpp'
--- examples/client_helpers.cpp 2016-01-29 08:18:22 +0000
+++ examples/client_helpers.cpp 2016-10-27 03:52:22 +0000
@@ -131,7 +131,7 @@
131 mir_connection_get_available_surface_formats(connection, pixel_formats, mir_pixel_formats, &valid_formats);131 mir_connection_get_available_surface_formats(connection, pixel_formats, mir_pixel_formats, &valid_formats);
132 if (valid_formats == 0)132 if (valid_formats == 0)
133 throw std::runtime_error("no pixel formats for surface");133 throw std::runtime_error("no pixel formats for surface");
134 selected_format = pixel_formats[0]; 134 selected_format = pixel_formats[0];
135 //select an 8 bit opaque format if we can135 //select an 8 bit opaque format if we can
136 if (!prefers_alpha)136 if (!prefers_alpha)
137 {137 {
@@ -145,7 +145,7 @@
145 }145 }
146 }146 }
147 }147 }
148 148
149 auto deleter = [](MirSurfaceSpec *spec) { mir_surface_spec_release(spec); };149 auto deleter = [](MirSurfaceSpec *spec) { mir_surface_spec_release(spec); };
150 std::unique_ptr<MirSurfaceSpec, decltype(deleter)> spec{150 std::unique_ptr<MirSurfaceSpec, decltype(deleter)> spec{
151 mir_connection_create_spec_for_normal_surface(connection, width, height, selected_format),151 mir_connection_create_spec_for_normal_surface(connection, width, height, selected_format),
152152
=== modified file 'examples/client_helpers.h'
--- examples/client_helpers.h 2016-07-18 07:38:38 +0000
+++ examples/client_helpers.h 2016-10-27 03:52:22 +0000
@@ -26,7 +26,7 @@
2626
27namespace mir27namespace mir
28{28{
29namespace examples 29namespace examples
30{30{
31class Connection31class Connection
32{32{
3333
=== modified file 'examples/client_touch_validator.cpp'
--- examples/client_touch_validator.cpp 2016-10-21 07:53:23 +0000
+++ examples/client_touch_validator.cpp 2016-10-27 03:52:22 +0000
@@ -79,7 +79,7 @@
79 must_be_present.erase(it);79 must_be_present.erase(it);
80 }80 }
81 // Here we validate condition 481 // Here we validate condition 4
82 else if (mir_touch_event_action(event, i) == mir_touch_action_down) 82 else if (mir_touch_event_action(event, i) == mir_touch_action_down)
83 {83 {
84 if (found_a_up_down)84 if (found_a_up_down)
85 printf("Found too many downs in one event\n");85 printf("Found too many downs in one event\n");
@@ -99,16 +99,16 @@
99 printf("We received a touch which did not contain all required IDs\n");99 printf("We received a touch which did not contain all required IDs\n");
100 return false;100 return false;
101 }101 }
102 102
103 return true;103 return true;
104}104}
105 105
106class TouchState106class TouchState
107{107{
108public:108public:
109 TouchState() : last_event(nullptr) {}109 TouchState() : last_event(nullptr) {}
110 ~TouchState() { if (last_event) mir_event_unref(last_event); }110 ~TouchState() { if (last_event) mir_event_unref(last_event); }
111 111
112 void record_event(MirTouchEvent const* event)112 void record_event(MirTouchEvent const* event)
113 {113 {
114 if (!last_event)114 if (!last_event)
@@ -118,7 +118,7 @@
118 }118 }
119 if (!validate_events(reinterpret_cast<MirTouchEvent const*>(last_event), event))119 if (!validate_events(reinterpret_cast<MirTouchEvent const*>(last_event), event))
120 abort();120 abort();
121 121
122 mir_event_unref(last_event);122 mir_event_unref(last_event);
123 last_event = mir_event_ref(reinterpret_cast<MirEvent const*>(event));123 last_event = mir_event_ref(reinterpret_cast<MirEvent const*>(event));
124 }124 }
@@ -133,7 +133,7 @@
133 auto tev = mir_input_event_get_touch_event(event);133 auto tev = mir_input_event_get_touch_event(event);
134 state->record_event(tev);134 state->record_event(tev);
135}135}
136 136
137void on_event(MirSurface * /*surface*/, const MirEvent *event, void *context)137void on_event(MirSurface * /*surface*/, const MirEvent *event, void *context)
138{138{
139 TouchState *state = (TouchState*)context;139 TouchState *state = (TouchState*)context;
140140
=== modified file 'examples/cursors_demo_client.c'
--- examples/cursors_demo_client.c 2016-10-21 07:53:23 +0000
+++ examples/cursors_demo_client.c 2016-10-27 03:52:22 +0000
@@ -46,11 +46,11 @@
4646
47 size_t num_cursors = sizeof(cursors)/sizeof(*cursors);47 size_t num_cursors = sizeof(cursors)/sizeof(*cursors);
48 size_t real_index = cursor_index % num_cursors;48 size_t real_index = cursor_index % num_cursors;
49 49
50 MirCursorConfiguration *conf = mir_cursor_configuration_from_name(cursors[real_index]);50 MirCursorConfiguration *conf = mir_cursor_configuration_from_name(cursors[real_index]);
5151
52 mir_wait_for(mir_surface_configure_cursor(surface, conf));52 mir_wait_for(mir_surface_configure_cursor(surface, conf));
53 53
54 mir_cursor_configuration_destroy(conf);54 mir_cursor_configuration_destroy(conf);
55}55}
5656
5757
=== modified file 'examples/demo_client_display_config.c'
--- examples/demo_client_display_config.c 2016-10-21 07:53:23 +0000
+++ examples/demo_client_display_config.c 2016-10-27 03:52:22 +0000
@@ -333,13 +333,13 @@
333{333{
334 (void) surface;334 (void) surface;
335 struct ClientContext *ctx = (struct ClientContext*) context;335 struct ClientContext *ctx = (struct ClientContext*) context;
336 336
337 if (mir_event_get_type(event) != mir_event_type_input)337 if (mir_event_get_type(event) != mir_event_type_input)
338 return;338 return;
339 MirInputEvent const* input_event = mir_event_get_input_event(event);339 MirInputEvent const* input_event = mir_event_get_input_event(event);
340 if (mir_input_event_get_type(input_event) != mir_input_event_type_key)340 if (mir_input_event_get_type(input_event) != mir_input_event_type_key)
341 return;341 return;
342 342
343 handle_keyboard_event(ctx, mir_input_event_get_keyboard_event(input_event));343 handle_keyboard_event(ctx, mir_input_event_get_keyboard_event(input_event));
344}344}
345345
346346
=== modified file 'examples/eglapp.c'
--- examples/eglapp.c 2016-10-21 07:53:23 +0000
+++ examples/eglapp.c 2016-10-27 03:52:22 +0000
@@ -105,7 +105,7 @@
105 return;105 return;
106 if (mir_keyboard_event_key_code(kev) != XKB_KEY_q)106 if (mir_keyboard_event_key_code(kev) != XKB_KEY_q)
107 return;107 return;
108 108
109 running = 0;109 running = 0;
110}110}
111111
@@ -147,7 +147,7 @@
147{147{
148 (void) surface;148 (void) surface;
149 (void) unused;149 (void) unused;
150 150
151 switch (mir_event_get_type(ev))151 switch (mir_event_get_type(ev))
152 {152 {
153 case mir_event_type_input:153 case mir_event_type_input:
@@ -478,14 +478,14 @@
478 CHECK(mir_surface_is_valid(surface), "Can't create a surface");478 CHECK(mir_surface_is_valid(surface), "Can't create a surface");
479479
480 mir_surface_set_event_handler(surface, mir_eglapp_handle_event, NULL);480 mir_surface_set_event_handler(surface, mir_eglapp_handle_event, NULL);
481 481
482 MirCursorConfiguration *conf = mir_cursor_configuration_from_name(cursor_name);482 MirCursorConfiguration *conf = mir_cursor_configuration_from_name(cursor_name);
483 mir_surface_configure_cursor(surface, conf);483 mir_surface_configure_cursor(surface, conf);
484 mir_cursor_configuration_destroy(conf);484 mir_cursor_configuration_destroy(conf);
485485
486 eglsurface = eglCreateWindowSurface(egldisplay, eglconfig,486 eglsurface = eglCreateWindowSurface(egldisplay, eglconfig,
487 (EGLNativeWindowType)mir_buffer_stream_get_egl_native_window(mir_surface_get_buffer_stream(surface)), NULL);487 (EGLNativeWindowType)mir_buffer_stream_get_egl_native_window(mir_surface_get_buffer_stream(surface)), NULL);
488 488
489 CHECK(eglsurface != EGL_NO_SURFACE, "eglCreateWindowSurface failed");489 CHECK(eglsurface != EGL_NO_SURFACE, "eglCreateWindowSurface failed");
490490
491 eglctx = eglCreateContext(egldisplay, eglconfig, EGL_NO_CONTEXT,491 eglctx = eglCreateContext(egldisplay, eglconfig, EGL_NO_CONTEXT,
492492
=== modified file 'examples/eglsquare.cpp'
--- examples/eglsquare.cpp 2015-05-29 12:53:18 +0000
+++ examples/eglsquare.cpp 2016-10-27 03:52:22 +0000
@@ -51,14 +51,14 @@
51 glClear(GL_COLOR_BUFFER_BIT);51 glClear(GL_COLOR_BUFFER_BIT);
52 auto scaleUniform = glGetUniformLocation(program.program, "scale");52 auto scaleUniform = glGetUniformLocation(program.program, "scale");
53 glUniform2fv(scaleUniform, 1, scale);53 glUniform2fv(scaleUniform, 1, scale);
54 54
55 context.swapbuffers();55 context.swapbuffers();
56 context.release_current();56 context.release_current();
57 }57 }
5858
59 void draw(float x, float y)59 void draw(float x, float y)
60 {60 {
61 float pos[2] = {x, y}; 61 float pos[2] = {x, y};
62 glUseProgram(program.program);62 glUseProgram(program.program);
63 glClear( GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT );63 glClear( GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT );
64 glUniform2fv(posUniform, 1, pos);64 glUniform2fv(posUniform, 1, pos);
@@ -68,7 +68,7 @@
68 }68 }
6969
70 RenderProgram(RenderProgram const&) = delete;70 RenderProgram(RenderProgram const&) = delete;
71 RenderProgram& operator=(RenderProgram const&) = delete; 71 RenderProgram& operator=(RenderProgram const&) = delete;
72private:72private:
73 GLchar const*const frag_shader_src =73 GLchar const*const frag_shader_src =
74 {74 {
@@ -97,7 +97,7 @@
97 1.0f, 1.0f, 0.0f, 1.0f,97 1.0f, 1.0f, 0.0f, 1.0f,
98 };98 };
99 GLuint vPositionAttr;99 GLuint vPositionAttr;
100 GLuint posUniform; 100 GLuint posUniform;
101};101};
102102
103class SquareRenderingSurface103class SquareRenderingSurface
104104
=== modified file 'examples/fingerpaint.c'
--- examples/fingerpaint.c 2016-01-29 08:18:22 +0000
+++ examples/fingerpaint.c 2016-10-27 03:52:22 +0000
@@ -94,7 +94,7 @@
94 case mir_pixel_format_abgr_8888:94 case mir_pixel_format_abgr_8888:
95 case mir_pixel_format_xbgr_8888:95 case mir_pixel_format_xbgr_8888:
96 alpha_shift = 24;96 alpha_shift = 24;
97 pixel = 97 pixel =
98 (uint32_t)color->a << 24 |98 (uint32_t)color->a << 24 |
99 (uint32_t)color->b << 16 |99 (uint32_t)color->b << 16 |
100 (uint32_t)color->g << 8 |100 (uint32_t)color->g << 8 |
@@ -103,7 +103,7 @@
103 case mir_pixel_format_argb_8888:103 case mir_pixel_format_argb_8888:
104 case mir_pixel_format_xrgb_8888:104 case mir_pixel_format_xrgb_8888:
105 alpha_shift = 24;105 alpha_shift = 24;
106 pixel = 106 pixel =
107 (uint32_t)color->a << 24 |107 (uint32_t)color->a << 24 |
108 (uint32_t)color->r << 16 |108 (uint32_t)color->r << 16 |
109 (uint32_t)color->g << 8 |109 (uint32_t)color->g << 8 |
@@ -157,7 +157,7 @@
157 char *row = region->vaddr +157 char *row = region->vaddr +
158 (y * region->stride) +158 (y * region->stride) +
159 (x * BYTES_PER_PIXEL(region->pixel_format));159 (x * BYTES_PER_PIXEL(region->pixel_format));
160 160
161 for (j = 0; j < size; j++)161 for (j = 0; j < size; j++)
162 {162 {
163 put_pixels(row, size, region->pixel_format, color);163 put_pixels(row, size, region->pixel_format, color);
@@ -204,7 +204,7 @@
204 {0x00, 0xff, 0x00, 0xff},204 {0x00, 0xff, 0x00, 0xff},
205 {0x00, 0x00, 0xff, 0xff},205 {0x00, 0x00, 0xff, 0xff},
206 };206 };
207 207
208 MirEventType event_type = mir_event_get_type(event);208 MirEventType event_type = mir_event_get_type(event);
209209
210 pthread_mutex_lock(&mutex);210 pthread_mutex_lock(&mutex);
@@ -297,7 +297,7 @@
297297
298 draw_box(canvas, x - radius, y - radius, 2*radius, &tone);298 draw_box(canvas, x - radius, y - radius, 2*radius, &tone);
299 }299 }
300 300
301 changed = true;301 changed = true;
302 }302 }
303 }303 }
@@ -476,7 +476,7 @@
476 {476 {
477 mir_surface_set_swapinterval(surf, swap_interval);477 mir_surface_set_swapinterval(surf, swap_interval);
478 mir_surface_set_event_handler(surf, &on_event, &canvas);478 mir_surface_set_event_handler(surf, &on_event, &canvas);
479 479
480 canvas.width = width;480 canvas.width = width;
481 canvas.height = height;481 canvas.height = height;
482 canvas.stride = canvas.width * BYTES_PER_PIXEL(pixel_format);482 canvas.stride = canvas.width * BYTES_PER_PIXEL(pixel_format);
@@ -488,9 +488,9 @@
488 signal(SIGINT, shutdown);488 signal(SIGINT, shutdown);
489 signal(SIGTERM, shutdown);489 signal(SIGTERM, shutdown);
490 signal(SIGHUP, shutdown);490 signal(SIGHUP, shutdown);
491 491
492 clear_region(&canvas, &background);492 clear_region(&canvas, &background);
493 493
494 MirBufferStream *bs = mir_surface_get_buffer_stream(surf);494 MirBufferStream *bs = mir_surface_get_buffer_stream(surf);
495495
496 while (running)496 while (running)
497497
=== modified file 'examples/input_shapes.cpp'
--- examples/input_shapes.cpp 2015-06-29 22:01:30 +0000
+++ examples/input_shapes.cpp 2016-10-27 03:52:22 +0000
@@ -51,14 +51,14 @@
51 glClear(GL_COLOR_BUFFER_BIT);51 glClear(GL_COLOR_BUFFER_BIT);
52 auto scaleUniform = glGetUniformLocation(program.program, "scale");52 auto scaleUniform = glGetUniformLocation(program.program, "scale");
53 glUniform2fv(scaleUniform, 1, scale);53 glUniform2fv(scaleUniform, 1, scale);
54 54
55 context.swapbuffers();55 context.swapbuffers();
56 context.release_current();56 context.release_current();
57 }57 }
5858
59 void draw(float x, float y)59 void draw(float x, float y)
60 {60 {
61 float pos[2] = {x, y}; 61 float pos[2] = {x, y};
62 glUseProgram(program.program);62 glUseProgram(program.program);
63 glClear( GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT );63 glClear( GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT );
64 glUniform2fv(posUniform, 1, pos);64 glUniform2fv(posUniform, 1, pos);
@@ -68,7 +68,7 @@
68 }68 }
6969
70 RenderProgram(RenderProgram const&) = delete;70 RenderProgram(RenderProgram const&) = delete;
71 RenderProgram& operator=(RenderProgram const&) = delete; 71 RenderProgram& operator=(RenderProgram const&) = delete;
72private:72private:
73 GLchar const*const frag_shader_src =73 GLchar const*const frag_shader_src =
74 {74 {
@@ -97,7 +97,7 @@
97 1.0f, 1.0f, 0.0f, 1.0f,97 1.0f, 1.0f, 0.0f, 1.0f,
98 };98 };
99 GLuint vPositionAttr;99 GLuint vPositionAttr;
100 GLuint posUniform; 100 GLuint posUniform;
101};101};
102102
103class SurfaceWithAHole103class SurfaceWithAHole
104104
=== modified file 'examples/multiwin.c'
--- examples/multiwin.c 2015-07-16 07:03:19 +0000
+++ examples/multiwin.c 2016-10-27 03:52:22 +0000
@@ -61,28 +61,28 @@
61 switch (format)61 switch (format)
62 {62 {
63 case mir_pixel_format_abgr_8888:63 case mir_pixel_format_abgr_8888:
64 pixel = 64 pixel =
65 (uint32_t)color->a << 24 |65 (uint32_t)color->a << 24 |
66 (uint32_t)color->b << 16 |66 (uint32_t)color->b << 16 |
67 (uint32_t)color->g << 8 |67 (uint32_t)color->g << 8 |
68 (uint32_t)color->r;68 (uint32_t)color->r;
69 break;69 break;
70 case mir_pixel_format_xbgr_8888:70 case mir_pixel_format_xbgr_8888:
71 pixel = 71 pixel =
72 /* Not filling in the X byte is correct but buggy (LP: #1423462) */72 /* Not filling in the X byte is correct but buggy (LP: #1423462) */
73 (uint32_t)color->b << 16 |73 (uint32_t)color->b << 16 |
74 (uint32_t)color->g << 8 |74 (uint32_t)color->g << 8 |
75 (uint32_t)color->r;75 (uint32_t)color->r;
76 break;76 break;
77 case mir_pixel_format_argb_8888:77 case mir_pixel_format_argb_8888:
78 pixel = 78 pixel =
79 (uint32_t)color->a << 24 |79 (uint32_t)color->a << 24 |
80 (uint32_t)color->r << 16 |80 (uint32_t)color->r << 16 |
81 (uint32_t)color->g << 8 |81 (uint32_t)color->g << 8 |
82 (uint32_t)color->b;82 (uint32_t)color->b;
83 break;83 break;
84 case mir_pixel_format_xrgb_8888:84 case mir_pixel_format_xrgb_8888:
85 pixel = 85 pixel =
86 /* Not filling in the X byte is correct but buggy (LP: #1423462) */86 /* Not filling in the X byte is correct but buggy (LP: #1423462) */
87 (uint32_t)color->r << 16 |87 (uint32_t)color->r << 16 |
88 (uint32_t)color->g << 8 |88 (uint32_t)color->g << 8 |
8989
=== modified file 'examples/progressbar.c'
--- examples/progressbar.c 2015-06-17 05:20:42 +0000
+++ examples/progressbar.c 2016-10-27 03:52:22 +0000
@@ -91,7 +91,7 @@
91 case mir_pixel_format_abgr_8888:91 case mir_pixel_format_abgr_8888:
92 case mir_pixel_format_xbgr_8888:92 case mir_pixel_format_xbgr_8888:
93 alpha_shift = 24;93 alpha_shift = 24;
94 pixel = 94 pixel =
95 (uint32_t)color->a << 24 |95 (uint32_t)color->a << 24 |
96 (uint32_t)color->b << 16 |96 (uint32_t)color->b << 16 |
97 (uint32_t)color->g << 8 |97 (uint32_t)color->g << 8 |
@@ -100,7 +100,7 @@
100 case mir_pixel_format_argb_8888:100 case mir_pixel_format_argb_8888:
101 case mir_pixel_format_xrgb_8888:101 case mir_pixel_format_xrgb_8888:
102 alpha_shift = 24;102 alpha_shift = 24;
103 pixel = 103 pixel =
104 (uint32_t)color->a << 24 |104 (uint32_t)color->a << 24 |
105 (uint32_t)color->r << 16 |105 (uint32_t)color->r << 16 |
106 (uint32_t)color->g << 8 |106 (uint32_t)color->g << 8 |
@@ -154,7 +154,7 @@
154 char *row = region->vaddr +154 char *row = region->vaddr +
155 (y * region->stride) +155 (y * region->stride) +
156 (x * BYTES_PER_PIXEL(region->pixel_format));156 (x * BYTES_PER_PIXEL(region->pixel_format));
157 157
158 for (j = 0; j < size; j++)158 for (j = 0; j < size; j++)
159 {159 {
160 put_pixels(row, size, region->pixel_format, color);160 put_pixels(row, size, region->pixel_format, color);
@@ -286,7 +286,7 @@
286 signal(SIGINT, shutdown);286 signal(SIGINT, shutdown);
287 signal(SIGTERM, shutdown);287 signal(SIGTERM, shutdown);
288 signal(SIGHUP, shutdown);288 signal(SIGHUP, shutdown);
289 289
290 while (running)290 while (running)
291 {291 {
292 static const int box_width = 8;292 static const int box_width = 8;
293293
=== modified file 'examples/server_example_adorning_compositor.cpp'
--- examples/server_example_adorning_compositor.cpp 2016-10-12 06:03:15 +0000
+++ examples/server_example_adorning_compositor.cpp 2016-10-27 03:52:22 +0000
@@ -202,7 +202,7 @@
202 for(auto& element : scene_sequence)202 for(auto& element : scene_sequence)
203 {203 {
204 //courteously inform the client that its rendered204 //courteously inform the client that its rendered
205 //if something is not to be rendered, mc::SceneElementSequence::occluded() should be called 205 //if something is not to be rendered, mc::SceneElementSequence::occluded() should be called
206 element->rendered();206 element->rendered();
207207
208 auto const renderable = element->renderable();208 auto const renderable = element->renderable();
209209
=== modified file 'examples/server_example_adorning_compositor.h'
--- examples/server_example_adorning_compositor.h 2016-01-29 08:18:22 +0000
+++ examples/server_example_adorning_compositor.h 2016-10-27 03:52:22 +0000
@@ -80,7 +80,7 @@
80 GLuint uvCoord;80 GLuint uvCoord;
81 GLuint scaleUniform;81 GLuint scaleUniform;
82 GLuint posUniform;82 GLuint posUniform;
83 GLuint alphaUniform; 83 GLuint alphaUniform;
84 GLuint texture;84 GLuint texture;
8585
86 std::shared_ptr<compositor::CompositorReport> const report;86 std::shared_ptr<compositor::CompositorReport> const report;
8787
=== modified file 'examples/server_example_canonical_window_manager.cpp'
--- examples/server_example_canonical_window_manager.cpp 2016-10-12 06:03:15 +0000
+++ examples/server_example_canonical_window_manager.cpp 2016-10-27 03:52:22 +0000
@@ -400,7 +400,7 @@
400 if (modifications.input_shape.is_set())400 if (modifications.input_shape.is_set())
401 {401 {
402 auto rectangles = modifications.input_shape.value();402 auto rectangles = modifications.input_shape.value();
403 auto displacement = surface->top_left() - Point{0, 0}; 403 auto displacement = surface->top_left() - Point{0, 0};
404 for(auto& rect : rectangles)404 for(auto& rect : rectangles)
405 {405 {
406 rect.top_left = rect.top_left + displacement;406 rect.top_left = rect.top_left + displacement;
407407
=== modified file 'examples/server_example_window_management_info.cpp'
--- examples/server_example_window_management_info.cpp 2016-08-19 07:49:12 +0000
+++ examples/server_example_window_management_info.cpp 2016-10-27 03:52:22 +0000
@@ -250,8 +250,8 @@
250 std::shared_ptr<frontend::BufferStream> const buffer_stream;250 std::shared_ptr<frontend::BufferStream> const buffer_stream;
251 std::shared_ptr<scene::Session> const session;251 std::shared_ptr<scene::Session> const session;
252 mg::BufferProperties properties;252 mg::BufferProperties properties;
253 mg::BufferID front_buffer; 253 mg::BufferID front_buffer;
254 mg::BufferID back_buffer; 254 mg::BufferID back_buffer;
255};255};
256256
257void mir::examples::SurfaceInfo::init_titlebar(257void mir::examples::SurfaceInfo::init_titlebar(
258258
=== modified file 'examples/xcursor.c'
--- examples/xcursor.c 2016-01-29 08:18:22 +0000
+++ examples/xcursor.c 2016-10-27 03:52:22 +0000
@@ -798,7 +798,7 @@
798 const char *path;798 const char *path;
799 char *inherits = NULL;799 char *inherits = NULL;
800 const char *i;800 const char *i;
801 801
802 if (!theme || !name)802 if (!theme || !name)
803 return NULL;803 return NULL;
804804
805805
=== modified file 'examples/xcursor_loader.cpp'
--- examples/xcursor_loader.cpp 2016-07-18 07:38:38 +0000
+++ examples/xcursor_loader.cpp 2016-10-27 03:52:22 +0000
@@ -162,12 +162,12 @@
162// Each XcursorImages represents images for the different sizes of a given symbolic cursor.162// Each XcursorImages represents images for the different sizes of a given symbolic cursor.
163void me::XCursorLoader::load_appropriately_sized_image(_XcursorImages *images)163void me::XCursorLoader::load_appropriately_sized_image(_XcursorImages *images)
164{164{
165 // We would rather take this lock in load_cursor_theme but the Xcursor lib style 165 // We would rather take this lock in load_cursor_theme but the Xcursor lib style
166 // makes it difficult to use our standard 'pass the lg around to _locked members' pattern166 // makes it difficult to use our standard 'pass the lg around to _locked members' pattern
167 std::lock_guard<std::mutex> lg(guard);167 std::lock_guard<std::mutex> lg(guard);
168168
169 // We have to save all the images as XCursor expects us to free them.169 // We have to save all the images as XCursor expects us to free them.
170 // This contains the actual image data though, so we need to ensure they stay alive 170 // This contains the actual image data though, so we need to ensure they stay alive
171 // with the lifetime of the mg::CursorImage instance which refers to them.171 // with the lifetime of the mg::CursorImage instance which refers to them.
172 auto saved_xcursor_library_resource = std::shared_ptr<_XcursorImages>(images, [](_XcursorImages *images)172 auto saved_xcursor_library_resource = std::shared_ptr<_XcursorImages>(images, [](_XcursorImages *images)
173 {173 {
@@ -194,7 +194,7 @@
194{194{
195 // Cursors are named by their square dimension...called the nominal size in XCursor terminology, so we just look up by width.195 // Cursors are named by their square dimension...called the nominal size in XCursor terminology, so we just look up by width.
196 // Later we verify the actual size.196 // Later we verify the actual size.
197 xcursor_load_theme(theme_name.c_str(), mi::default_cursor_size.width.as_uint32_t(), 197 xcursor_load_theme(theme_name.c_str(), mi::default_cursor_size.width.as_uint32_t(),
198 [](XcursorImages* images, void *this_ptr) -> void198 [](XcursorImages* images, void *this_ptr) -> void
199 {199 {
200 // Can't use lambda capture as this lambda is thunked to a C function ptr200 // Can't use lambda capture as this lambda is thunked to a C function ptr
@@ -212,7 +212,7 @@
212 if (size != mi::default_cursor_size)212 if (size != mi::default_cursor_size)
213 BOOST_THROW_EXCEPTION(213 BOOST_THROW_EXCEPTION(
214 std::logic_error("Only the default cursor size is currently supported (mi::default_cursor_size)"));214 std::logic_error("Only the default cursor size is currently supported (mi::default_cursor_size)"));
215 215
216 std::lock_guard<std::mutex> lg(guard);216 std::lock_guard<std::mutex> lg(guard);
217217
218 auto it = loaded_images.find(xcursor_name);218 auto it = loaded_images.find(xcursor_name);
@@ -223,6 +223,6 @@
223 it = loaded_images.find("arrow");223 it = loaded_images.find("arrow");
224 if (it != loaded_images.end())224 if (it != loaded_images.end())
225 return it->second;225 return it->second;
226 226
227 return nullptr;227 return nullptr;
228}228}
229229
=== modified file 'guides/cppguide.xml'
--- guides/cppguide.xml 2015-06-17 05:20:42 +0000
+++ guides/cppguide.xml 2016-10-27 03:52:22 +0000
@@ -310,7 +310,7 @@
310 function, output from the function, or both. Input parameters310 function, output from the function, or both. Input parameters
311 are usually values or <code>const</code> references, while output311 are usually values or <code>const</code> references, while output
312 and input/output parameters will be non-<code>const</code>312 and input/output parameters will be non-<code>const</code>
313 references or pointers to non-<code>const</code>. When ordering function 313 references or pointers to non-<code>const</code>. When ordering function
314 parameters, put all output parameters before any input-only parameters.314 parameters, put all output parameters before any input-only parameters.
315 In particular, do not add new parameters to the end of the function just315 In particular, do not add new parameters to the end of the function just
316 because they are new; place new output parameters before the input-only316 because they are new; place new output parameters before the input-only
@@ -331,8 +331,8 @@
331 dependencies: your331 dependencies: your
332 project's public332 project's public
333 <code>.h</code>, your333 <code>.h</code>, your
334 project's private 334 project's private
335 <code>.h</code>, other libraries' <code>.h</code>, .C library, C++ library, 335 <code>.h</code>, other libraries' <code>.h</code>, .C library, C++ library,
336 </SUMMARY>336 </SUMMARY>
337 <BODY>337 <BODY>
338 <p>338 <p>
@@ -359,11 +359,11 @@
359 <li> <code><var>dir2/foo2</var>.h</code> (preferred location359 <li> <code><var>dir2/foo2</var>.h</code> (preferred location
360 &#8212; see details below).</li>360 &#8212; see details below).</li>
361 <li>361 <li>
362 Your project's public 362 Your project's public
363 <code>.h</code> files.363 <code>.h</code> files.
364 </li>364 </li>
365 <li>365 <li>
366 Your project's private 366 Your project's private
367 <code>.h</code> files.367 <code>.h</code> files.
368 </li>368 </li>
369 <li> Other libraries' <code>.h</code> files.</li>369 <li> Other libraries' <code>.h</code> files.</li>
@@ -784,7 +784,7 @@
784784
785 <STYLEPOINT title="Constructors">785 <STYLEPOINT title="Constructors">
786 <SUMMARY>786 <SUMMARY>
787 The purpose of a constructor is to initialise a class so that its 787 The purpose of a constructor is to initialise a class so that its
788 invariants hold. For value classes it is worth having a cheap default788 invariants hold. For value classes it is worth having a cheap default
789 constructor.789 constructor.
790 </SUMMARY>790 </SUMMARY>
@@ -815,7 +815,7 @@
815 </ul>815 </ul>
816 </CONS>816 </CONS>
817 <DECISION>817 <DECISION>
818 Constructors should not make virtual calls to functions, access 818 Constructors should not make virtual calls to functions, access
819 potentially uninitialized global variables, etc.819 potentially uninitialized global variables, etc.
820 </DECISION>820 </DECISION>
821 </BODY>821 </BODY>
@@ -962,7 +962,7 @@
962 If your class does not need a copy constructor or assignment962 If your class does not need a copy constructor or assignment
963 operator, you must explicitly disable them.963 operator, you must explicitly disable them.
964 </p>964 </p>
965 965
966 </DECISION>966 </DECISION>
967 </BODY>967 </BODY>
968 </STYLEPOINT>968 </STYLEPOINT>
@@ -1182,9 +1182,9 @@
1182 </CONS>1182 </CONS>
1183 <DECISION>1183 <DECISION>
1184 <p>1184 <p>
1185 In general, do overload operators where appropriate. 1185 In general, do overload operators where appropriate.
1186 </p>1186 </p>
1187 1187
1188 <p>1188 <p>
1189 See also <a HREF="#Copy_Constructors">Copy Constructors</a>1189 See also <a HREF="#Copy_Constructors">Copy Constructors</a>
1190 and <a HREF="#Function_Overloading">Function1190 and <a HREF="#Function_Overloading">Function
@@ -1206,7 +1206,7 @@
1206 called <code>foo</code> and the accessor function1206 called <code>foo</code> and the accessor function
1207 <code>get_foo()</code>. You may also want a mutator function1207 <code>get_foo()</code>. You may also want a mutator function
1208 <code>set_foo()</code>.1208 <code>set_foo()</code>.
1209 Exception: <code>static const</code> data members need not 1209 Exception: <code>static const</code> data members need not
1210 be <code>private</code>.1210 be <code>private</code>.
1211 </SUMMARY>1211 </SUMMARY>
1212 <BODY>1212 <BODY>
@@ -1813,7 +1813,7 @@
1813 <code>int64_t</code>.1813 <code>int64_t</code>.
18141814
1815 </p>1815 </p>
1816 1816
1817 </DECISION>1817 </DECISION>
1818 </BODY>1818 </BODY>
1819 </STYLEPOINT>1819 </STYLEPOINT>
@@ -2397,7 +2397,7 @@
23972397
2398 <STYLEPOINT title="Enumerator Names">2398 <STYLEPOINT title="Enumerator Names">
2399 <SUMMARY>2399 <SUMMARY>
2400 Enumerators should be named like 2400 Enumerators should be named like
2401 <A HREF="#Class_Data_Members">member variables</A>: <code>out_of_memory</code>, enclosed within an enum class.2401 <A HREF="#Class_Data_Members">member variables</A>: <code>out_of_memory</code>, enclosed within an enum class.
2402 </SUMMARY>2402 </SUMMARY>
2403 <BODY>2403 <BODY>
@@ -2965,7 +2965,7 @@
2965 several code windows side-by-side, and thus don't have room to2965 several code windows side-by-side, and thus don't have room to
2966 widen their windows in any case. People set up their work2966 widen their windows in any case. People set up their work
2967 environment assuming a particular maximum window width, and 802967 environment assuming a particular maximum window width, and 80
2968 columns has been the traditional standard. Why change it? 2968 columns has been the traditional standard. Why change it?
2969 </PROS>2969 </PROS>
2970 <CONS>2970 <CONS>
2971 Proponents of change argue that a wider line can make code2971 Proponents of change argue that a wider line can make code
@@ -2978,7 +2978,7 @@
2978 <DECISION>2978 <DECISION>
2979 <p>2979 <p>
2980 120 characters is the maximum.2980 120 characters is the maximum.
2981 </p> 2981 </p>
2982 </DECISION>2982 </DECISION>
2983 </BODY>2983 </BODY>
2984 </STYLEPOINT>2984 </STYLEPOINT>
@@ -3091,11 +3091,11 @@
3091 </li>3091 </li>
3092 <li> All parameters should be in a single line if possible, otherwise:3092 <li> All parameters should be in a single line if possible, otherwise:
3093 <ul>3093 <ul>
3094 <li> Wrap groups of parameters into the next line, and align the 3094 <li> Wrap groups of parameters into the next line, and align the
3095 first wrapped parameter to the first parameter in the previous 3095 first wrapped parameter to the first parameter in the previous
3096 line.3096 line.
3097 </li>3097 </li>
3098 <li> Place each parameter in a separate line and indent each with 4 3098 <li> Place each parameter in a separate line and indent each with 4
3099 spaces.3099 spaces.
3100 </li>3100 </li>
3101 </ul>3101 </ul>
@@ -3480,7 +3480,7 @@
3480 char s[12]{}; //all 12 chars are initialized to '\0'3480 char s[12]{}; //all 12 chars are initialized to '\0'
3481 string s{}; //same as: string s;3481 string s{}; //same as: string s;
3482 string name{"Some Name"};3482 string name{"Some Name"};
3483 char* p=new char [5]{}; // all five chars are initialized to '\0' 3483 char* p=new char [5]{}; // all five chars are initialized to '\0'
3484 </CODE_SNIPPET>3484 </CODE_SNIPPET>
3485 </BODY>3485 </BODY>
3486 </STYLEPOINT>3486 </STYLEPOINT>
@@ -3498,7 +3498,7 @@
3498 </p>3498 </p>
3499 <CODE_SNIPPET>3499 <CODE_SNIPPET>
3500 // Good - directives at beginning of line3500 // Good - directives at beginning of line
3501 if (lopsided_score) 3501 if (lopsided_score)
3502 {3502 {
3503 #if DISASTER_PENDING // Correct -- Starts at beginning of line3503 #if DISASTER_PENDING // Correct -- Starts at beginning of line
3504 drop_everything();3504 drop_everything();
@@ -3511,7 +3511,7 @@
3511 </CODE_SNIPPET>3511 </CODE_SNIPPET>
3512 <BAD_CODE_SNIPPET>3512 <BAD_CODE_SNIPPET>
3513 // Bad - indented directives3513 // Bad - indented directives
3514 if (lopsided_score) 3514 if (lopsided_score)
3515 {3515 {
3516 #if DISASTER_PENDING // Wrong! The "#if" should be at beginning of line3516 #if DISASTER_PENDING // Wrong! The "#if" should be at beginning of line
3517 drop_everything();3517 drop_everything();
@@ -3551,7 +3551,7 @@
3551 MyClass(MyClass const&amp;) = delete;3551 MyClass(MyClass const&amp;) = delete;
3552 MyClass&amp; operator=(MyClass const&amp;) = delete;3552 MyClass&amp; operator=(MyClass const&amp;) = delete;
3553 bool some_internal_function();3553 bool some_internal_function();
3554 3554
3555 int some_var_;3555 int some_var_;
3556 int some_other_var;3556 int some_other_var;
3557 };3557 };
35583558
=== modified file 'guides/styleguide.xsl'
--- guides/styleguide.xsl 2016-01-29 08:18:22 +0000
+++ guides/styleguide.xsl 2016-10-27 03:52:22 +0000
@@ -517,8 +517,8 @@
517 </xsl:template>517 </xsl:template>
518518
519 <!-- Given text, determine the starting position of code.519 <!-- Given text, determine the starting position of code.
520 This similar to num_leading_spaces_one_line but treats "Yes:" and "No:" 520 This similar to num_leading_spaces_one_line but treats "Yes:" and "No:"
521 as spaces. Also, if there is no code on the first line, it searches 521 as spaces. Also, if there is no code on the first line, it searches
522 subsequent lines until a non-empty line is found.522 subsequent lines until a non-empty line is found.
523 Used to find the start of code in snippets like:523 Used to find the start of code in snippets like:
524 Yes: if(foo):524 Yes: if(foo):
@@ -549,7 +549,7 @@
549 <xsl:with-param name="current_count" select="$current_count + 3"/>549 <xsl:with-param name="current_count" select="$current_count + 3"/>
550 </xsl:call-template>550 </xsl:call-template>
551 </xsl:when>551 </xsl:when>
552 <!-- This is only reached if the first line is entirely whitespace or 552 <!-- This is only reached if the first line is entirely whitespace or
553 contains nothing but "Yes:" or "No:"-->553 contains nothing but "Yes:" or "No:"-->
554 <xsl:when test="starts-with($text, '&#xA;')">554 <xsl:when test="starts-with($text, '&#xA;')">
555 <xsl:call-template name="code_start_index">555 <xsl:call-template name="code_start_index">
@@ -682,7 +682,7 @@
682 5) Print line[a:c] (Note that we ignore line[0:a])682 5) Print line[a:c] (Note that we ignore line[0:a])
683 6) Print line[b:c] in an external span (in order to double the block683 6) Print line[b:c] in an external span (in order to double the block
684 indent in external code).684 indent in external code).
685 7) Print line[c:<end>] with function names processed to produce both 685 7) Print line[c:<end>] with function names processed to produce both
686 internal and external names.686 internal and external names.
687 8) If there are more lines, recurse.687 8) If there are more lines, recurse.
688 -->688 -->
@@ -786,7 +786,7 @@
786 <xsl:with-param name="b" select="$b"/>786 <xsl:with-param name="b" select="$b"/>
787 <xsl:with-param name="previous_indent" select="$b"/>787 <xsl:with-param name="previous_indent" select="$b"/>
788 <xsl:with-param name="previous_ends_with_colon" select="0"/>788 <xsl:with-param name="previous_ends_with_colon" select="0"/>
789 <xsl:with-param name="is_first_line" select="1"/> 789 <xsl:with-param name="is_first_line" select="1"/>
790 </xsl:call-template>790 </xsl:call-template>
791 </xsl:template>791 </xsl:template>
792792
@@ -861,7 +861,7 @@
861 <!-- Given a single word of text convert it from CamelCase to861 <!-- Given a single word of text convert it from CamelCase to
862 lower_with_under.862 lower_with_under.
863 This means replacing each uppercase character with _ followed by the863 This means replacing each uppercase character with _ followed by the
864 lowercase version except for the first character which is replaced 864 lowercase version except for the first character which is replaced
865 without adding the _.-->865 without adding the _.-->
866 <xsl:template name="convert_camel_case_to_lowercase_with_under">866 <xsl:template name="convert_camel_case_to_lowercase_with_under">
867 <xsl:param name="text"/>867 <xsl:param name="text"/>
868868
=== modified file 'include/client/mir/events/event_builders.h'
--- include/client/mir/events/event_builders.h 2016-10-13 17:14:36 +0000
+++ include/client/mir/events/event_builders.h 2016-10-27 03:52:22 +0000
@@ -37,7 +37,7 @@
37namespace mir37namespace mir
38{38{
39 typedef std::unique_ptr<MirEvent, void(*)(MirEvent*)> EventUPtr;39 typedef std::unique_ptr<MirEvent, void(*)(MirEvent*)> EventUPtr;
40 40
41namespace events41namespace events
42{42{
43// Surface orientation change event43// Surface orientation change event
4444
=== modified file 'include/client/mir_toolkit/events/event.h'
--- include/client/mir_toolkit/events/event.h 2016-10-12 06:03:15 +0000
+++ include/client/mir_toolkit/events/event.h 2016-10-27 03:52:22 +0000
@@ -100,7 +100,7 @@
100MirEventType mir_event_get_type(MirEvent const* event);100MirEventType mir_event_get_type(MirEvent const* event);
101101
102/**102/**
103 * Retrieve the MirInputEvent associated with a MirEvent of 103 * Retrieve the MirInputEvent associated with a MirEvent of
104 * type mir_event_type_input. See <mir_toolkit/events/input/input_event.h>104 * type mir_event_type_input. See <mir_toolkit/events/input/input_event.h>
105 * for accessors.105 * for accessors.
106 *106 *
@@ -232,7 +232,7 @@
232 * \ (oo)\_______232 * \ (oo)\_______
233 * (__)\ )\/\233 * (__)\ )\/\
234 * ||----w |234 * ||----w |
235 * || || 235 * || ||
236 * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!236 * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
237 * NOTICE: mir_event_ref and mir_event_unref are implemented in terms of copy237 * NOTICE: mir_event_ref and mir_event_unref are implemented in terms of copy
238 * until such time that direct MirEvent access is deprecated. This means you238 * until such time that direct MirEvent access is deprecated. This means you
239239
=== modified file 'include/client/mir_toolkit/events/input/input_event.h'
--- include/client/mir_toolkit/events/input/input_event.h 2016-10-12 06:03:15 +0000
+++ include/client/mir_toolkit/events/input/input_event.h 2016-10-27 03:52:22 +0000
@@ -112,7 +112,7 @@
112 * Retrieve the MirKeyboardEvent associated with a given input event.112 * Retrieve the MirKeyboardEvent associated with a given input event.
113 *113 *
114 * \param[in] event The input event114 * \param[in] event The input event
115 * \return The MirKeyboardEvent or NULL if event type is not 115 * \return The MirKeyboardEvent or NULL if event type is not
116 * mir_input_event_type_key116 * mir_input_event_type_key
117 */117 */
118MirKeyboardEvent const* mir_input_event_get_keyboard_event(MirInputEvent const* event);118MirKeyboardEvent const* mir_input_event_get_keyboard_event(MirInputEvent const* event);
@@ -121,7 +121,7 @@
121 * Retrieve the MirTouchEvent associated with a given input event.121 * Retrieve the MirTouchEvent associated with a given input event.
122 *122 *
123 * \param[in] event The input event123 * \param[in] event The input event
124 * \return The MirTouchEvent or NULL if event type is not 124 * \return The MirTouchEvent or NULL if event type is not
125 * mir_input_event_type_touch125 * mir_input_event_type_touch
126 */126 */
127MirTouchEvent const* mir_input_event_get_touch_event(MirInputEvent const* event);127MirTouchEvent const* mir_input_event_get_touch_event(MirInputEvent const* event);
@@ -130,7 +130,7 @@
130 * Retrieve the MirPointerEvent associated with a given input event.130 * Retrieve the MirPointerEvent associated with a given input event.
131 *131 *
132 * \param[in] event The input event132 * \param[in] event The input event
133 * \return The MirPointerEvent or NULL if event type is not 133 * \return The MirPointerEvent or NULL if event type is not
134 * mir_input_event_type_pointer134 * mir_input_event_type_pointer
135 */135 */
136MirPointerEvent const* mir_input_event_get_pointer_event(MirInputEvent const* event);136MirPointerEvent const* mir_input_event_get_pointer_event(MirInputEvent const* event);
137137
=== modified file 'include/client/mir_toolkit/events/input/keyboard_event.h'
--- include/client/mir_toolkit/events/input/keyboard_event.h 2016-08-09 08:13:02 +0000
+++ include/client/mir_toolkit/events/input/keyboard_event.h 2016-10-27 03:52:22 +0000
@@ -57,7 +57,7 @@
5757
58/**58/**
59 * Retrieve the action which triggered a given key event.59 * Retrieve the action which triggered a given key event.
60 * 60 *
61 * \param [in] event The key event61 * \param [in] event The key event
62 * \return The associated action62 * \return The associated action
63 */63 */
6464
=== modified file 'include/client/mir_toolkit/events/input/pointer_event.h'
--- include/client/mir_toolkit/events/input/pointer_event.h 2016-08-09 08:13:02 +0000
+++ include/client/mir_toolkit/events/input/pointer_event.h 2016-10-27 03:52:22 +0000
@@ -72,7 +72,7 @@
72 mir_pointer_axes72 mir_pointer_axes
73} MirPointerAxis;73} MirPointerAxis;
7474
75/* 75/*
76 * Identifiers for pointer buttons76 * Identifiers for pointer buttons
77 */77 */
78typedef enum {78typedef enum {
@@ -130,7 +130,7 @@
130 * \param [in] axis The axis to retreive a value from130 * \param [in] axis The axis to retreive a value from
131 * \return The value of the given axis131 * \return The value of the given axis
132 */132 */
133float mir_pointer_event_axis_value(MirPointerEvent const* event, 133float mir_pointer_event_axis_value(MirPointerEvent const* event,
134 MirPointerAxis axis);134 MirPointerAxis axis);
135135
136/**136/**
137137
=== modified file 'include/client/mir_toolkit/events/input/touch_event.h'
--- include/client/mir_toolkit/events/input/touch_event.h 2016-08-09 08:13:02 +0000
+++ include/client/mir_toolkit/events/input/touch_event.h 2016-10-27 03:52:22 +0000
@@ -32,7 +32,7 @@
32 */32 */
33typedef struct MirTouchEvent MirTouchEvent;33typedef struct MirTouchEvent MirTouchEvent;
3434
35/** 35/**
36 * An identifier for a touch-point. TouchId's are unique per-gesture.36 * An identifier for a touch-point. TouchId's are unique per-gesture.
37 * That is to say, once a touch has gone down at time T, no other touch will37 * That is to say, once a touch has gone down at time T, no other touch will
38 * use that touch's ID until all touches at time T have come up.38 * use that touch's ID until all touches at time T have come up.
@@ -144,7 +144,7 @@
144 * \param [in] axis The axis to retreive a value from144 * \param [in] axis The axis to retreive a value from
145 * \return The value of the given axis145 * \return The value of the given axis
146 */146 */
147float mir_touch_event_axis_value(MirTouchEvent const* event, 147float mir_touch_event_axis_value(MirTouchEvent const* event,
148 size_t touch_index, MirTouchAxis axis);148 size_t touch_index, MirTouchAxis axis);
149149
150/**150/**
151151
=== modified file 'include/client/mir_toolkit/events/input_configuration_event.h'
--- include/client/mir_toolkit/events/input_configuration_event.h 2016-07-18 07:38:38 +0000
+++ include/client/mir_toolkit/events/input_configuration_event.h 2016-10-27 03:52:22 +0000
@@ -39,7 +39,7 @@
39///39///
40/// Of course as things stand there is no client input-device introspection API so these events40/// Of course as things stand there is no client input-device introspection API so these events
41/// are difficult to use.41/// are difficult to use.
42 42
43typedef enum43typedef enum
44{44{
45 mir_input_configuration_action_configuration_changed,45 mir_input_configuration_action_configuration_changed,
4646
=== modified file 'include/client/mir_toolkit/events/resize_event.h'
--- include/client/mir_toolkit/events/resize_event.h 2016-07-18 07:38:38 +0000
+++ include/client/mir_toolkit/events/resize_event.h 2016-10-27 03:52:22 +0000
@@ -31,7 +31,7 @@
3131
32/**32/**
33 * Retrieve the new width reported by a given MirResizeEvent33 * Retrieve the new width reported by a given MirResizeEvent
34 * 34 *
35 * \param[in] ev The resize event35 * \param[in] ev The resize event
36 * \return The reported width36 * \return The reported width
37 */37 */
@@ -39,7 +39,7 @@
3939
40/**40/**
41 * Retrieve the new height reported by a given MirResizeEvent41 * Retrieve the new height reported by a given MirResizeEvent
42 * 42 *
43 * \param[in] ev The resize event43 * \param[in] ev The resize event
44 * \return The reported height44 * \return The reported height
45 */45 */
4646
=== modified file 'include/client/mir_toolkit/events/surface_placement.h'
--- include/client/mir_toolkit/events/surface_placement.h 2016-09-14 13:51:11 +0000
+++ include/client/mir_toolkit/events/surface_placement.h 2016-10-27 03:52:22 +0000
@@ -33,7 +33,7 @@
3333
34/**34/**
35 * Retrieve the relative position from a placement notification35 * Retrieve the relative position from a placement notification
36 * 36 *
37 * \param [in] event The placement event37 * \param [in] event The placement event
38 * \return The position relative to the parent surface38 * \return The position relative to the parent surface
39 */39 */
4040
=== modified file 'include/client/mir_toolkit/mir_buffer_stream.h'
--- include/client/mir_toolkit/mir_buffer_stream.h 2016-10-12 06:03:15 +0000
+++ include/client/mir_toolkit/mir_buffer_stream.h 2016-10-27 03:52:22 +0000
@@ -50,17 +50,17 @@
50char const *mir_buffer_stream_get_error_message(MirBufferStream *buffer_stream);50char const *mir_buffer_stream_get_error_message(MirBufferStream *buffer_stream);
5151
52/**52/**
53 * Create a new buffer stream. 53 * Create a new buffer stream.
54 *54 *
55 * For example, the resulting buffer stream may be used55 * For example, the resulting buffer stream may be used
56 * with mir_cursor_configuration_from_buffer_stream, 56 * with mir_cursor_configuration_from_buffer_stream,
57 * in order to post images to the system cursor.57 * in order to post images to the system cursor.
58 *58 *
59 * \param [in] connection A valid connection59 * \param [in] connection A valid connection
60 * \param [in] width Requested buffer width60 * \param [in] width Requested buffer width
61 * \param [in] height Requested buffer height61 * \param [in] height Requested buffer height
62 * \param [in] format Requested pixel format62 * \param [in] format Requested pixel format
63 * \param [in] buffer_usage Requested buffer usage, use 63 * \param [in] buffer_usage Requested buffer usage, use
64 * mir_buffer_usage_software for cursor image streams64 * mir_buffer_usage_software for cursor image streams
65 * \param [in] callback Callback to be invoked when the request completes65 * \param [in] callback Callback to be invoked when the request completes
66 * The callback is guaranteed to be called and called with a66 * The callback is guaranteed to be called and called with a
@@ -78,9 +78,9 @@
78 void* context);78 void* context);
7979
80/**80/**
81 * Create a new buffer stream unattached to a surface and wait for the result. 81 * Create a new buffer stream unattached to a surface and wait for the result.
82 * The resulting buffer stream may be used with 82 * The resulting buffer stream may be used with
83 * mir_cursor_configuration_from_buffer_stream in order to post images 83 * mir_cursor_configuration_from_buffer_stream in order to post images
84 * to the system cursor.84 * to the system cursor.
85 *85 *
86 * \param [in] connection A valid connection86 * \param [in] connection A valid connection
@@ -90,7 +90,7 @@
90 * \param [in] buffer_usage Requested buffer usage, use90 * \param [in] buffer_usage Requested buffer usage, use
91 * mir_buffer_usage_software for cursor image streams91 * mir_buffer_usage_software for cursor image streams
92 *92 *
93 * \return The new buffer stream. This is guaranteed non-null, 93 * \return The new buffer stream. This is guaranteed non-null,
94 * but may be invalid in the case of error.94 * but may be invalid in the case of error.
95 */95 */
96MirBufferStream* mir_connection_create_buffer_stream_sync(MirConnection *connection,96MirBufferStream* mir_connection_create_buffer_stream_sync(MirConnection *connection,
@@ -116,7 +116,7 @@
116 void *context);116 void *context);
117117
118/**118/**
119 * Release the specified buffer stream like in mir,_buffer_stream_release(), 119 * Release the specified buffer stream like in mir,_buffer_stream_release(),
120 * but also wait for the operation to complete.120 * but also wait for the operation to complete.
121 * \param [in] buffer_stream The buffer stream to be released121 * \param [in] buffer_stream The buffer stream to be released
122 */122 */
@@ -124,7 +124,7 @@
124124
125/**125/**
126 * Get the underlying platform type so the buffer obtained in "raw"126 * Get the underlying platform type so the buffer obtained in "raw"
127 * representation in mir_buffer_stream_get_current_buffer() 127 * representation in mir_buffer_stream_get_current_buffer()
128 * may be understood128 * may be understood
129 *129 *
130 * \deprecated Use of this function is inherently non-portable in the presence130 * \deprecated Use of this function is inherently non-portable in the presence
@@ -137,7 +137,7 @@
137 *137 *
138 * \pre The stream is valid138 * \pre The stream is valid
139 * \param [in] stream The stream139 * \param [in] stream The stream
140 * \return One of mir_platform_type_android or 140 * \return One of mir_platform_type_android or
141 * mir_platform_type_gbm141 * mir_platform_type_gbm
142 */142 */
143/// @cond143/// @cond
@@ -156,7 +156,7 @@
156156
157/**157/**
158 * Advance a buffer stream's buffer. The returned handle remains valid until the158 * Advance a buffer stream's buffer. The returned handle remains valid until the
159 * next call to mir_buffer_stream_swap_buffers, until the buffer stream has been 159 * next call to mir_buffer_stream_swap_buffers, until the buffer stream has been
160 * released or the connection to the server has been released.160 * released or the connection to the server has been released.
161 * \warning callback could be called from another thread. You must do any161 * \warning callback could be called from another thread. You must do any
162 * locking appropriate to protect your data accessed in the162 * locking appropriate to protect your data accessed in the
@@ -173,7 +173,7 @@
173 void *context);173 void *context);
174174
175/**175/**
176 * Advance a buffer stream's buffer as in mir_buffer stream_swap_buffers(), 176 * Advance a buffer stream's buffer as in mir_buffer stream_swap_buffers(),
177 * but also wait for the operation to complete.177 * but also wait for the operation to complete.
178 * \param [in] buffer_stream The buffer stream whose buffer to advance178 * \param [in] buffer_stream The buffer stream whose buffer to advance
179 */179 */
180180
=== modified file 'include/client/mir_toolkit/mir_cursor_configuration.h'
--- include/client/mir_toolkit/mir_cursor_configuration.h 2016-09-08 02:58:56 +0000
+++ include/client/mir_toolkit/mir_cursor_configuration.h 2016-10-27 03:52:22 +0000
@@ -55,7 +55,7 @@
5555
56/**56/**
57 * Returns a new cursor configuration tied to a given buffer stream.57 * Returns a new cursor configuration tied to a given buffer stream.
58 * If the configuration is successfully applied buffers from the stream will be used 58 * If the configuration is successfully applied buffers from the stream will be used
59 * to fill the system cursor.59 * to fill the system cursor.
60 * \param [in] stream The buffer stream60 * \param [in] stream The buffer stream
61 * \param [in] hotspot_x The x-coordinate to use as the cursor's hotspot.61 * \param [in] hotspot_x The x-coordinate to use as the cursor's hotspot.
6262
=== modified file 'include/client/mir_toolkit/mir_screencast.h'
--- include/client/mir_toolkit/mir_screencast.h 2016-07-18 07:38:38 +0000
+++ include/client/mir_toolkit/mir_screencast.h 2016-10-27 03:52:22 +0000
@@ -152,9 +152,9 @@
152 MirScreencast* screencast);152 MirScreencast* screencast);
153153
154/**154/**
155 * Retrieve the MirBufferStream associated with a screencast 155 * Retrieve the MirBufferStream associated with a screencast
156 * (to advance buffers, obtain EGLNativeWindowType, etc...)156 * (to advance buffers, obtain EGLNativeWindowType, etc...)
157 * 157 *
158 * \param[in] screencast The screencast158 * \param[in] screencast The screencast
159 */159 */
160MirBufferStream* mir_screencast_get_buffer_stream(MirScreencast* screencast);160MirBufferStream* mir_screencast_get_buffer_stream(MirScreencast* screencast);
161161
=== modified file 'include/client/mir_toolkit/mir_surface.h'
--- include/client/mir_toolkit/mir_surface.h 2016-10-12 06:03:15 +0000
+++ include/client/mir_toolkit/mir_surface.h 2016-10-27 03:52:22 +0000
@@ -500,12 +500,12 @@
500 * On application of the spec, a stream that is not present in the surface,500 * On application of the spec, a stream that is not present in the surface,
501 * but is in the list will be associated with the surface.501 * but is in the list will be associated with the surface.
502 * Streams set a displacement from the top-left corner of the surface.502 * Streams set a displacement from the top-left corner of the surface.
503 * 503 *
504 * \warning disassociating streams from the surface will not release() them.504 * \warning disassociating streams from the surface will not release() them.
505 * \warning It is wiser to arrange the streams within the bounds of the505 * \warning It is wiser to arrange the streams within the bounds of the
506 * surface the spec is applied to. Shells can define their own506 * surface the spec is applied to. Shells can define their own
507 * behavior as to what happens to an out-of-bound stream.507 * behavior as to what happens to an out-of-bound stream.
508 * 508 *
509 * \param [in] spec The spec to accumulate the request in.509 * \param [in] spec The spec to accumulate the request in.
510 * \param [in] streams An array of non-null streams info.510 * \param [in] streams An array of non-null streams info.
511 * \param [in] num_streams The number of elements in the streams array.511 * \param [in] num_streams The number of elements in the streams array.
@@ -734,7 +734,7 @@
734 * \return The DPI of the surface, or zero if unknown.734 * \return The DPI of the surface, or zero if unknown.
735 */735 */
736int mir_surface_get_dpi(MirSurface* surface);736int mir_surface_get_dpi(MirSurface* surface);
737 737
738/**738/**
739 * Query the focus state for a surface.739 * Query the focus state for a surface.
740 * \param [in] surface The surface to operate on740 * \param [in] surface The surface to operate on
@@ -750,7 +750,7 @@
750MirSurfaceVisibility mir_surface_get_visibility(MirSurface *surface);750MirSurfaceVisibility mir_surface_get_visibility(MirSurface *surface);
751751
752/**752/**
753 * Choose the cursor state for a surface: whether a cursor is shown, 753 * Choose the cursor state for a surface: whether a cursor is shown,
754 * and which cursor if so.754 * and which cursor if so.
755 * \param [in] surface The surface to operate on755 * \param [in] surface The surface to operate on
756 * \param [in] parameters The configuration parameters obtained756 * \param [in] parameters The configuration parameters obtained
757757
=== modified file 'include/client/mir_toolkit/version.h'
--- include/client/mir_toolkit/version.h 2016-10-12 06:03:15 +0000
+++ include/client/mir_toolkit/version.h 2016-10-27 03:52:22 +0000
@@ -40,7 +40,7 @@
40 *40 *
41 * The minor client API version. This will increase each time new backwards-compatible API41 * The minor client API version. This will increase each time new backwards-compatible API
42 * is added, and will reset to 0 each time MIR_CLIENT_MAJOR_VERSION is incremented.42 * is added, and will reset to 0 each time MIR_CLIENT_MAJOR_VERSION is incremented.
43 * 43 *
44 * See also: http://semver.org/44 * See also: http://semver.org/
45 */45 */
46#define MIR_CLIENT_MINOR_VERSION (4)46#define MIR_CLIENT_MINOR_VERSION (4)
4747
=== modified file 'include/common/mir/fd.h'
--- include/common/mir/fd.h 2015-02-22 07:46:25 +0000
+++ include/common/mir/fd.h 2016-10-27 03:52:22 +0000
@@ -25,7 +25,7 @@
25//TODO: remove once mir::Fd is used more pervasively.25//TODO: remove once mir::Fd is used more pervasively.
26// some existing code does not really allow us to transfer or share the ownership26// some existing code does not really allow us to transfer or share the ownership
27// of the fd. Constructing using mir::Fd(IntOwnedFd(int)) will help transition the existing27// of the fd. Constructing using mir::Fd(IntOwnedFd(int)) will help transition the existing
28// code to using the mir::Fd type properly. 28// code to using the mir::Fd type properly.
29struct IntOwnedFd29struct IntOwnedFd
30{30{
31 int int_owned_fd;31 int int_owned_fd;
3232
=== modified file 'include/common/mir/uncaught.h'
--- include/common/mir/uncaught.h 2016-10-20 14:35:09 +0000
+++ include/common/mir/uncaught.h 2016-10-27 03:52:22 +0000
@@ -19,7 +19,7 @@
19#ifndef MIR_CLIENT_API_HELPERS_H_19#ifndef MIR_CLIENT_API_HELPERS_H_
20#define MIR_CLIENT_API_HELPERS_H_20#define MIR_CLIENT_API_HELPERS_H_
2121
22#include <boost/exception/diagnostic_information.hpp> 22#include <boost/exception/diagnostic_information.hpp>
2323
24#include "mir/log.h"24#include "mir/log.h"
2525
2626
=== modified file 'include/core/mir/geometry/rectangle.h'
--- include/core/mir/geometry/rectangle.h 2016-08-25 08:16:10 +0000
+++ include/core/mir/geometry/rectangle.h 2016-10-27 03:52:22 +0000
@@ -67,7 +67,7 @@
6767
68 X left() const { return top_left.x; }68 X left() const { return top_left.x; }
69 X right() const { return bottom_right().x; }69 X right() const { return bottom_right().x; }
70 Y top() const { return top_left.y; } 70 Y top() const { return top_left.y; }
71 Y bottom() const { return bottom_right().y; }71 Y bottom() const { return bottom_right().y; }
72};72};
7373
7474
=== modified file 'include/platform/mir/graphics/cursor_image.h'
--- include/platform/mir/graphics/cursor_image.h 2015-02-22 07:46:25 +0000
+++ include/platform/mir/graphics/cursor_image.h 2016-10-27 03:52:22 +0000
@@ -34,12 +34,12 @@
3434
35 virtual void const* as_argb_8888() const = 0;35 virtual void const* as_argb_8888() const = 0;
36 virtual geometry::Size size() const = 0;36 virtual geometry::Size size() const = 0;
37 37
38 // We use "hotspot" to mean the offset within a cursor image38 // We use "hotspot" to mean the offset within a cursor image
39 // which should be placed at the onscreen39 // which should be placed at the onscreen
40 // location of the pointer.40 // location of the pointer.
41 virtual geometry::Displacement hotspot() const = 0;41 virtual geometry::Displacement hotspot() const = 0;
42 42
4343
44protected:44protected:
45 CursorImage() = default;45 CursorImage() = default;
4646
=== modified file 'include/platform/mir/graphics/display.h'
--- include/platform/mir/graphics/display.h 2016-10-12 06:03:15 +0000
+++ include/platform/mir/graphics/display.h 2016-10-27 03:52:22 +0000
@@ -71,7 +71,7 @@
7171
72 /** Post the content of the DisplayBuffers associated with this DisplaySyncGroup.72 /** Post the content of the DisplayBuffers associated with this DisplaySyncGroup.
73 * The content of all the DisplayBuffers in this DisplaySyncGroup are guaranteed to be onscreen73 * The content of all the DisplayBuffers in this DisplaySyncGroup are guaranteed to be onscreen
74 * in the near future. On some platforms, this may wait a potentially long time for vsync. 74 * in the near future. On some platforms, this may wait a potentially long time for vsync.
75 **/75 **/
76 virtual void post() = 0;76 virtual void post() = 0;
7777
7878
=== modified file 'include/platform/mir/graphics/display_buffer.h'
--- include/platform/mir/graphics/display_buffer.h 2016-10-12 06:03:15 +0000
+++ include/platform/mir/graphics/display_buffer.h 2016-10-27 03:52:22 +0000
@@ -52,9 +52,9 @@
52 /** The area the DisplayBuffer occupies in the virtual screen space. */52 /** The area the DisplayBuffer occupies in the virtual screen space. */
53 virtual geometry::Rectangle view_area() const = 0;53 virtual geometry::Rectangle view_area() const = 0;
5454
55 /** This will render renderlist to the screen and post the result to the 55 /** This will render renderlist to the screen and post the result to the
56 * screen if there is a hardware optimization that can be done.56 * screen if there is a hardware optimization that can be done.
57 * \param [in] renderlist 57 * \param [in] renderlist
58 * The renderables that should appear on the screen if the hardware58 * The renderables that should appear on the screen if the hardware
59 * is capable of optmizing that list somehow. If what you want59 * is capable of optmizing that list somehow. If what you want
60 * displayed on the screen cannot be represented by a RenderableList,60 * displayed on the screen cannot be represented by a RenderableList,
6161
=== modified file 'include/platform/mir/graphics/platform_ipc_operations.h'
--- include/platform/mir/graphics/platform_ipc_operations.h 2016-10-12 06:03:15 +0000
+++ include/platform/mir/graphics/platform_ipc_operations.h 2016-10-27 03:52:22 +0000
@@ -29,7 +29,7 @@
29enum class BufferIpcMsgType29enum class BufferIpcMsgType
30{30{
31 full_msg, //pack the full ipc representation of the buffer31 full_msg, //pack the full ipc representation of the buffer
32 update_msg //assume the client has a full representation, and pack only updates to the buffer 32 update_msg //assume the client has a full representation, and pack only updates to the buffer
33};33};
34class Buffer;34class Buffer;
35class BufferIpcMessage;35class BufferIpcMessage;
@@ -69,15 +69,15 @@
69 */69 */
70 virtual std::shared_ptr<PlatformIPCPackage> connection_ipc_package() = 0;70 virtual std::shared_ptr<PlatformIPCPackage> connection_ipc_package() = 0;
7171
72 72
73 /**73 /**
74 * Arranges a platform specific operation triggered by an IPC call74 * Arranges a platform specific operation triggered by an IPC call
75 * \returns the response that will be sent to the client75 * \returns the response that will be sent to the client
76 * \param [in] opcode the opcode that indicates the action to be performed 76 * \param [in] opcode the opcode that indicates the action to be performed
77 * \param [in] message the message that was sent to the server77 * \param [in] message the message that was sent to the server
78 */78 */
79 virtual PlatformOperationMessage platform_operation(79 virtual PlatformOperationMessage platform_operation(
80 unsigned int const opcode, PlatformOperationMessage const& message) = 0; 80 unsigned int const opcode, PlatformOperationMessage const& message) = 0;
8181
82protected:82protected:
83 PlatformIpcOperations() = default;83 PlatformIpcOperations() = default;
8484
=== modified file 'include/renderers/sw/mir/renderer/sw/pixel_source.h'
--- include/renderers/sw/mir/renderer/sw/pixel_source.h 2016-09-09 03:47:07 +0000
+++ include/renderers/sw/mir/renderer/sw/pixel_source.h 2016-10-27 03:52:22 +0000
@@ -35,7 +35,7 @@
35public:35public:
36 virtual ~PixelSource() = default;36 virtual ~PixelSource() = default;
3737
38 //functions have legacy issues with their signatures. 38 //functions have legacy issues with their signatures.
39 //FIXME: correct write, it requires that the user does too much to use it correctly,39 //FIXME: correct write, it requires that the user does too much to use it correctly,
40 // (ie, it forces them to figure out what size is proper, alloc a buffer, fill it, and then40 // (ie, it forces them to figure out what size is proper, alloc a buffer, fill it, and then
41 // copy the data into the buffer)41 // copy the data into the buffer)
4242
=== modified file 'include/server/mir/compositor/scene_element.h'
--- include/server/mir/compositor/scene_element.h 2015-06-17 05:20:42 +0000
+++ include/server/mir/compositor/scene_element.h 2016-10-27 03:52:22 +0000
@@ -41,7 +41,7 @@
4141
42 //TODO: Decoration is opaque on purpose. It is only used by an internal example,42 //TODO: Decoration is opaque on purpose. It is only used by an internal example,
43 // and this function should be removed from the public API.43 // and this function should be removed from the public API.
44 virtual std::unique_ptr<Decoration> decoration() const = 0; 44 virtual std::unique_ptr<Decoration> decoration() const = 0;
4545
46protected:46protected:
47 SceneElement() = default;47 SceneElement() = default;
4848
=== modified file 'include/server/mir/frontend/buffer_stream.h'
--- include/server/mir/frontend/buffer_stream.h 2016-07-18 07:38:38 +0000
+++ include/server/mir/frontend/buffer_stream.h 2016-10-27 03:52:22 +0000
@@ -43,19 +43,19 @@
43{43{
44public:44public:
45 virtual ~BufferStream() = default;45 virtual ~BufferStream() = default;
46 46
47 virtual void swap_buffers(graphics::Buffer* old_buffer, std::function<void(graphics::Buffer* new_buffer)> complete) = 0;47 virtual void swap_buffers(graphics::Buffer* old_buffer, std::function<void(graphics::Buffer* new_buffer)> complete) = 0;
4848
49 virtual void add_observer(std::shared_ptr<scene::SurfaceObserver> const& observer) = 0;49 virtual void add_observer(std::shared_ptr<scene::SurfaceObserver> const& observer) = 0;
50 virtual void remove_observer(std::weak_ptr<scene::SurfaceObserver> const& observer) = 0;50 virtual void remove_observer(std::weak_ptr<scene::SurfaceObserver> const& observer) = 0;
51 51
52 virtual void with_most_recent_buffer_do(52 virtual void with_most_recent_buffer_do(
53 std::function<void(graphics::Buffer&)> const& exec) = 0;53 std::function<void(graphics::Buffer&)> const& exec) = 0;
5454
55 virtual MirPixelFormat pixel_format() const = 0;55 virtual MirPixelFormat pixel_format() const = 0;
5656
57 //TODO: associate/disassociate_buffer are only used for timeout framedropping policy decisions.57 //TODO: associate/disassociate_buffer are only used for timeout framedropping policy decisions.
58 // They will be removed once timeout framedropping policy moves to the client side. 58 // They will be removed once timeout framedropping policy moves to the client side.
59 virtual void associate_buffer(graphics::BufferID) = 0;59 virtual void associate_buffer(graphics::BufferID) = 0;
60 virtual void disassociate_buffer(graphics::BufferID) = 0;60 virtual void disassociate_buffer(graphics::BufferID) = 0;
6161
6262
=== modified file 'include/server/mir/input/seat_report.h'
--- include/server/mir/input/seat_report.h 2016-08-01 21:27:13 +0000
+++ include/server/mir/input/seat_report.h 2016-10-27 03:52:22 +0000
@@ -38,7 +38,7 @@
38{38{
39public:39public:
40 virtual ~SeatReport() = default;40 virtual ~SeatReport() = default;
41 41
42 virtual void seat_add_device(uint64_t id) = 0;42 virtual void seat_add_device(uint64_t id) = 0;
43 virtual void seat_remove_device(uint64_t id) = 0;43 virtual void seat_remove_device(uint64_t id) = 0;
44 virtual void seat_dispatch_event(MirEvent const& event) = 0;44 virtual void seat_dispatch_event(MirEvent const& event) = 0;
4545
=== modified file 'include/server/mir/input/touch_visualizer.h'
--- include/server/mir/input/touch_visualizer.h 2016-01-29 08:18:22 +0000
+++ include/server/mir/input/touch_visualizer.h 2016-10-27 03:52:22 +0000
@@ -38,15 +38,15 @@
38 struct Spot38 struct Spot
39 {39 {
40 geometry::Point touch_location;40 geometry::Point touch_location;
41 41
42 // If pressure is zero, the touch-point can be interpreted as a hover.42 // If pressure is zero, the touch-point can be interpreted as a hover.
43 float pressure;43 float pressure;
44 };44 };
45 45
46 // Toggle visualization of touches46 // Toggle visualization of touches
47 virtual void enable() = 0;47 virtual void enable() = 0;
48 virtual void disable() = 0;48 virtual void disable() = 0;
49 49
50 // Visualize a given set of touches statelessly.50 // Visualize a given set of touches statelessly.
51 virtual void visualize_touches(std::vector<Spot> const& touches) = 0;51 virtual void visualize_touches(std::vector<Spot> const& touches) = 0;
5252
5353
=== modified file 'include/server/mir/scene/observer.h'
--- include/server/mir/scene/observer.h 2015-02-22 07:46:25 +0000
+++ include/server/mir/scene/observer.h 2016-10-27 03:52:22 +0000
@@ -36,7 +36,7 @@
36 virtual void surface_added(Surface* surface) = 0;36 virtual void surface_added(Surface* surface) = 0;
37 virtual void surface_removed(Surface* surface) = 0;37 virtual void surface_removed(Surface* surface) = 0;
38 virtual void surfaces_reordered() = 0;38 virtual void surfaces_reordered() = 0;
39 39
40 // Used to indicate the scene has changed in some way beyond the present surfaces40 // Used to indicate the scene has changed in some way beyond the present surfaces
41 // and will require full recomposition.41 // and will require full recomposition.
42 virtual void scene_changed() = 0;42 virtual void scene_changed() = 0;
4343
=== modified file 'include/server/mir/scene/surface.h'
--- include/server/mir/scene/surface.h 2016-10-12 06:03:15 +0000
+++ include/server/mir/scene/surface.h 2016-10-27 03:52:22 +0000
@@ -64,7 +64,7 @@
64 /// Size of the surface including window frame (if any)64 /// Size of the surface including window frame (if any)
65 virtual geometry::Size size() const = 0;65 virtual geometry::Size size() const = 0;
6666
67 virtual graphics::RenderableList generate_renderables(compositor::CompositorID id) const = 0; 67 virtual graphics::RenderableList generate_renderables(compositor::CompositorID id) const = 0;
68 virtual int buffers_ready_for_compositor(void const* compositor_id) const = 0;68 virtual int buffers_ready_for_compositor(void const* compositor_id) const = 0;
6969
70 virtual float alpha() const = 0; //only used in examples/70 virtual float alpha() const = 0; //only used in examples/
@@ -91,7 +91,7 @@
91 virtual void set_transformation(glm::mat4 const& t) = 0;91 virtual void set_transformation(glm::mat4 const& t) = 0;
92 virtual void set_alpha(float alpha) = 0;92 virtual void set_alpha(float alpha) = 0;
93 virtual void set_orientation(MirOrientation orientation) = 0;93 virtual void set_orientation(MirOrientation orientation) = 0;
94 94
95 virtual void set_cursor_image(std::shared_ptr<graphics::CursorImage> const& image) override = 0;95 virtual void set_cursor_image(std::shared_ptr<graphics::CursorImage> const& image) override = 0;
96 virtual std::shared_ptr<graphics::CursorImage> cursor_image() const override = 0;96 virtual std::shared_ptr<graphics::CursorImage> cursor_image() const override = 0;
9797
9898
=== modified file 'include/server/mir/server.h'
--- include/server/mir/server.h 2016-07-28 23:00:22 +0000
+++ include/server/mir/server.h 2016-10-27 03:52:22 +0000
@@ -53,7 +53,7 @@
53namespace scene53namespace scene
54{54{
55class ApplicationNotRespondingDetector;55class ApplicationNotRespondingDetector;
56class BufferStreamFactory; 56class BufferStreamFactory;
57class PromptSessionListener;57class PromptSessionListener;
58class PromptSessionManager;58class PromptSessionManager;
59class SessionListener;59class SessionListener;
6060
=== modified file 'include/server/mir/shell/surface_specification.h'
--- include/server/mir/shell/surface_specification.h 2016-10-12 06:03:15 +0000
+++ include/server/mir/shell/surface_specification.h 2016-10-27 03:52:22 +0000
@@ -80,7 +80,7 @@
80 optional_value<std::weak_ptr<scene::Surface>> parent;80 optional_value<std::weak_ptr<scene::Surface>> parent;
8181
82 optional_value<std::vector<geometry::Rectangle>> input_shape;82 optional_value<std::vector<geometry::Rectangle>> input_shape;
83 83
84 // TODO scene::SurfaceCreationParameters overlaps this content but has additional fields:84 // TODO scene::SurfaceCreationParameters overlaps this content but has additional fields:
85 // geometry::Point top_left;85 // geometry::Point top_left;
86 // input::InputReceptionMode input_mode;86 // input::InputReceptionMode input_mode;
8787
=== modified file 'include/test/mir/test/doubles/nested_mock_egl.h'
--- include/test/mir/test/doubles/nested_mock_egl.h 2016-01-29 08:18:22 +0000
+++ include/test/mir/test/doubles/nested_mock_egl.h 2016-10-27 03:52:22 +0000
@@ -27,7 +27,7 @@
27{27{
28namespace doubles28namespace doubles
29{29{
30/// MockEGL with configuration for operating a nested server. 30/// MockEGL with configuration for operating a nested server.
31class NestedMockEGL : public ::testing::NiceMock<MockEGL>31class NestedMockEGL : public ::testing::NiceMock<MockEGL>
32{32{
33public:33public:
3434
=== modified file 'include/test/mir/test/doubles/null_display.h'
--- include/test/mir/test/doubles/null_display.h 2016-10-12 06:03:15 +0000
+++ include/test/mir/test/doubles/null_display.h 2016-10-27 03:52:22 +0000
@@ -68,7 +68,7 @@
6868
69 std::shared_ptr<graphics::Cursor> create_hardware_cursor(std::shared_ptr<graphics::CursorImage> const& /* initial_image */) override69 std::shared_ptr<graphics::Cursor> create_hardware_cursor(std::shared_ptr<graphics::CursorImage> const& /* initial_image */) override
70 {70 {
71 return {}; 71 return {};
72 }72 }
73 std::unique_ptr<graphics::VirtualOutput> create_virtual_output(int /*width*/, int /*height*/) override73 std::unique_ptr<graphics::VirtualOutput> create_virtual_output(int /*width*/, int /*height*/) override
74 {74 {
7575
=== modified file 'include/test/mir/test/event_factory.h'
--- include/test/mir/test/event_factory.h 2016-01-29 08:18:22 +0000
+++ include/test/mir/test/event_factory.h 2016-10-27 03:52:22 +0000
@@ -91,7 +91,7 @@
91 TouchParameters& from_device(int device_id);91 TouchParameters& from_device(int device_id);
92 TouchParameters& at_position(geometry::Point abs_pos);92 TouchParameters& at_position(geometry::Point abs_pos);
93 TouchParameters& with_action(Action touch_action);93 TouchParameters& with_action(Action touch_action);
94 94
95 int device_id;95 int device_id;
96 int abs_x;96 int abs_x;
97 int abs_y;97 int abs_y;
9898
=== modified file 'include/test/mir/test/event_matchers.h'
--- include/test/mir/test/event_matchers.h 2016-10-11 18:10:32 +0000
+++ include/test/mir/test/event_matchers.h 2016-10-27 03:52:22 +0000
@@ -99,7 +99,7 @@
99 auto kev = maybe_key_event(to_address(arg));99 auto kev = maybe_key_event(to_address(arg));
100 if (kev == nullptr)100 if (kev == nullptr)
101 return false;101 return false;
102 102
103 if (mir_keyboard_event_action(kev) != mir_keyboard_action_down)103 if (mir_keyboard_event_action(kev) != mir_keyboard_action_down)
104 return false;104 return false;
105105
@@ -111,7 +111,7 @@
111 auto kev = maybe_key_event(to_address(arg));111 auto kev = maybe_key_event(to_address(arg));
112 if (kev == nullptr)112 if (kev == nullptr)
113 return false;113 return false;
114 114
115 if (mir_keyboard_event_action(kev) != mir_keyboard_action_repeat)115 if (mir_keyboard_event_action(kev) != mir_keyboard_action_repeat)
116 return false;116 return false;
117117
@@ -123,7 +123,7 @@
123 auto kev = maybe_key_event(to_address(arg));123 auto kev = maybe_key_event(to_address(arg));
124 if (kev == nullptr)124 if (kev == nullptr)
125 return false;125 return false;
126 126
127 if (mir_keyboard_event_action(kev) != mir_keyboard_action_up)127 if (mir_keyboard_event_action(kev) != mir_keyboard_action_up)
128 return false;128 return false;
129129
@@ -135,12 +135,12 @@
135 auto kev = maybe_key_event(to_address(arg));135 auto kev = maybe_key_event(to_address(arg));
136 if (kev == nullptr)136 if (kev == nullptr)
137 return false;137 return false;
138 138
139 if(mir_keyboard_event_modifiers(kev) != modifiers)139 if(mir_keyboard_event_modifiers(kev) != modifiers)
140 {140 {
141 return false;141 return false;
142 }142 }
143 143
144 return true;144 return true;
145}145}
146146
@@ -186,7 +186,7 @@
186{186{
187 auto expected = maybe_touch_event(to_address(event));187 auto expected = maybe_touch_event(to_address(event));
188 auto actual = maybe_touch_event(to_address(arg));188 auto actual = maybe_touch_event(to_address(arg));
189 189
190 if (expected == nullptr || actual == nullptr)190 if (expected == nullptr || actual == nullptr)
191 return false;191 return false;
192192
@@ -199,9 +199,9 @@
199 if (mir_touch_event_id(actual, i) != mir_touch_event_id(expected, i) ||199 if (mir_touch_event_id(actual, i) != mir_touch_event_id(expected, i) ||
200 mir_touch_event_action(actual, i) != mir_touch_event_action(expected, i) ||200 mir_touch_event_action(actual, i) != mir_touch_event_action(expected, i) ||
201 mir_touch_event_tooltype(actual, i) != mir_touch_event_tooltype(expected, i) ||201 mir_touch_event_tooltype(actual, i) != mir_touch_event_tooltype(expected, i) ||
202 mir_touch_event_axis_value(actual, i, mir_touch_axis_x) != 202 mir_touch_event_axis_value(actual, i, mir_touch_axis_x) !=
203 mir_touch_event_axis_value(expected, i, mir_touch_axis_x) ||203 mir_touch_event_axis_value(expected, i, mir_touch_axis_x) ||
204 mir_touch_event_axis_value(actual, i, mir_touch_axis_y) != 204 mir_touch_event_axis_value(actual, i, mir_touch_axis_y) !=
205 mir_touch_event_axis_value(expected, i, mir_touch_axis_y))205 mir_touch_event_axis_value(expected, i, mir_touch_axis_y))
206 {206 {
207 return false;207 return false;
208208
=== modified file 'include/test/mir_test_framework/declarative_placement_window_manage_policy.h'
--- include/test/mir_test_framework/declarative_placement_window_manage_policy.h 2016-07-18 07:38:38 +0000
+++ include/test/mir_test_framework/declarative_placement_window_manage_policy.h 2016-10-27 03:52:22 +0000
@@ -39,7 +39,7 @@
39public:39public:
40 DeclarativePlacementWindowManagerPolicy(40 DeclarativePlacementWindowManagerPolicy(
41 mir::shell::WindowManagerTools* const tools,41 mir::shell::WindowManagerTools* const tools,
42 SurfaceGeometries const& positions_by_name, 42 SurfaceGeometries const& positions_by_name,
43 std::shared_ptr<mir::shell::DisplayLayout> const& display_layout);43 std::shared_ptr<mir::shell::DisplayLayout> const& display_layout);
4444
45 auto handle_place_new_surface(45 auto handle_place_new_surface(
4646
=== modified file 'playground/demo-shell/demo_compositor.cpp'
--- playground/demo-shell/demo_compositor.cpp 2016-10-12 06:03:15 +0000
+++ playground/demo-shell/demo_compositor.cpp 2016-10-27 03:52:22 +0000
@@ -70,7 +70,7 @@
70 for(auto const& it : elements)70 for(auto const& it : elements)
71 {71 {
72 auto const& renderable = it->renderable();72 auto const& renderable = it->renderable();
73 73
74 bool embellished = false;74 bool embellished = false;
75 if (auto decor = it->decoration())75 if (auto decor = it->decoration())
76 {76 {
@@ -179,10 +179,10 @@
179 int db_height = view_area.size.height.as_int();179 int db_height = view_area.size.height.as_int();
180 int db_x = view_area.top_left.x.as_int();180 int db_x = view_area.top_left.x.as_int();
181 int db_y = view_area.top_left.y.as_int();181 int db_y = view_area.top_left.y.as_int();
182 182
183 float zoom_width = db_width / zoom_mag;183 float zoom_width = db_width / zoom_mag;
184 float zoom_height = db_height / zoom_mag;184 float zoom_height = db_height / zoom_mag;
185 185
186 // Note the 0.5f. This is because cursors (and all input in general)186 // Note the 0.5f. This is because cursors (and all input in general)
187 // measures coordinates at the centre of a pixel. But GL measures to187 // measures coordinates at the centre of a pixel. But GL measures to
188 // the top-left corner of a pixel.188 // the top-left corner of a pixel.
@@ -191,7 +191,7 @@
191191
192 float normal_x = screen_x / db_width;192 float normal_x = screen_x / db_width;
193 float normal_y = screen_y / db_height;193 float normal_y = screen_y / db_height;
194 194
195 // Position the viewport so the cursor location matches up.195 // Position the viewport so the cursor location matches up.
196 // This assumes the hardware cursor still traverses the physical196 // This assumes the hardware cursor still traverses the physical
197 // screen and isn't being warped.197 // screen and isn't being warped.
198198
=== modified file 'playground/demo-shell/demo_renderer.h'
--- playground/demo-shell/demo_renderer.h 2016-01-29 08:18:22 +0000
+++ playground/demo-shell/demo_renderer.h 2016-10-27 03:52:22 +0000
@@ -79,7 +79,7 @@
7979
80 ColourEffect colour_effect;80 ColourEffect colour_effect;
81 Program inverse_program, contrast_program;81 Program inverse_program, contrast_program;
82 82
83 mutable DecorMap decor_map;83 mutable DecorMap decor_map;
84 mutable typo::GLCache title_cache;84 mutable typo::GLCache title_cache;
85};85};
8686
=== modified file 'playground/demo-shell/window_manager.cpp'
--- playground/demo-shell/window_manager.cpp 2016-07-26 03:56:14 +0000
+++ playground/demo-shell/window_manager.cpp 2016-10-27 03:52:22 +0000
@@ -186,7 +186,7 @@
186 left = old_pos.x.as_int() + dx;186 left = old_pos.x.as_int() + dx;
187 else if (xedge == right_edge)187 else if (xedge == right_edge)
188 right = old_pos.x.as_int() + old_size.width.as_int() + dx;188 right = old_pos.x.as_int() + old_size.width.as_int() + dx;
189 189
190 if (yedge == top_edge && dy < height)190 if (yedge == top_edge && dy < height)
191 top = old_pos.y.as_int() + dy;191 top = old_pos.y.as_int() + dy;
192 else if (yedge == bottom_edge)192 else if (yedge == bottom_edge)
@@ -206,7 +206,7 @@
206206
207 auto modifiers = mir_keyboard_event_modifiers(kev);207 auto modifiers = mir_keyboard_event_modifiers(kev);
208 auto scan_code = mir_keyboard_event_scan_code(kev);208 auto scan_code = mir_keyboard_event_scan_code(kev);
209 209
210 if (modifiers & mir_input_event_modifier_alt &&210 if (modifiers & mir_input_event_modifier_alt &&
211 scan_code == KEY_TAB) // TODO: Use keycode once we support keymapping on the server side211 scan_code == KEY_TAB) // TODO: Use keycode once we support keymapping on the server side
212 {212 {
@@ -295,7 +295,7 @@
295 case KEY_0: preferred_mode = true; break;295 case KEY_0: preferred_mode = true; break;
296 default: break;296 default: break;
297 }297 }
298 298
299 if (rotating || mode_change || preferred_mode)299 if (rotating || mode_change || preferred_mode)
300 {300 {
301 compositor->stop();301 compositor->stop();
@@ -322,7 +322,7 @@
322 mode_change) % nmodes;322 mode_change) % nmodes;
323 }323 }
324 });324 });
325 325
326 display->configure(*conf);326 display->configure(*conf);
327 compositor->start();327 compositor->start();
328 return true;328 return true;
@@ -397,7 +397,7 @@
397 // there's a clear edge to the desktop.397 // there's a clear edge to the desktop.
398 if (zoom_exponent < 0)398 if (zoom_exponent < 0)
399 zoom_exponent = 0;399 zoom_exponent = 0;
400 400
401 new_zoom_mag = powf(1.2f, zoom_exponent);401 new_zoom_mag = powf(1.2f, zoom_exponent);
402 handled = true;402 handled = true;
403 }403 }
@@ -444,7 +444,7 @@
444 old_size = surf->size();444 old_size = surf->size();
445 }445 }
446446
447 if (surf && 447 if (surf &&
448 (modifiers & mir_input_event_modifier_alt) &&448 (modifiers & mir_input_event_modifier_alt) &&
449 action == mir_pointer_action_motion &&449 action == mir_pointer_action_motion &&
450 vscroll)450 vscroll)
@@ -583,7 +583,7 @@
583 return false;583 return false;
584 auto iev = mir_event_get_input_event(&event);584 auto iev = mir_event_get_input_event(&event);
585 auto input_type = mir_input_event_get_type(iev);585 auto input_type = mir_input_event_get_type(iev);
586 586
587 if (input_type == mir_input_event_type_key)587 if (input_type == mir_input_event_type_key)
588 {588 {
589 return handle_key_event(mir_input_event_get_keyboard_event(iev));589 return handle_key_event(mir_input_event_get_keyboard_event(iev));
590590
=== modified file 'playground/demo-shell/window_manager.h'
--- playground/demo-shell/window_manager.h 2016-07-26 03:56:14 +0000
+++ playground/demo-shell/window_manager.h 2016-10-27 03:52:22 +0000
@@ -49,7 +49,7 @@
4949
50class WindowManager : public input::EventFilter50class WindowManager : public input::EventFilter
51{51{
52public: 52public:
53 WindowManager();53 WindowManager();
54 ~WindowManager() = default;54 ~WindowManager() = default;
5555
@@ -58,7 +58,7 @@
58 void set_compositor(std::shared_ptr<compositor::Compositor> const& compositor);58 void set_compositor(std::shared_ptr<compositor::Compositor> const& compositor);
59 void set_input_scene(std::shared_ptr<input::Scene> const& scene);59 void set_input_scene(std::shared_ptr<input::Scene> const& scene);
60 void force_redraw();60 void force_redraw();
61 61
62 bool handle(MirEvent const& event) override;62 bool handle(MirEvent const& event) override;
6363
64protected:64protected:
6565
=== modified file 'playground/mir_demo_client_chain_jumping_buffers.c'
--- playground/mir_demo_client_chain_jumping_buffers.c 2016-06-08 18:37:32 +0000
+++ playground/mir_demo_client_chain_jumping_buffers.c 2016-10-27 03:52:22 +0000
@@ -55,7 +55,7 @@
55 else55 else
56 pixel[j] = fg;56 pixel[j] = fg;
57 }57 }
58 vaddr += region.stride; 58 vaddr += region.stride;
59 }59 }
60}60}
6161
6262
=== modified file 'playground/mir_demo_client_prerendered_frames.c'
--- playground/mir_demo_client_prerendered_frames.c 2016-10-11 07:12:33 +0000
+++ playground/mir_demo_client_prerendered_frames.c 2016-10-27 03:52:22 +0000
@@ -34,7 +34,7 @@
34float distance(int x0, int y0, int x1, int y1)34float distance(int x0, int y0, int x1, int y1)
35{35{
36 float dx = x1 - x0;36 float dx = x1 - x0;
37 float dy = y1 - y0; 37 float dy = y1 - y0;
38 return sqrt((dx * dx + dy * dy));38 return sqrt((dx * dx + dy * dy));
39}39}
4040
@@ -45,7 +45,7 @@
45 if ((!region.vaddr) || (region.pixel_format != mir_pixel_format_abgr_8888))45 if ((!region.vaddr) || (region.pixel_format != mir_pixel_format_abgr_8888))
46 return;46 return;
47 int const center_x = region.width / 2;47 int const center_x = region.width / 2;
48 int const center_y = region.height / 2; 48 int const center_y = region.height / 2;
49 unsigned char* vaddr = (unsigned char*) region.vaddr;49 unsigned char* vaddr = (unsigned char*) region.vaddr;
50 for(int i = 0; i < region.height; i++)50 for(int i = 0; i < region.height; i++)
51 {51 {
@@ -53,13 +53,13 @@
53 for(int j = 0; j < region.width ; j++)53 for(int j = 0; j < region.width ; j++)
54 {54 {
55 int const centered_i = i - center_y;55 int const centered_i = i - center_y;
56 int const centered_j = j - center_x; 56 int const centered_j = j - center_x;
57 if (distance(0,0, centered_i, centered_j) > radius)57 if (distance(0,0, centered_i, centered_j) > radius)
58 pixel[j] = bg;58 pixel[j] = bg;
59 else59 else
60 pixel[j] = fg;60 pixel[j] = fg;
61 }61 }
62 vaddr += region.stride; 62 vaddr += region.stride;
63 }63 }
64}64}
6565
@@ -215,7 +215,7 @@
215 mir_presentation_chain_submit_buffer(chain, b);215 mir_presentation_chain_submit_buffer(chain, b);
216216
217 if ((i == num_prerendered_frames - 1) || (i == 0))217 if ((i == num_prerendered_frames - 1) || (i == 0))
218 inc *= -1; 218 inc *= -1;
219 i = i + inc;219 i = i + inc;
220 }220 }
221221
222222
=== modified file 'src/client/buffer.cpp'
--- src/client/buffer.cpp 2016-10-12 06:03:15 +0000
+++ src/client/buffer.cpp 2016-10-27 03:52:22 +0000
@@ -76,7 +76,7 @@
7676
77 cb();77 cb();
78}78}
79 79
80MirGraphicsRegion mcl::Buffer::map_region()80MirGraphicsRegion mcl::Buffer::map_region()
81{81{
82 std::lock_guard<decltype(mutex)> lk(mutex);82 std::lock_guard<decltype(mutex)> lk(mutex);
8383
=== modified file 'src/client/buffer_factory.cpp'
--- src/client/buffer_factory.cpp 2016-08-09 08:13:02 +0000
+++ src/client/buffer_factory.cpp 2016-10-27 03:52:22 +0000
@@ -71,7 +71,7 @@
71 if (buffer.has_error())71 if (buffer.has_error())
72 {72 {
73 b = std::make_unique<ErrorBuffer>(73 b = std::make_unique<ErrorBuffer>(
74 buffer.error(), error_id--, 74 buffer.error(), error_id--,
75 (*request_it)->cb, (*request_it)->cb_context, (*request_it)->connection);75 (*request_it)->cb, (*request_it)->cb_context, (*request_it)->connection);
76 }76 }
77 else77 else
7878
=== modified file 'src/client/buffer_stream.cpp'
--- src/client/buffer_stream.cpp 2016-10-26 05:15:38 +0000
+++ src/client/buffer_stream.cpp 2016-10-27 03:52:22 +0000
@@ -292,7 +292,7 @@
292 buffer_depository = std::make_unique<BufferDepository>(292 buffer_depository = std::make_unique<BufferDepository>(
293 client_platform->create_buffer_factory(), factory,293 client_platform->create_buffer_factory(), factory,
294 std::make_shared<Requests>(display_server, protobuf_bs->id().value()), map,294 std::make_shared<Requests>(display_server, protobuf_bs->id().value()), map,
295 ideal_buffer_size, static_cast<MirPixelFormat>(protobuf_bs->pixel_format()), 295 ideal_buffer_size, static_cast<MirPixelFormat>(protobuf_bs->pixel_format()),
296 protobuf_bs->buffer_usage(), nbuffers);296 protobuf_bs->buffer_usage(), nbuffers);
297297
298 egl_native_window_ = client_platform->create_egl_native_window(this);298 egl_native_window_ = client_platform->create_egl_native_window(this);
@@ -478,7 +478,7 @@
478 if (attrib != mir_surface_attrib_swapinterval)478 if (attrib != mir_surface_attrib_swapinterval)
479 {479 {
480 BOOST_THROW_EXCEPTION(std::logic_error("Attempt to configure surface attribute " + std::to_string(attrib) +480 BOOST_THROW_EXCEPTION(std::logic_error("Attempt to configure surface attribute " + std::to_string(attrib) +
481 " on BufferStream but only mir_surface_attrib_swapinterval is supported")); 481 " on BufferStream but only mir_surface_attrib_swapinterval is supported"));
482 }482 }
483483
484 auto i = interval;484 auto i = interval;
@@ -559,7 +559,7 @@
559void mcl::BufferStream::buffer_unavailable()559void mcl::BufferStream::buffer_unavailable()
560{560{
561 std::unique_lock<decltype(mutex)> lock(mutex);561 std::unique_lock<decltype(mutex)> lock(mutex);
562 buffer_depository->lost_connection(); 562 buffer_depository->lost_connection();
563}563}
564564
565void mcl::BufferStream::set_size(geom::Size sz)565void mcl::BufferStream::set_size(geom::Size sz)
566566
=== modified file 'src/client/buffer_vault.cpp'
--- src/client/buffer_vault.cpp 2016-10-12 06:03:15 +0000
+++ src/client/buffer_vault.cpp 2016-10-27 03:52:22 +0000
@@ -91,7 +91,7 @@
91 {91 {
92 auto buffer = map->buffer(it.first);92 auto buffer = map->buffer(it.first);
93 buffer->set_callback(ignore_buffer, nullptr);93 buffer->set_callback(ignore_buffer, nullptr);
94 } 94 }
95 free_buffer(it.first);95 free_buffer(it.first);
96 }96 }
97 catch (...)97 catch (...)
@@ -122,7 +122,7 @@
122 auto map = surface_map.lock();122 auto map = surface_map.lock();
123 if (!map)123 if (!map)
124 BOOST_THROW_EXCEPTION(std::logic_error("connection resources lost; cannot access buffer"));124 BOOST_THROW_EXCEPTION(std::logic_error("connection resources lost; cannot access buffer"));
125 125
126 if (auto buffer = map->buffer(id))126 if (auto buffer = map->buffer(id))
127 return buffer;127 return buffer;
128 else128 else
@@ -155,7 +155,7 @@
155 for (auto it = buffers.begin(); it != buffers.end();)155 for (auto it = buffers.begin(); it != buffers.end();)
156 {156 {
157 auto buffer = checked_buffer_from_map(it->first);157 auto buffer = checked_buffer_from_map(it->first);
158 if ((it->second == Owner::Self) && (buffer->size() != size)) 158 if ((it->second == Owner::Self) && (buffer->size() != size))
159 {159 {
160 current_buffer_count--;160 current_buffer_count--;
161 free_ids.push_back(it->first);161 free_ids.push_back(it->first);
@@ -165,7 +165,7 @@
165 {165 {
166 it++;166 it++;
167 }167 }
168 } 168 }
169169
170 mcl::NoTLSPromise<std::shared_ptr<mcl::MirBuffer>> promise;170 mcl::NoTLSPromise<std::shared_ptr<mcl::MirBuffer>> promise;
171 auto it = available_buffer();171 auto it = available_buffer();
172172
=== modified file 'src/client/client_buffer_stream.h'
--- src/client/client_buffer_stream.h 2016-10-11 18:59:08 +0000
+++ src/client/client_buffer_stream.h 2016-10-27 03:52:22 +0000
@@ -87,7 +87,7 @@
87 virtual MirPlatformType platform_type() = 0;87 virtual MirPlatformType platform_type() = 0;
8888
89 virtual frontend::BufferStreamId rpc_id() const = 0;89 virtual frontend::BufferStreamId rpc_id() const = 0;
90 90
91 virtual bool valid() const = 0;91 virtual bool valid() const = 0;
92 virtual void set_size(geometry::Size) = 0;92 virtual void set_size(geometry::Size) = 0;
93 virtual MirWaitHandle* set_scale(float) = 0;93 virtual MirWaitHandle* set_scale(float) = 0;
9494
=== modified file 'src/client/connection_surface_map.cpp'
--- src/client/connection_surface_map.cpp 2016-10-13 16:32:59 +0000
+++ src/client/connection_surface_map.cpp 2016-10-27 03:52:22 +0000
@@ -94,7 +94,7 @@
94 mf::BufferStreamId stream_id, std::shared_ptr<MirPresentationChain> const& chain)94 mf::BufferStreamId stream_id, std::shared_ptr<MirPresentationChain> const& chain)
95{95{
96 std::lock_guard<decltype(stream_guard)> lk(stream_guard);96 std::lock_guard<decltype(stream_guard)> lk(stream_guard);
97 chains[stream_id] = chain; 97 chains[stream_id] = chain;
98}98}
9999
100void mcl::ConnectionSurfaceMap::erase(mf::BufferStreamId stream_id)100void mcl::ConnectionSurfaceMap::erase(mf::BufferStreamId stream_id)
101101
=== modified file 'src/client/cursor_configuration.h'
--- src/client/cursor_configuration.h 2015-04-28 07:54:10 +0000
+++ src/client/cursor_configuration.h 2016-10-27 03:52:22 +0000
@@ -29,9 +29,9 @@
29}29}
30}30}
3131
32// Parameters for configuring the apperance and behavior of the system cursor. 32// Parameters for configuring the apperance and behavior of the system cursor.
33// Will grow to include cursors specified by raw RGBA data, hotspots, etc...33// Will grow to include cursors specified by raw RGBA data, hotspots, etc...
34struct MirCursorConfiguration 34struct MirCursorConfiguration
35{35{
36 MirCursorConfiguration(char const* name);36 MirCursorConfiguration(char const* name);
37 MirCursorConfiguration(mir::client::ClientBufferStream const* stream, int hotspot_x, int hotspot_y);37 MirCursorConfiguration(mir::client::ClientBufferStream const* stream, int hotspot_x, int hotspot_y);
3838
=== modified file 'src/client/event.cpp'
--- src/client/event.cpp 2016-10-12 06:03:15 +0000
+++ src/client/event.cpp 2016-10-27 03:52:22 +0000
@@ -115,21 +115,21 @@
115MirSurfaceEvent const* mir_event_get_surface_event(MirEvent const* ev)115MirSurfaceEvent const* mir_event_get_surface_event(MirEvent const* ev)
116{116{
117 expect_event_type(ev, mir_event_type_surface);117 expect_event_type(ev, mir_event_type_surface);
118 118
119 return ev->to_surface();119 return ev->to_surface();
120}120}
121121
122MirResizeEvent const* mir_event_get_resize_event(MirEvent const* ev)122MirResizeEvent const* mir_event_get_resize_event(MirEvent const* ev)
123{123{
124 expect_event_type(ev, mir_event_type_resize);124 expect_event_type(ev, mir_event_type_resize);
125 125
126 return ev->to_resize();126 return ev->to_resize();
127}127}
128128
129MirPromptSessionEvent const* mir_event_get_prompt_session_event(MirEvent const* ev)129MirPromptSessionEvent const* mir_event_get_prompt_session_event(MirEvent const* ev)
130{130{
131 expect_event_type(ev, mir_event_type_prompt_session_state_change);131 expect_event_type(ev, mir_event_type_prompt_session_state_change);
132 132
133 return ev->to_prompt_session();133 return ev->to_prompt_session();
134}134}
135135
136136
=== modified file 'src/client/event_printer.cpp'
--- src/client/event_printer.cpp 2016-10-12 06:03:15 +0000
+++ src/client/event_printer.cpp 2016-10-27 03:52:22 +0000
@@ -345,7 +345,7 @@
345345
346 for (size_t size = mir_input_device_state_event_device_count(&event), index = 0; index != size; ++index)346 for (size_t size = mir_input_device_state_event_device_count(&event), index = 0; index != size; ++index)
347 {347 {
348 out << mir_input_device_state_event_device_id(&event, index) 348 out << mir_input_device_state_event_device_id(&event, index)
349 << " btns=" << mir_input_device_state_event_device_pointer_buttons(&event, index)349 << " btns=" << mir_input_device_state_event_device_pointer_buttons(&event, index)
350 << " pressed=(";350 << " pressed=(";
351 auto key_count = mir_input_device_state_event_device_pressed_keys_count(&event, index);351 auto key_count = mir_input_device_state_event_device_pressed_keys_count(&event, index);
352352
=== modified file 'src/client/events/event_builders.cpp'
--- src/client/events/event_builders.cpp 2016-10-13 16:23:04 +0000
+++ src/client/events/event_builders.cpp 2016-10-27 03:52:22 +0000
@@ -160,7 +160,7 @@
160namespace160namespace
161{161{
162// Never exposed in old event, so lets avoid leaking it in to a header now.162// Never exposed in old event, so lets avoid leaking it in to a header now.
163enum 163enum
164{164{
165 AINPUT_SOURCE_CLASS_MASK = 0x000000ff,165 AINPUT_SOURCE_CLASS_MASK = 0x000000ff,
166166
@@ -170,7 +170,7 @@
170 AINPUT_SOURCE_CLASS_POSITION = 0x00000008,170 AINPUT_SOURCE_CLASS_POSITION = 0x00000008,
171 AINPUT_SOURCE_CLASS_JOYSTICK = 0x00000010171 AINPUT_SOURCE_CLASS_JOYSTICK = 0x00000010
172};172};
173enum 173enum
174{174{
175 AINPUT_SOURCE_UNKNOWN = 0x00000000,175 AINPUT_SOURCE_UNKNOWN = 0x00000000,
176176
@@ -325,7 +325,7 @@
325325
326mir::EventUPtr mev::make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp,326mir::EventUPtr mev::make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp,
327 std::vector<uint8_t> const& cookie, MirInputEventModifiers modifiers, MirPointerAction action,327 std::vector<uint8_t> const& cookie, MirInputEventModifiers modifiers, MirPointerAction action,
328 MirPointerButtons buttons_pressed, 328 MirPointerButtons buttons_pressed,
329 float x_axis_value, float y_axis_value,329 float x_axis_value, float y_axis_value,
330 float hscroll_value, float vscroll_value,330 float hscroll_value, float vscroll_value,
331 float relative_x_value, float relative_y_value)331 float relative_x_value, float relative_y_value)
@@ -355,7 +355,7 @@
355// Deprecated version with uint64_t mac355// Deprecated version with uint64_t mac
356mir::EventUPtr mev::make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp,356mir::EventUPtr mev::make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp,
357 uint64_t /*mac*/, MirInputEventModifiers modifiers, MirPointerAction action,357 uint64_t /*mac*/, MirInputEventModifiers modifiers, MirPointerAction action,
358 MirPointerButtons buttons_pressed, 358 MirPointerButtons buttons_pressed,
359 float x_axis_value, float y_axis_value,359 float x_axis_value, float y_axis_value,
360 float hscroll_value, float vscroll_value,360 float hscroll_value, float vscroll_value,
361 float relative_x_value, float relative_y_value)361 float relative_x_value, float relative_y_value)
@@ -381,7 +381,7 @@
381// Deprecated version without relative axis381// Deprecated version without relative axis
382mir::EventUPtr mev::make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp,382mir::EventUPtr mev::make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp,
383 uint64_t /*mac*/, MirInputEventModifiers modifiers, MirPointerAction action,383 uint64_t /*mac*/, MirInputEventModifiers modifiers, MirPointerAction action,
384 MirPointerButtons buttons_pressed, 384 MirPointerButtons buttons_pressed,
385 float x_axis_value, float y_axis_value,385 float x_axis_value, float y_axis_value,
386 float hscroll_value, float vscroll_value)386 float hscroll_value, float vscroll_value)
387{387{
388388
=== modified file 'src/client/input/android/event_conversion_helpers.cpp'
--- src/client/input/android/event_conversion_helpers.cpp 2016-07-18 07:38:38 +0000
+++ src/client/input/android/event_conversion_helpers.cpp 2016-10-27 03:52:22 +0000
@@ -78,7 +78,7 @@
78{78{
79 if (repeat_count > 0)79 if (repeat_count > 0)
80 return mir_keyboard_action_repeat;80 return mir_keyboard_action_repeat;
81 81
82 switch (android_action)82 switch (android_action)
83 {83 {
84 case AKEY_EVENT_ACTION_DOWN:84 case AKEY_EVENT_ACTION_DOWN:
@@ -211,7 +211,7 @@
211 }211 }
212 if (index_with_action < 0)212 if (index_with_action < 0)
213 return AMOTION_EVENT_ACTION_MOVE;213 return AMOTION_EVENT_ACTION_MOVE;
214 214
215 int masked_action = AMOTION_EVENT_ACTION_MASK;215 int masked_action = AMOTION_EVENT_ACTION_MASK;
216 switch (mev.action(index_with_action))216 switch (mev.action(index_with_action))
217 {217 {
218218
=== modified file 'src/client/input/input_event.cpp'
--- src/client/input/input_event.cpp 2016-08-09 08:13:02 +0000
+++ src/client/input/input_event.cpp 2016-10-27 03:52:22 +0000
@@ -47,7 +47,7 @@
47}47}
4848
49// Never exposed in old event, so lets avoid leaking it in to a header now.49// Never exposed in old event, so lets avoid leaking it in to a header now.
50enum 50enum
51{51{
52 AINPUT_SOURCE_CLASS_MASK = 0x000000ff,52 AINPUT_SOURCE_CLASS_MASK = 0x000000ff,
5353
@@ -57,7 +57,7 @@
57 AINPUT_SOURCE_CLASS_POSITION = 0x00000008,57 AINPUT_SOURCE_CLASS_POSITION = 0x00000008,
58 AINPUT_SOURCE_CLASS_JOYSTICK = 0x0000001058 AINPUT_SOURCE_CLASS_JOYSTICK = 0x00000010
59};59};
60enum 60enum
61{61{
62 AINPUT_SOURCE_UNKNOWN = 0x00000000,62 AINPUT_SOURCE_UNKNOWN = 0x00000000,
6363
@@ -173,7 +173,7 @@
173 input_event_type_to_string(mir_input_event_get_type(ev)));173 input_event_type_to_string(mir_input_event_get_type(ev)));
174 abort();174 abort();
175 }175 }
176 176
177 return reinterpret_cast<MirKeyboardEvent const*>(ev);177 return reinterpret_cast<MirKeyboardEvent const*>(ev);
178}178}
179179
@@ -193,13 +193,13 @@
193}193}
194194
195MirInputEventModifiers mir_keyboard_event_modifiers(MirKeyboardEvent const* kev)195MirInputEventModifiers mir_keyboard_event_modifiers(MirKeyboardEvent const* kev)
196{ 196{
197 return kev->modifiers();197 return kev->modifiers();
198}198}
199/* Touch event accessors */199/* Touch event accessors */
200200
201MirInputEventModifiers mir_touch_event_modifiers(MirTouchEvent const* tev)201MirInputEventModifiers mir_touch_event_modifiers(MirTouchEvent const* tev)
202{ 202{
203 return tev->to_motion()->modifiers();203 return tev->to_motion()->modifiers();
204}204}
205205
@@ -238,7 +238,7 @@
238 mir::log_critical("touch index is greater than pointer count");238 mir::log_critical("touch index is greater than pointer count");
239 abort();239 abort();
240 }240 }
241 241
242 return static_cast<MirTouchAction>(event->to_motion()->action(touch_index));242 return static_cast<MirTouchAction>(event->to_motion()->action(touch_index));
243}243}
244244
@@ -281,7 +281,7 @@
281 default:281 default:
282 return -1;282 return -1;
283 }283 }
284} 284}
285285
286/* Pointer event accessors */286/* Pointer event accessors */
287287
@@ -298,12 +298,12 @@
298}298}
299299
300MirInputEventModifiers mir_pointer_event_modifiers(MirPointerEvent const* pev)300MirInputEventModifiers mir_pointer_event_modifiers(MirPointerEvent const* pev)
301{ 301{
302 return pev->to_motion()->modifiers();302 return pev->to_motion()->modifiers();
303}303}
304304
305MirPointerAction mir_pointer_event_action(MirPointerEvent const* pev)305MirPointerAction mir_pointer_event_action(MirPointerEvent const* pev)
306{ 306{
307 return static_cast<MirPointerAction>(pev->to_motion()->action(0));307 return static_cast<MirPointerAction>(pev->to_motion()->action(0));
308}308}
309309
310310
=== modified file 'src/client/lttng/CMakeLists.txt'
--- src/client/lttng/CMakeLists.txt 2016-07-18 07:38:38 +0000
+++ src/client/lttng/CMakeLists.txt 2016-10-27 03:52:22 +0000
@@ -15,7 +15,7 @@
15string(REPLACE "-flto" "" NO_LTO_FLAGS ${CMAKE_C_FLAGS})15string(REPLACE "-flto" "" NO_LTO_FLAGS ${CMAKE_C_FLAGS})
16set(CMAKE_C_FLAGS ${NO_LTO_FLAGS})16set(CMAKE_C_FLAGS ${NO_LTO_FLAGS})
1717
18# lttng-ust uses urcu headers which contain code blocks inside expressions 18# lttng-ust uses urcu headers which contain code blocks inside expressions
19# this is a gnu extension.19# this is a gnu extension.
20string(REPLACE "-pedantic" "" NO_PEDANTIC_CHECK_FLAGS ${CMAKE_CXX_FLAGS})20string(REPLACE "-pedantic" "" NO_PEDANTIC_CHECK_FLAGS ${CMAKE_CXX_FLAGS})
21if("${CMAKE_CXX_COMPILER}" MATCHES "clang")21if("${CMAKE_CXX_COMPILER}" MATCHES "clang")
2222
=== modified file 'src/client/lttng/input_receiver_report.cpp'
--- src/client/lttng/input_receiver_report.cpp 2015-04-28 07:54:10 +0000
+++ src/client/lttng/input_receiver_report.cpp 2016-10-27 03:52:22 +0000
@@ -62,8 +62,8 @@
62void mir::client::lttng::InputReceiverReport::report_touch(MirInputEvent const* event) const62void mir::client::lttng::InputReceiverReport::report_touch(MirInputEvent const* event) const
63{63{
64 auto tev = mir_input_event_get_touch_event(event);64 auto tev = mir_input_event_get_touch_event(event);
65 65
66 mir_tracepoint(mir_client_input_receiver, touch_event, mir_input_event_get_device_id(event), 66 mir_tracepoint(mir_client_input_receiver, touch_event, mir_input_event_get_device_id(event),
67 mir_touch_event_modifiers(tev), mir_input_event_get_event_time(event));67 mir_touch_event_modifiers(tev), mir_input_event_get_event_time(event));
6868
69 for (unsigned int i = 0; i < mir_touch_event_point_count(tev); i++)69 for (unsigned int i = 0; i < mir_touch_event_point_count(tev); i++)
7070
=== modified file 'src/client/lttng/input_receiver_report.h'
--- src/client/lttng/input_receiver_report.h 2015-04-28 07:54:10 +0000
+++ src/client/lttng/input_receiver_report.h 2016-10-27 03:52:22 +0000
@@ -36,7 +36,7 @@
36private:36private:
37 void report_touch(MirInputEvent const* event) const;37 void report_touch(MirInputEvent const* event) const;
38 void report_key(MirInputEvent const* event) const;38 void report_key(MirInputEvent const* event) const;
39 39
40 ClientTracepointProvider tp_provider;40 ClientTracepointProvider tp_provider;
41};41};
4242
4343
=== modified file 'src/client/mir_buffer_api.cpp'
--- src/client/mir_buffer_api.cpp 2016-10-12 06:03:15 +0000
+++ src/client/mir_buffer_api.cpp 2016-10-27 03:52:22 +0000
@@ -34,7 +34,7 @@
3434
35//private NBS api under development35//private NBS api under development
36void mir_connection_allocate_buffer(36void mir_connection_allocate_buffer(
37 MirConnection* connection, 37 MirConnection* connection,
38 int width, int height,38 int width, int height,
39 MirPixelFormat format,39 MirPixelFormat format,
40 MirBufferUsage usage,40 MirBufferUsage usage,
@@ -50,7 +50,7 @@
50}50}
5151
52void ignore(MirBuffer*, void*){}52void ignore(MirBuffer*, void*){}
53void mir_buffer_release(MirBuffer* b) 53void mir_buffer_release(MirBuffer* b)
54try54try
55{55{
56 mir::require(b);56 mir::require(b);
@@ -94,7 +94,7 @@
94{94{
95 mir::require(b);95 mir::require(b);
96 auto buffer = reinterpret_cast<mcl::MirBuffer*>(b);96 auto buffer = reinterpret_cast<mcl::MirBuffer*>(b);
97 97
98 return buffer->wait_fence(access, std::chrono::nanoseconds(timeout)) ? 0 : -1;98 return buffer->wait_fence(access, std::chrono::nanoseconds(timeout)) ? 0 : -1;
99}99}
100catch (std::exception const& ex)100catch (std::exception const& ex)
101101
=== modified file 'src/client/mir_connection.cpp'
--- src/client/mir_connection.cpp 2016-10-21 09:20:55 +0000
+++ src/client/mir_connection.cpp 2016-10-27 03:52:22 +0000
@@ -336,7 +336,7 @@
336 surface_requests.emplace_back(c);336 surface_requests.emplace_back(c);
337 }337 }
338338
339 try 339 try
340 {340 {
341 server.create_surface(&message, c->response.get(),341 server.create_surface(&message, c->response.get(),
342 gp::NewCallback(this, &MirConnection::surface_created, c.get()));342 gp::NewCallback(this, &MirConnection::surface_created, c.get()));
@@ -377,7 +377,7 @@
377 if (request_it == surface_requests.end())377 if (request_it == surface_requests.end())
378 return;378 return;
379379
380 auto surface_proto = request->response; 380 auto surface_proto = request->response;
381 auto callback = request->cb;381 auto callback = request->cb;
382 auto context = request->context;382 auto context = request->context;
383 auto const& spec = request->spec;383 auto const& spec = request->spec;
@@ -414,7 +414,7 @@
414 reason += surface_proto->error();414 reason += surface_proto->error();
415 if (surface_proto->has_error() && !surface_proto->has_id())415 if (surface_proto->has_error() && !surface_proto->has_id())
416 reason += " and ";416 reason += " and ";
417 if (!surface_proto->has_id()) 417 if (!surface_proto->has_id())
418 reason += "Server assigned surface no id";418 reason += "Server assigned surface no id";
419 auto id = next_error_id(lock);419 auto id = next_error_id(lock);
420 surf = std::make_shared<MirSurface>(reason, this, id, request->wh);420 surf = std::make_shared<MirSurface>(reason, this, id, request->wh);
@@ -505,7 +505,7 @@
505 callback(surface, context);505 callback(surface, context);
506 auto id = surface->id();506 auto id = surface->id();
507 surface_map->erase(mf::SurfaceId(id));507 surface_map->erase(mf::SurfaceId(id));
508 return new_wait_handle; 508 return new_wait_handle;
509 }509 }
510510
511 SurfaceRelease surf_release{surface, new_wait_handle, callback, context};511 SurfaceRelease surf_release{surface, new_wait_handle, callback, context};
@@ -1245,7 +1245,7 @@
1245 std::unique_lock<decltype(mutex)> lock(mutex);1245 std::unique_lock<decltype(mutex)> lock(mutex);
1246 mf::BufferStreamId id(next_error_id(lock).as_value());1246 mf::BufferStreamId id(next_error_id(lock).as_value());
1247 auto chain = std::make_shared<mcl::ErrorChain>(this, id.as_value(), error_msg);1247 auto chain = std::make_shared<mcl::ErrorChain>(this, id.as_value(), error_msg);
1248 surface_map->insert(id, chain); 1248 surface_map->insert(id, chain);
12491249
1250 if (request->callback)1250 if (request->callback)
1251 request->callback(static_cast<MirPresentationChain*>(chain.get()), request->context);1251 request->callback(static_cast<MirPresentationChain*>(chain.get()), request->context);
12521252
=== modified file 'src/client/mir_connection.h'
--- src/client/mir_connection.h 2016-10-13 16:32:59 +0000
+++ src/client/mir_connection.h 2016-10-27 03:52:22 +0000
@@ -337,7 +337,6 @@
337 std::unique_ptr<google::protobuf::Closure> const pong_callback;337 std::unique_ptr<google::protobuf::Closure> const pong_callback;
338338
339 std::unique_ptr<mir::dispatch::ThreadedDispatcher> const eventloop;339 std::unique_ptr<mir::dispatch::ThreadedDispatcher> const eventloop;
340
341340
342 struct SurfaceRelease;341 struct SurfaceRelease;
343 struct StreamRelease;342 struct StreamRelease;
344343
=== modified file 'src/client/mir_cursor_api.cpp'
--- src/client/mir_cursor_api.cpp 2016-10-12 10:12:15 +0000
+++ src/client/mir_cursor_api.cpp 2016-10-27 03:52:22 +0000
@@ -47,7 +47,7 @@
4747
48MirCursorConfiguration::MirCursorConfiguration(char const* name) :48MirCursorConfiguration::MirCursorConfiguration(char const* name) :
49 name{name ? name : std::string()},49 name{name ? name : std::string()},
50 stream(nullptr) 50 stream(nullptr)
51{51{
52}52}
5353
@@ -65,7 +65,7 @@
6565
66MirCursorConfiguration* mir_cursor_configuration_from_name(char const* name)66MirCursorConfiguration* mir_cursor_configuration_from_name(char const* name)
67{67{
68 try 68 try
69 {69 {
70 return new MirCursorConfiguration(name);70 return new MirCursorConfiguration(name);
71 }71 }
@@ -79,7 +79,7 @@
79MirCursorConfiguration* mir_cursor_configuration_from_buffer_stream(MirBufferStream const* stream, int hotspot_x,79MirCursorConfiguration* mir_cursor_configuration_from_buffer_stream(MirBufferStream const* stream, int hotspot_x,
80 int hotspot_y)80 int hotspot_y)
81{81{
82 try 82 try
83 {83 {
84 return new MirCursorConfiguration(reinterpret_cast<mcl::ClientBufferStream const*>(stream), hotspot_x, hotspot_y);84 return new MirCursorConfiguration(reinterpret_cast<mcl::ClientBufferStream const*>(stream), hotspot_x, hotspot_y);
85 }85 }
8686
=== modified file 'src/client/mir_surface.cpp'
--- src/client/mir_surface.cpp 2016-10-12 06:03:15 +0000
+++ src/client/mir_surface.cpp 2016-10-27 03:52:22 +0000
@@ -149,7 +149,7 @@
149149
150 if (surface_proto.fd_size() > 0 && handle_event_callback)150 if (surface_proto.fd_size() > 0 && handle_event_callback)
151 {151 {
152 input_thread = std::make_shared<md::ThreadedDispatcher>("Input dispatch", 152 input_thread = std::make_shared<md::ThreadedDispatcher>("Input dispatch",
153 input_platform->create_input_receiver( surface_proto.fd(0), keymapper, handle_event_callback));153 input_platform->create_input_receiver( surface_proto.fd(0), keymapper, handle_event_callback));
154 }154 }
155155
@@ -271,11 +271,11 @@
271 }271 }
272 }272 }
273 }273 }
274 274
275 configure_cursor_wait_handle.expect_result();275 configure_cursor_wait_handle.expect_result();
276 server->configure_cursor(&setting, void_response.get(),276 server->configure_cursor(&setting, void_response.get(),
277 google::protobuf::NewCallback(this, &MirSurface::on_cursor_configured));277 google::protobuf::NewCallback(this, &MirSurface::on_cursor_configured));
278 278
279 return &configure_cursor_wait_handle;279 return &configure_cursor_wait_handle;
280}280}
281281
@@ -507,7 +507,7 @@
507mir::client::ClientBufferStream* MirSurface::get_buffer_stream()507mir::client::ClientBufferStream* MirSurface::get_buffer_stream()
508{508{
509 std::lock_guard<decltype(mutex)> lock(mutex);509 std::lock_guard<decltype(mutex)> lock(mutex);
510 510
511 return default_stream.get();511 return default_stream.get();
512}512}
513513
514514
=== modified file 'src/client/mir_surface.h'
--- src/client/mir_surface.h 2016-10-21 07:53:23 +0000
+++ src/client/mir_surface.h 2016-10-27 03:52:22 +0000
@@ -181,7 +181,7 @@
181 // out into a separate class in the libmirclient-debug DSO.181 // out into a separate class in the libmirclient-debug DSO.
182 bool translate_to_screen_coordinates(int x, int y,182 bool translate_to_screen_coordinates(int x, int y,
183 int* screen_x, int* screen_y);183 int* screen_x, int* screen_y);
184 184
185 // Non-blocking185 // Non-blocking
186 int attrib(MirSurfaceAttrib a) const;186 int attrib(MirSurfaceAttrib a) const;
187187
188188
=== modified file 'src/client/mir_surface_api.cpp'
--- src/client/mir_surface_api.cpp 2016-10-21 09:20:55 +0000
+++ src/client/mir_surface_api.cpp 2016-10-27 03:52:22 +0000
@@ -458,7 +458,7 @@
458MirWaitHandle* mir_surface_configure_cursor(MirSurface* surface, MirCursorConfiguration const* cursor)458MirWaitHandle* mir_surface_configure_cursor(MirSurface* surface, MirCursorConfiguration const* cursor)
459{459{
460 MirWaitHandle *result = nullptr;460 MirWaitHandle *result = nullptr;
461 461
462 try462 try
463 {463 {
464 if (surface)464 if (surface)
@@ -601,7 +601,7 @@
601 if (spec->streams.is_set())601 if (spec->streams.is_set())
602 spec->streams.value().push_back(info);602 spec->streams.value().push_back(info);
603 else603 else
604 spec->streams = std::vector<ContentInfo>{info}; 604 spec->streams = std::vector<ContentInfo>{info};
605}605}
606catch (std::exception const& ex)606catch (std::exception const& ex)
607{607{
@@ -621,7 +621,7 @@
621 if (spec->streams.is_set())621 if (spec->streams.is_set())
622 spec->streams.value().push_back(info);622 spec->streams.value().push_back(info);
623 else623 else
624 spec->streams = std::vector<ContentInfo>{info}; 624 spec->streams = std::vector<ContentInfo>{info};
625}625}
626catch (std::exception const& ex)626catch (std::exception const& ex)
627{627{
628628
=== modified file 'src/client/rpc/CMakeLists.txt'
--- src/client/rpc/CMakeLists.txt 2016-08-01 07:24:32 +0000
+++ src/client/rpc/CMakeLists.txt 2016-10-27 03:52:22 +0000
@@ -1,4 +1,4 @@
1add_library(mirclientrpc OBJECT 1add_library(mirclientrpc OBJECT
22
3 mir_basic_rpc_channel.cpp3 mir_basic_rpc_channel.cpp
4 null_rpc_report.cpp4 null_rpc_report.cpp
55
=== modified file 'src/client/rpc/mir_protobuf_rpc_channel.cpp'
--- src/client/rpc/mir_protobuf_rpc_channel.cpp 2016-10-12 06:03:15 +0000
+++ src/client/rpc/mir_protobuf_rpc_channel.cpp 2016-10-27 03:52:22 +0000
@@ -100,9 +100,9 @@
100 (*lifecycle_control)(mir_lifecycle_connection_lost);100 (*lifecycle_control)(mir_lifecycle_connection_lost);
101 }101 }
102 pending_calls.force_completion();102 pending_calls.force_completion();
103 //NB: once the old semantics are not around, this explicit call to notify 103 //NB: once the old semantics are not around, this explicit call to notify
104 //the streams of disconnection shouldn't be needed.104 //the streams of disconnection shouldn't be needed.
105 if (auto map = surface_map.lock()) 105 if (auto map = surface_map.lock())
106 {106 {
107 map->with_all_streams_do(107 map->with_all_streams_do(
108 [](mcl::ClientBufferStream* receiver) {108 [](mcl::ClientBufferStream* receiver) {
@@ -324,7 +324,7 @@
324 receiver->buffer_available(seq.buffer_request().buffer());324 receiver->buffer_available(seq.buffer_request().buffer());
325 });325 });
326 }326 }
327 327
328 else if (seq.buffer_request().has_operation())328 else if (seq.buffer_request().has_operation())
329 {329 {
330 auto stream_cmd = seq.buffer_request().operation();330 auto stream_cmd = seq.buffer_request().operation();
@@ -334,7 +334,7 @@
334 {334 {
335 case mp::BufferOperation::add:335 case mp::BufferOperation::add:
336 buffer = buffer_factory->generate_buffer(seq.buffer_request().buffer());336 buffer = buffer_factory->generate_buffer(seq.buffer_request().buffer());
337 map->insert(buffer_id, buffer); 337 map->insert(buffer_id, buffer);
338 buffer->received();338 buffer->received();
339 break;339 break;
340 case mp::BufferOperation::update:340 case mp::BufferOperation::update:
341341
=== modified file 'src/client/surface_map.h'
--- src/client/surface_map.h 2016-07-18 07:38:38 +0000
+++ src/client/surface_map.h 2016-10-27 03:52:22 +0000
@@ -47,7 +47,7 @@
47 virtual void with_all_streams_do(std::function<void(ClientBufferStream*)> const&) const = 0;47 virtual void with_all_streams_do(std::function<void(ClientBufferStream*)> const&) const = 0;
48 virtual std::shared_ptr<MirBuffer> buffer(int buffer_id) const = 0;48 virtual std::shared_ptr<MirBuffer> buffer(int buffer_id) const = 0;
49 virtual void insert(int buffer_id, std::shared_ptr<MirBuffer> const& buffer) = 0;49 virtual void insert(int buffer_id, std::shared_ptr<MirBuffer> const& buffer) = 0;
50 virtual void erase(int buffer_id) = 0; 50 virtual void erase(int buffer_id) = 0;
5151
52protected:52protected:
53 virtual ~SurfaceMap() = default;53 virtual ~SurfaceMap() = default;
5454
=== modified file 'src/client/symbols-debug.map'
--- src/client/symbols-debug.map 2015-06-17 05:20:42 +0000
+++ src/client/symbols-debug.map 2016-10-27 03:52:22 +0000
@@ -1,5 +1,5 @@
1MIR_CLIENT_DEBUG_9 {1MIR_CLIENT_DEBUG_9 {
2 global: 2 global:
3 mir_debug_*;3 mir_debug_*;
4 local: *;4 local: *;
5};5};
66
=== modified file 'src/client/symbols.map'
--- src/client/symbols.map 2016-10-13 16:32:59 +0000
+++ src/client/symbols.map 2016-10-27 03:52:22 +0000
@@ -299,7 +299,7 @@
299299
300MIR_CLIENT_DETAIL_9 {300MIR_CLIENT_DETAIL_9 {
301 global:301 global:
302 extern "C++" { 302 extern "C++" {
303 mir::events::make_event*;303 mir::events::make_event*;
304 mir::events::add_touch*;304 mir::events::add_touch*;
305 mir::input::android::Lexicon::translate*;305 mir::input::android::Lexicon::translate*;
@@ -331,12 +331,12 @@
331 typeinfo?for?mir::client::DefaultConnectionConfiguration;331 typeinfo?for?mir::client::DefaultConnectionConfiguration;
332 vtable?for?mir::client::DefaultConnectionConfiguration;332 vtable?for?mir::client::DefaultConnectionConfiguration;
333 mir::operator???std::ostream???Mir*333 mir::operator???std::ostream???Mir*
334 }; 334 };
335};335};
336336
337MIR_CLIENT_DETAIL_9v18 {337MIR_CLIENT_DETAIL_9v18 {
338 global:338 global:
339 extern "C++" { 339 extern "C++" {
340 mir::client::DefaultConnectionConfiguration::the_input_devices*;340 mir::client::DefaultConnectionConfiguration::the_input_devices*;
341 mir::events::set_modifier*;341 mir::events::set_modifier*;
342 mir::events::set_cursor_position*;342 mir::events::set_cursor_position*;
@@ -346,7 +346,7 @@
346346
347MIR_CLIENT_DETAIL_9v19 {347MIR_CLIENT_DETAIL_9v19 {
348 global:348 global:
349 extern "C++" { 349 extern "C++" {
350 mir::input::android::android_pointer_action_from_mir*;350 mir::input::android::android_pointer_action_from_mir*;
351 mir::events::serialize_event*;351 mir::events::serialize_event*;
352 mir::events::deserialize_event*;352 mir::events::deserialize_event*;
@@ -355,7 +355,7 @@
355355
356MIR_CLIENT_DETAIL_0.21 {356MIR_CLIENT_DETAIL_0.21 {
357 global:357 global:
358 extern "C++" { 358 extern "C++" {
359 mir::client::DefaultConnectionConfiguration::the_buffer_factory*;359 mir::client::DefaultConnectionConfiguration::the_buffer_factory*;
360 };360 };
361} MIR_CLIENT_DETAIL_9v19;361} MIR_CLIENT_DETAIL_9v19;
@@ -397,7 +397,7 @@
397397
398MIR_CLIENT_DETAIL_0.24 {398MIR_CLIENT_DETAIL_0.24 {
399 global:399 global:
400 extern "C++" { 400 extern "C++" {
401 mir::input::receiver::XKBMapper::XKBMapper*;401 mir::input::receiver::XKBMapper::XKBMapper*;
402 mir::input::receiver::XKBMapper::?XKBMapper*;402 mir::input::receiver::XKBMapper::?XKBMapper*;
403 mir::input::receiver::XKBMapper::set_key_state*;403 mir::input::receiver::XKBMapper::set_key_state*;
404404
=== modified file 'src/common/fd/fd.cpp'
--- src/common/fd/fd.cpp 2015-02-22 07:46:25 +0000
+++ src/common/fd/fd.cpp 2016-10-27 03:52:22 +0000
@@ -36,7 +36,7 @@
36 if (!fd) return;36 if (!fd) return;
37 if (*fd > mir::Fd::invalid) ::close(*fd);37 if (*fd > mir::Fd::invalid) ::close(*fd);
38 delete fd;38 delete fd;
39 }} 39 }}
40{40{
41}41}
4242
4343
=== modified file 'src/common/fd/fd_socket_transmission.cpp'
--- src/common/fd/fd_socket_transmission.cpp 2015-02-22 07:46:25 +0000
+++ src/common/fd/fd_socket_transmission.cpp 2016-10-27 03:52:22 +0000
@@ -105,13 +105,13 @@
105 struct iovec iov;105 struct iovec iov;
106 iov.iov_base = static_cast<uint8_t*>(buffer) + bytes_read;106 iov.iov_base = static_cast<uint8_t*>(buffer) + bytes_read;
107 iov.iov_len = bytes_requested - bytes_read;107 iov.iov_len = bytes_requested - bytes_read;
108 108
109 // Allocate space for control message109 // Allocate space for control message
110 static auto const builtin_n_fds = 5;110 static auto const builtin_n_fds = 5;
111 static auto const builtin_cmsg_space = CMSG_SPACE(builtin_n_fds * sizeof(int));111 static auto const builtin_cmsg_space = CMSG_SPACE(builtin_n_fds * sizeof(int));
112 auto const fds_bytes = (fds.size() - fds_read) * sizeof(int);112 auto const fds_bytes = (fds.size() - fds_read) * sizeof(int);
113 mir::VariableLengthArray<builtin_cmsg_space> control{CMSG_SPACE(fds_bytes)};113 mir::VariableLengthArray<builtin_cmsg_space> control{CMSG_SPACE(fds_bytes)};
114 114
115 // Message to read115 // Message to read
116 struct msghdr header;116 struct msghdr header;
117 header.msg_name = NULL;117 header.msg_name = NULL;
@@ -121,7 +121,7 @@
121 header.msg_controllen = control.size();121 header.msg_controllen = control.size();
122 header.msg_control = control.data();122 header.msg_control = control.data();
123 header.msg_flags = 0;123 header.msg_flags = 0;
124 124
125 ssize_t const result = recvmsg(socket, &header, MSG_NOSIGNAL | MSG_WAITALL);125 ssize_t const result = recvmsg(socket, &header, MSG_NOSIGNAL | MSG_WAITALL);
126 if (result == 0)126 if (result == 0)
127 BOOST_THROW_EXCEPTION(socket_disconnected_error("Failed to read message from server: server has shutdown"));127 BOOST_THROW_EXCEPTION(socket_disconnected_error("Failed to read message from server: server has shutdown"));
@@ -142,7 +142,7 @@
142 }142 }
143143
144 bytes_read += result;144 bytes_read += result;
145 145
146 // If we get a proper control message, copy the received146 // If we get a proper control message, copy the received
147 // file descriptors back to the caller147 // file descriptors back to the caller
148 struct cmsghdr const* const cmsg = CMSG_FIRSTHDR(&header);148 struct cmsghdr const* const cmsg = CMSG_FIRSTHDR(&header);
149149
=== modified file 'src/common/sharedlibrary/CMakeLists.txt'
--- src/common/sharedlibrary/CMakeLists.txt 2016-10-20 14:35:09 +0000
+++ src/common/sharedlibrary/CMakeLists.txt 2016-10-27 03:52:22 +0000
@@ -24,7 +24,7 @@
24 $<TARGET_OBJECTS:mirsharedsharedlibrary>24 $<TARGET_OBJECTS:mirsharedsharedlibrary>
25)25)
2626
27list(APPEND MIR_COMMON_REFERENCES 27list(APPEND MIR_COMMON_REFERENCES
28 ${Boost_LIBRARIES}28 ${Boost_LIBRARIES}
29 dl29 dl
30)30)
3131
=== modified file 'src/common/sharedlibrary/module_deleter.cpp'
--- src/common/sharedlibrary/module_deleter.cpp 2016-07-18 07:38:38 +0000
+++ src/common/sharedlibrary/module_deleter.cpp 2016-10-27 03:52:22 +0000
@@ -32,13 +32,13 @@
3232
33 Dl_info library_info{nullptr, nullptr, nullptr, nullptr};33 Dl_info library_info{nullptr, nullptr, nullptr, nullptr};
34 Dl_info executable_info{nullptr, nullptr, nullptr, nullptr};34 Dl_info executable_info{nullptr, nullptr, nullptr, nullptr};
35 35
36 dladdr(dlsym(nullptr, "main"), &executable_info);36 dladdr(dlsym(nullptr, "main"), &executable_info);
37 dladdr(address, &library_info);37 dladdr(address, &library_info);
38 38
39 if (library_info.dli_fbase == executable_info.dli_fbase)39 if (library_info.dli_fbase == executable_info.dli_fbase)
40 return nullptr;40 return nullptr;
41 41
42 return std::make_shared<mir::SharedLibrary>(library_info.dli_fname);42 return std::make_shared<mir::SharedLibrary>(library_info.dli_fname);
43}43}
44}44}
4545
=== modified file 'src/common/symbols.map'
--- src/common/symbols.map 2016-10-20 14:35:09 +0000
+++ src/common/symbols.map 2016-10-27 03:52:22 +0000
@@ -2,7 +2,7 @@
2 global:2 global:
3 extern "C++" {3 extern "C++" {
4# The following symbols come from running a script over the generated docs. Vis:4# The following symbols come from running a script over the generated docs. Vis:
5# ../tools/process_doxygen_xml.py doc/xml/*.xml | grep "^mircommon public" | sed "s/mircommon public: / /" | sort 5# ../tools/process_doxygen_xml.py doc/xml/*.xml | grep "^mircommon public" | sed "s/mircommon public: / /" | sort
6 mir::detail::libname_impl*;6 mir::detail::libname_impl*;
7 mir::detail::RefCountedLibrary::operator*;7 mir::detail::RefCountedLibrary::operator*;
8 mir::detail::RefCountedLibrary::?RefCountedLibrary*;8 mir::detail::RefCountedLibrary::?RefCountedLibrary*;
99
=== modified file 'src/cookie/authority.cpp'
--- src/cookie/authority.cpp 2016-07-18 07:38:38 +0000
+++ src/cookie/authority.cpp 2016-10-27 03:52:22 +0000
@@ -68,7 +68,7 @@
68 unsigned got = read(fd, buffer.data(), size);68 unsigned got = read(fd, buffer.data(), size);
69 int error = errno;69 int error = errno;
70 close(fd);70 close(fd);
71 71
72 if (got != size)72 if (got != size)
73 BOOST_THROW_EXCEPTION(std::system_error(error, std::system_category(),73 BOOST_THROW_EXCEPTION(std::system_error(error, std::system_category(),
74 "read failed on urandom"));74 "read failed on urandom"));
7575
=== modified file 'src/cookie/hmac_cookie.cpp'
--- src/cookie/hmac_cookie.cpp 2016-01-22 15:12:20 +0000
+++ src/cookie/hmac_cookie.cpp 2016-10-27 03:52:22 +0000
@@ -48,6 +48,6 @@
48 cookie_ptr += sizeof(timestamp_);48 cookie_ptr += sizeof(timestamp_);
4949
50 memcpy(cookie_ptr, mac_.data(), mac_.size());50 memcpy(cookie_ptr, mac_.data(), mac_.size());
51 51
52 return serialized_cookie;52 return serialized_cookie;
53}53}
5454
=== modified file 'src/include/client/mir_toolkit/mir_buffer.h'
--- src/include/client/mir_toolkit/mir_buffer.h 2016-10-12 06:03:15 +0000
+++ src/include/client/mir_toolkit/mir_buffer.h 2016-10-27 03:52:22 +0000
@@ -91,7 +91,7 @@
91 * Access the MirBufferPackage91 * Access the MirBufferPackage
92 *92 *
93 * \param [in] buffer The buffer93 * \param [in] buffer The buffer
94 * \return The MirBufferPackage representing buffer 94 * \return The MirBufferPackage representing buffer
95 */95 */
96MirBufferPackage* mir_buffer_get_buffer_package(MirBuffer* buffer);96MirBufferPackage* mir_buffer_get_buffer_package(MirBuffer* buffer);
9797
@@ -126,7 +126,7 @@
126 *126 *
127 * \warning any fence currently associated with buffer will be replaced in favor127 * \warning any fence currently associated with buffer will be replaced in favor
128 * of fence without waiting for the replaced fence to clear128 * of fence without waiting for the replaced fence to clear
129 * \warning The Mir client api assumes ownership of the fence fd. 129 * \warning The Mir client api assumes ownership of the fence fd.
130 * \param [in] buffer The buffer130 * \param [in] buffer The buffer
131 * \param [in] fence The fence that will be associated with buffer. If negative,131 * \param [in] fence The fence that will be associated with buffer. If negative,
132 * this will remove the fence associated with this buffer.132 * this will remove the fence associated with this buffer.
@@ -139,7 +139,7 @@
139 MirBufferAccess access);139 MirBufferAccess access);
140140
141/** Wait for the fence associated with the buffer to signal. After returning,141/** Wait for the fence associated with the buffer to signal. After returning,
142 * it is permissible to access the buffer's content for the designated purpose in access. 142 * it is permissible to access the buffer's content for the designated purpose in access.
143 *143 *
144 * \param [in] buffer The buffer144 * \param [in] buffer The buffer
145 * \param [in] access The access to wait for.145 * \param [in] access The access to wait for.
146146
=== modified file 'src/include/client/mir_toolkit/mir_buffer_private.h'
--- src/include/client/mir_toolkit/mir_buffer_private.h 2016-10-07 17:08:50 +0000
+++ src/include/client/mir_toolkit/mir_buffer_private.h 2016-10-27 03:52:22 +0000
@@ -34,7 +34,7 @@
34 *34 *
35 * \param [in] buffer The buffer35 * \param [in] buffer The buffer
36 * \param [out] target The target to use36 * \param [out] target The target to use
37 * \param [out] client_buffer The EGLClientBuffer to use 37 * \param [out] client_buffer The EGLClientBuffer to use
38 * \param [out] attrs The attributes to use38 * \param [out] attrs The attributes to use
39 **/39 **/
40void mir_buffer_egl_image_parameters(40void mir_buffer_egl_image_parameters(
4141
=== modified file 'src/include/client/mir_toolkit/mir_presentation_chain.h'
--- src/include/client/mir_toolkit/mir_presentation_chain.h 2016-07-18 07:38:38 +0000
+++ src/include/client/mir_toolkit/mir_presentation_chain.h 2016-10-27 03:52:22 +0000
@@ -50,7 +50,7 @@
50 MirPresentationChain* presentation_chain);50 MirPresentationChain* presentation_chain);
5151
52/**52/**
53 * Create a new presentation chain. 53 * Create a new presentation chain.
54 *54 *
55 * \param [in] connection A valid connection55 * \param [in] connection A valid connection
56 * \param [in] callback Callback to be invoked when the request56 * \param [in] callback Callback to be invoked when the request
@@ -87,7 +87,7 @@
87 * The server will notify the client when the buffer is available again via87 * The server will notify the client when the buffer is available again via
88 * the callback registered during buffer creation.88 * the callback registered during buffer creation.
89 *89 *
90 * \warning: Once submitted, the buffer cannot be modified until the server 90 * \warning: Once submitted, the buffer cannot be modified until the server
91 * has returned it. There's no guarantee about how long a server91 * has returned it. There's no guarantee about how long a server
92 * may hold the submitted buffer.92 * may hold the submitted buffer.
93 *93 *
@@ -108,7 +108,7 @@
108 * mir_surface_spec_add_buffer_stream will set the bottom-most content,108 * mir_surface_spec_add_buffer_stream will set the bottom-most content,
109 * and subsequent calls to either will stack the content on top.109 * and subsequent calls to either will stack the content on top.
110 *110 *
111 * \warning Setting the dimensions or displacements to exceed the 111 * \warning Setting the dimensions or displacements to exceed the
112 * bounds of MirSurface may result in clipping to the size112 * bounds of MirSurface may result in clipping to the size
113 * of the MirSurface, at the server's discretion.113 * of the MirSurface, at the server's discretion.
114 *114 *
@@ -132,7 +132,7 @@
132 * mir_surface_spec_add_buffer_stream will set the bottom-most content,132 * mir_surface_spec_add_buffer_stream will set the bottom-most content,
133 * and subsequent calls to either will stack the content on top.133 * and subsequent calls to either will stack the content on top.
134 *134 *
135 * \warning Setting the displacements to exceed the 135 * \warning Setting the displacements to exceed the
136 * bounds of MirSurface may result in clipping to the size136 * bounds of MirSurface may result in clipping to the size
137 * of the MirSurface, at the server's discretion.137 * of the MirSurface, at the server's discretion.
138 *138 *
139139
=== modified file 'src/include/common/mir/events/event_private.h'
--- src/include/common/mir/events/event_private.h 2016-07-18 07:38:38 +0000
+++ src/include/common/mir/events/event_private.h 2016-10-27 03:52:22 +0000
@@ -17,7 +17,7 @@
17 */17 */
1818
19// ==================================19// ==================================
20// 20//
21// Direct access to MirEvent deprecated. Prefer mir_event_* family of functions.21// Direct access to MirEvent deprecated. Prefer mir_event_* family of functions.
22//22//
23// ==================================23// ==================================
2424
=== modified file 'src/include/common/mir/protobuf/protocol_version.h'
--- src/include/common/mir/protobuf/protocol_version.h 2016-07-18 07:38:38 +0000
+++ src/include/common/mir/protobuf/protocol_version.h 2016-10-27 03:52:22 +0000
@@ -26,7 +26,7 @@
26namespace protobuf26namespace protobuf
27{27{
28inline constexpr int current_protocol_version()28inline constexpr int current_protocol_version()
29{ 29{
30 return MIR_VERSION_NUMBER(0,3,3);30 return MIR_VERSION_NUMBER(0,3,3);
31}31}
3232
3333
=== modified file 'src/include/server/mir/frontend/fd_sets.h'
--- src/include/server/mir/frontend/fd_sets.h 2016-01-29 08:18:22 +0000
+++ src/include/server/mir/frontend/fd_sets.h 2016-10-27 03:52:22 +0000
@@ -20,7 +20,7 @@
2020
21#include <vector>21#include <vector>
22#include <initializer_list>22#include <initializer_list>
23#include "mir/fd.h" 23#include "mir/fd.h"
2424
25namespace mir25namespace mir
26{26{
2727
=== modified file 'src/include/server/mir/input/scene.h'
--- src/include/server/mir/input/scene.h 2015-02-22 07:46:25 +0000
+++ src/include/server/mir/input/scene.h 2016-10-27 03:52:22 +0000
@@ -54,7 +54,7 @@
54 // Within the set of overlay renderables, rendering order is undefined.54 // Within the set of overlay renderables, rendering order is undefined.
55 virtual void add_input_visualization(std::shared_ptr<graphics::Renderable> const& overlay) = 0;55 virtual void add_input_visualization(std::shared_ptr<graphics::Renderable> const& overlay) = 0;
56 virtual void remove_input_visualization(std::weak_ptr<graphics::Renderable> const& overlay) = 0;56 virtual void remove_input_visualization(std::weak_ptr<graphics::Renderable> const& overlay) = 0;
57 57
58 // As input visualizations added through the overlay system will not use the standard SurfaceObserver58 // As input visualizations added through the overlay system will not use the standard SurfaceObserver
59 // mechanism, we require this method to trigger recomposition.59 // mechanism, we require this method to trigger recomposition.
60 // TODO: How can something like SurfaceObserver be adapted to work with non surface renderables?60 // TODO: How can something like SurfaceObserver be adapted to work with non surface renderables?
6161
=== modified file 'src/include/server/mir/scene/legacy_scene_change_notification.h'
--- src/include/server/mir/scene/legacy_scene_change_notification.h 2016-07-21 13:10:03 +0000
+++ src/include/server/mir/scene/legacy_scene_change_notification.h 2016-10-27 03:52:22 +0000
@@ -33,7 +33,7 @@
33class SurfaceObserver;33class SurfaceObserver;
3434
35// A simple implementation of surface observer which forwards all changes to a provided callback.35// A simple implementation of surface observer which forwards all changes to a provided callback.
36// Also installs surface observers on each added surface which in turn forward each change to 36// Also installs surface observers on each added surface which in turn forward each change to
37// said callback.37// said callback.
38class LegacySceneChangeNotification : public Observer38class LegacySceneChangeNotification : public Observer
39{39{
@@ -51,7 +51,7 @@
51 void surface_added(Surface* surface) override;51 void surface_added(Surface* surface) override;
52 void surface_removed(Surface* surface) override;52 void surface_removed(Surface* surface) override;
53 void surfaces_reordered() override;53 void surfaces_reordered() override;
54 54
55 void scene_changed() override;55 void scene_changed() override;
5656
57 void surface_exists(Surface* surface) override;57 void surface_exists(Surface* surface) override;
@@ -64,7 +64,7 @@
6464
65 std::mutex surface_observers_guard;65 std::mutex surface_observers_guard;
66 std::map<Surface*, std::weak_ptr<SurfaceObserver>> surface_observers;66 std::map<Surface*, std::weak_ptr<SurfaceObserver>> surface_observers;
67 67
68 void add_surface_observer(Surface* surface);68 void add_surface_observer(Surface* surface);
69};69};
7070
7171
=== modified file 'src/platform/symbols.map'
--- src/platform/symbols.map 2016-10-12 10:29:45 +0000
+++ src/platform/symbols.map 2016-10-27 03:52:22 +0000
@@ -2,7 +2,7 @@
2 global:2 global:
3 extern "C++" {3 extern "C++" {
4# The following symbols come from running a script over the generated docs. Vis:4# The following symbols come from running a script over the generated docs. Vis:
5# ../tools/process_doxygen_xml.py doc/xml/*.xml | grep "^mirplatform public" | sed "s/mirplatform public: / /" | sort 5# ../tools/process_doxygen_xml.py doc/xml/*.xml | grep "^mirplatform public" | sed "s/mirplatform public: / /" | sort
6 mir::graphics::BufferBasic::BufferBasic*;6 mir::graphics::BufferBasic::BufferBasic*;
7 mir::graphics::Buffer::Buffer*;7 mir::graphics::Buffer::Buffer*;
8 mir::graphics::Buffer::id*;8 mir::graphics::Buffer::id*;
@@ -95,7 +95,7 @@
95 mir::graphics::UserDisplayConfigurationOutput::UserDisplayConfigurationOutput*;95 mir::graphics::UserDisplayConfigurationOutput::UserDisplayConfigurationOutput*;
96 mir::options::arw_server_socket_opt*;96 mir::options::arw_server_socket_opt*;
97# Why are server-only options here in libmirplatform?...97# Why are server-only options here in libmirplatform?...
98 mir::options::composite_delay_opt*; 98 mir::options::composite_delay_opt*;
99 mir::options::compositor_report_opt*;99 mir::options::compositor_report_opt*;
100 mir::options::Configuration::?Configuration*;100 mir::options::Configuration::?Configuration*;
101 mir::options::Configuration::Configuration*;101 mir::options::Configuration::Configuration*;
@@ -223,9 +223,9 @@
223 vtable?for?mir::options::DefaultConfiguration;223 vtable?for?mir::options::DefaultConfiguration;
224 vtable?for?mir::options::Option;224 vtable?for?mir::options::Option;
225 vtable?for?mir::options::ProgramOption;225 vtable?for?mir::options::ProgramOption;
226 226
227 # These are "private" (declared in src/include) but are used by libmirserver.227 # These are "private" (declared in src/include) but are used by libmirserver.
228 # They are also likely to be needed by any 3rd party "graphics platform" 228 # They are also likely to be needed by any 3rd party "graphics platform"
229 # implementation. They should probably become public at some stage.229 # implementation. They should probably become public at some stage.
230 mir::graphics::alpha_channel_depth*;230 mir::graphics::alpha_channel_depth*;
231 mir::graphics::blue_channel_depth*;231 mir::graphics::blue_channel_depth*;
232232
=== modified file 'src/platforms/CMakeLists.txt'
--- src/platforms/CMakeLists.txt 2016-10-21 07:53:23 +0000
+++ src/platforms/CMakeLists.txt 2016-10-27 03:52:22 +0000
@@ -14,9 +14,9 @@
14set(MIR_SERVER_GRAPHICS_PLATFORM_VERSION "MIR_GRAPHICS_PLATFORM_${MIR_SERVER_GRAPHICS_PLATFORM_STANZA_VERSION}")14set(MIR_SERVER_GRAPHICS_PLATFORM_VERSION "MIR_GRAPHICS_PLATFORM_${MIR_SERVER_GRAPHICS_PLATFORM_STANZA_VERSION}")
15set(MIR_SERVER_GRAPHICS_PLATFORM_VERSION ${MIR_SERVER_GRAPHICS_PLATFORM_VERSION} PARENT_SCOPE)15set(MIR_SERVER_GRAPHICS_PLATFORM_VERSION ${MIR_SERVER_GRAPHICS_PLATFORM_VERSION} PARENT_SCOPE)
16configure_file(16configure_file(
17 ${CMAKE_CURRENT_SOURCE_DIR}/input_platform_symbols.map.in 17 ${CMAKE_CURRENT_SOURCE_DIR}/input_platform_symbols.map.in
18 ${CMAKE_CURRENT_BINARY_DIR}/input_platform_symbols.map)18 ${CMAKE_CURRENT_BINARY_DIR}/input_platform_symbols.map)
19set(MIR_INPUT_PLATFORM_VERSION_SCRIPT 19set(MIR_INPUT_PLATFORM_VERSION_SCRIPT
20 ${CMAKE_CURRENT_BINARY_DIR}/input_platform_symbols.map)20 ${CMAKE_CURRENT_BINARY_DIR}/input_platform_symbols.map)
21set(MIR_INPUT_PLATFORM_VERSION_SCRIPT ${MIR_INPUT_PLATFORM_VERSION_SCRIPT} PARENT_SCOPE)21set(MIR_INPUT_PLATFORM_VERSION_SCRIPT ${MIR_INPUT_PLATFORM_VERSION_SCRIPT} PARENT_SCOPE)
2222
2323
=== modified file 'src/platforms/android/client/buffer.cpp'
--- src/platforms/android/client/buffer.cpp 2016-10-12 06:03:15 +0000
+++ src/platforms/android/client/buffer.cpp 2016-10-27 03:52:22 +0000
@@ -79,7 +79,7 @@
7979
80void mcla::Buffer::update_from(MirBufferPackage const& update_package)80void mcla::Buffer::update_from(MirBufferPackage const& update_package)
81{81{
82 if ((update_package.flags & mir_buffer_flag_fenced) && 82 if ((update_package.flags & mir_buffer_flag_fenced) &&
83 (update_package.fd_items != 0))83 (update_package.fd_items != 0))
84 {84 {
85 auto fence_fd = update_package.fd[0];85 auto fence_fd = update_package.fd[0];
@@ -95,12 +95,12 @@
95 {95 {
96 message.flags = mir_buffer_flag_fenced;96 message.flags = mir_buffer_flag_fenced;
97 message.fd[0] = fence;97 message.fd[0] = fence;
98 message.fd_items = 1; 98 message.fd_items = 1;
99 }99 }
100 else100 else
101 {101 {
102 message.flags = 0;102 message.flags = 0;
103 message.fd_items = 0; 103 message.fd_items = 0;
104 }104 }
105}105}
106106
@@ -123,9 +123,9 @@
123 if (fence <= mir::Fd::invalid)123 if (fence <= mir::Fd::invalid)
124 native_buffer->reset_fence();124 native_buffer->reset_fence();
125 else if (access == mir_read)125 else if (access == mir_read)
126 native_buffer->update_usage(f, mga::BufferAccess::read); 126 native_buffer->update_usage(f, mga::BufferAccess::read);
127 else if (access == mir_read_write)127 else if (access == mir_read_write)
128 native_buffer->update_usage(f, mga::BufferAccess::write); 128 native_buffer->update_usage(f, mga::BufferAccess::write);
129 else129 else
130 BOOST_THROW_EXCEPTION(std::invalid_argument("invalid MirBufferAccess"));130 BOOST_THROW_EXCEPTION(std::invalid_argument("invalid MirBufferAccess"));
131}131}
@@ -144,9 +144,9 @@
144 ms = ms - std::chrono::milliseconds{1};144 ms = ms - std::chrono::milliseconds{1};
145145
146 if (access == mir_read)146 if (access == mir_read)
147 return native_buffer->ensure_available_for(mga::BufferAccess::read, ms); 147 return native_buffer->ensure_available_for(mga::BufferAccess::read, ms);
148 if (access == mir_read_write)148 if (access == mir_read_write)
149 return native_buffer->ensure_available_for(mga::BufferAccess::write, ms); 149 return native_buffer->ensure_available_for(mga::BufferAccess::write, ms);
150150
151 BOOST_THROW_EXCEPTION(std::invalid_argument("invalid MirBufferAccess"));151 BOOST_THROW_EXCEPTION(std::invalid_argument("invalid MirBufferAccess"));
152}152}
153153
=== modified file 'src/platforms/android/client/buffer.h'
--- src/platforms/android/client/buffer.h 2016-10-12 06:03:15 +0000
+++ src/platforms/android/client/buffer.h 2016-10-27 03:52:22 +0000
@@ -62,7 +62,7 @@
62 void pack_native_window_buffer();62 void pack_native_window_buffer();
6363
64 mir::Fd mutable api_user_fence;64 mir::Fd mutable api_user_fence;
65 65
66 std::shared_ptr<BufferRegistrar> const buffer_registrar;66 std::shared_ptr<BufferRegistrar> const buffer_registrar;
67 std::shared_ptr<graphics::android::NativeBuffer> const native_buffer;67 std::shared_ptr<graphics::android::NativeBuffer> const native_buffer;
68 MirPixelFormat const buffer_pf;68 MirPixelFormat const buffer_pf;
6969
=== modified file 'src/platforms/android/client/egl_native_surface_interpreter.cpp'
--- src/platforms/android/client/egl_native_surface_interpreter.cpp 2016-10-21 07:53:23 +0000
+++ src/platforms/android/client/egl_native_surface_interpreter.cpp 2016-10-27 03:52:22 +0000
@@ -42,7 +42,7 @@
42{42{
43 auto buffer = surface.get_current_buffer();43 auto buffer = surface.get_current_buffer();
44 auto buffer_to_driver = mga::to_native_buffer_checked(buffer->native_buffer_handle());44 auto buffer_to_driver = mga::to_native_buffer_checked(buffer->native_buffer_handle());
45 45
46 ANativeWindowBuffer* anwb = buffer_to_driver->anwb();46 ANativeWindowBuffer* anwb = buffer_to_driver->anwb();
47 anwb->format = driver_pixel_format;47 anwb->format = driver_pixel_format;
48 return buffer_to_driver.get();48 return buffer_to_driver.get();
@@ -91,7 +91,7 @@
91}91}
9292
93void mcla::EGLNativeSurfaceInterpreter::sync_to_display(bool should_sync)93void mcla::EGLNativeSurfaceInterpreter::sync_to_display(bool should_sync)
94{ 94{
95 surface.request_and_wait_for_configure(mir_surface_attrib_swapinterval, should_sync);95 surface.request_and_wait_for_configure(mir_surface_attrib_swapinterval, should_sync);
96}96}
9797
9898
=== modified file 'src/platforms/android/common/android_native_buffer.cpp'
--- src/platforms/android/common/android_native_buffer.cpp 2016-10-12 06:03:15 +0000
+++ src/platforms/android/common/android_native_buffer.cpp 2016-10-27 03:52:22 +0000
@@ -40,7 +40,7 @@
40{40{
41 if ((access == mga::BufferAccess::read) && (intent == mga::BufferAccess::read))41 if ((access == mga::BufferAccess::read) && (intent == mga::BufferAccess::read))
42 return;42 return;
43 43
44 fence->wait();44 fence->wait();
45}45}
4646
4747
=== modified file 'src/platforms/android/common/egl_sync_fence.cpp'
--- src/platforms/android/common/egl_sync_fence.cpp 2016-07-18 07:38:38 +0000
+++ src/platforms/android/common/egl_sync_fence.cpp 2016-10-27 03:52:22 +0000
@@ -64,7 +64,7 @@
64 if (sync_point == EGL_NO_SYNC_KHR)64 if (sync_point == EGL_NO_SYNC_KHR)
65 {65 {
66 std::stringstream str;66 std::stringstream str;
67 str << "failed to add sync point to command buffer: 0x" << std::hex << eglGetError(); 67 str << "failed to add sync point to command buffer: 0x" << std::hex << eglGetError();
68 log_error(str.str());68 log_error(str.str());
69 }69 }
70}70}
7171
=== modified file 'src/platforms/android/common/native_window_report.cpp'
--- src/platforms/android/common/native_window_report.cpp 2016-07-11 12:49:51 +0000
+++ src/platforms/android/common/native_window_report.cpp 2016-10-27 03:52:22 +0000
@@ -100,7 +100,7 @@
100100
101std::ostream& operator<<(std::ostream& out, ANativeWindow const* window)101std::ostream& operator<<(std::ostream& out, ANativeWindow const* window)
102{102{
103 return out << "addr (" << static_cast<void const*>(window) << "): "; 103 return out << "addr (" << static_cast<void const*>(window) << "): ";
104}104}
105}105}
106106
@@ -121,7 +121,7 @@
121 else121 else
122 str << "none";122 str << "none";
123123
124 logger->log(mir::logging::Severity::debug, str.str(), component_name); 124 logger->log(mir::logging::Severity::debug, str.str(), component_name);
125}125}
126126
127void mga::ConsoleNativeWindowReport::buffer_event(127void mga::ConsoleNativeWindowReport::buffer_event(
@@ -129,14 +129,14 @@
129{129{
130 std::stringstream str;130 std::stringstream str;
131 str << win << type << "_deprecated: " << buf;131 str << win << type << "_deprecated: " << buf;
132 logger->log(mir::logging::Severity::debug, str.str(), component_name); 132 logger->log(mir::logging::Severity::debug, str.str(), component_name);
133}133}
134134
135void mga::ConsoleNativeWindowReport::query_event(ANativeWindow const* win, int type, int result) const135void mga::ConsoleNativeWindowReport::query_event(ANativeWindow const* win, int type, int result) const
136{136{
137 std::stringstream str;137 std::stringstream str;
138 str << std::hex << win << "query: " << NativeQueryKey{type} << ": result: 0x" << result;138 str << std::hex << win << "query: " << NativeQueryKey{type} << ": result: 0x" << result;
139 logger->log(mir::logging::Severity::debug, str.str(), component_name); 139 logger->log(mir::logging::Severity::debug, str.str(), component_name);
140}140}
141141
142void mga::ConsoleNativeWindowReport::perform_event(142void mga::ConsoleNativeWindowReport::perform_event(
@@ -150,7 +150,7 @@
150 str << ", ";150 str << ", ";
151 str << "0x" << args[i];151 str << "0x" << args[i];
152 }152 }
153 logger->log(mir::logging::Severity::debug, str.str(), component_name); 153 logger->log(mir::logging::Severity::debug, str.str(), component_name);
154}154}
155155
156void mga::NullNativeWindowReport::buffer_event(mga::BufferEvent, ANativeWindow const*, ANativeWindowBuffer*, int) const156void mga::NullNativeWindowReport::buffer_event(mga::BufferEvent, ANativeWindow const*, ANativeWindowBuffer*, int) const
157157
=== modified file 'src/platforms/android/include/android/native_window.h'
--- src/platforms/android/include/android/native_window.h 2016-01-29 13:10:01 +0000
+++ src/platforms/android/include/android/native_window.h 2016-10-27 03:52:22 +0000
@@ -16,6 +16,6 @@
16 * Authored by: Kevin DuBois <kevin.dubois@canonical.com>16 * Authored by: Kevin DuBois <kevin.dubois@canonical.com>
17 */17 */
1818
19//NOTE: this file exists to workaround a xenial packaging issue 19//NOTE: this file exists to workaround a xenial packaging issue
20//described in LP: #153957120//described in LP: #1539571
21#include "system/window.h"21#include "system/window.h"
2222
=== modified file 'src/platforms/android/include/command_stream_sync.h'
--- src/platforms/android/include/command_stream_sync.h 2016-01-28 17:46:29 +0000
+++ src/platforms/android/include/command_stream_sync.h 2016-10-27 03:52:22 +0000
@@ -39,7 +39,7 @@
39 virtual bool wait_for(std::chrono::nanoseconds ns) = 0;39 virtual bool wait_for(std::chrono::nanoseconds ns) = 0;
4040
41 virtual ~CommandStreamSync() = default;41 virtual ~CommandStreamSync() = default;
42 CommandStreamSync() = default; 42 CommandStreamSync() = default;
43 CommandStreamSync(CommandStreamSync const&) = delete;43 CommandStreamSync(CommandStreamSync const&) = delete;
44 CommandStreamSync& operator=(CommandStreamSync const&) = delete;44 CommandStreamSync& operator=(CommandStreamSync const&) = delete;
45};45};
4646
=== modified file 'src/platforms/android/server/buffer.cpp'
--- src/platforms/android/server/buffer.cpp 2016-08-30 03:39:59 +0000
+++ src/platforms/android/server/buffer.cpp 2016-10-27 03:52:22 +0000
@@ -148,7 +148,7 @@
148 std::unique_lock<std::mutex> lk(content_lock);148 std::unique_lock<std::mutex> lk(content_lock);
149149
150 native_buffer->ensure_available_for(mga::BufferAccess::write);150 native_buffer->ensure_available_for(mga::BufferAccess::write);
151 151
152 auto bpp = MIR_BYTES_PER_PIXEL(pixel_format());152 auto bpp = MIR_BYTES_PER_PIXEL(pixel_format());
153 size_t buffer_size_bytes = size().height.as_int() * size().width.as_int() * bpp;153 size_t buffer_size_bytes = size().height.as_int() * size().width.as_int() * bpp;
154 if (buffer_size_bytes != data_size)154 if (buffer_size_bytes != data_size)
@@ -172,7 +172,7 @@
172 int line_offset_in_source = bpp*width*i;172 int line_offset_in_source = bpp*width*i;
173 memcpy(vaddr + line_offset_in_buffer, data + line_offset_in_source, width * bpp);173 memcpy(vaddr + line_offset_in_buffer, data + line_offset_in_source, width * bpp);
174 }174 }
175 175
176 hw_module->unlock(hw_module, native_buffer->handle());176 hw_module->unlock(hw_module, native_buffer->handle());
177}177}
178178
179179
=== modified file 'src/platforms/android/server/device_quirks.h'
--- src/platforms/android/server/device_quirks.h 2016-08-09 08:13:02 +0000
+++ src/platforms/android/server/device_quirks.h 2016-10-27 03:52:22 +0000
@@ -87,7 +87,7 @@
87 bool const enable_width_alignment_quirk;87 bool const enable_width_alignment_quirk;
88 bool const clear_fb_context_fence_;88 bool const clear_fb_context_fence_;
89 bool const fb_ion_heap_;89 bool const fb_ion_heap_;
90 bool const working_egl_sync_; 90 bool const working_egl_sync_;
91};91};
92}92}
93}93}
9494
=== modified file 'src/platforms/android/server/display.cpp'
--- src/platforms/android/server/display.cpp 2016-10-12 06:03:15 +0000
+++ src/platforms/android/server/display.cpp 2016-10-27 03:52:22 +0000
@@ -53,8 +53,8 @@
53 int pipes_raw[2] {-1, -1};53 int pipes_raw[2] {-1, -1};
54 if (::pipe2(pipes_raw, O_CLOEXEC | O_NONBLOCK))54 if (::pipe2(pipes_raw, O_CLOEXEC | O_NONBLOCK))
55 BOOST_THROW_EXCEPTION(std::runtime_error("failed to create display change pipe"));55 BOOST_THROW_EXCEPTION(std::runtime_error("failed to create display change pipe"));
56 read_pipe = mir::Fd{pipes_raw[0]}; 56 read_pipe = mir::Fd{pipes_raw[0]};
57 write_pipe = mir::Fd{pipes_raw[1]}; 57 write_pipe = mir::Fd{pipes_raw[1]};
58 }58 }
5959
60 void notify_change()60 void notify_change()
@@ -106,7 +106,7 @@
106{106{
107 power_mode_safe(mga::DisplayName::primary, control, config.primary(), intended_mode);107 power_mode_safe(mga::DisplayName::primary, control, config.primary(), intended_mode);
108 if (config.external().connected)108 if (config.external().connected)
109 power_mode_safe(mga::DisplayName::external, control, config.external(), intended_mode); 109 power_mode_safe(mga::DisplayName::external, control, config.external(), intended_mode);
110}110}
111111
112std::unique_ptr<mga::ConfigurableDisplayBuffer> create_display_buffer(112std::unique_ptr<mga::ConfigurableDisplayBuffer> create_display_buffer(
@@ -123,7 +123,7 @@
123 std::shared_ptr<mga::FramebufferBundle> fbs{display_buffer_builder.create_framebuffers(config)};123 std::shared_ptr<mga::FramebufferBundle> fbs{display_buffer_builder.create_framebuffers(config)};
124 auto cache = std::make_shared<mga::InterpreterCache>();124 auto cache = std::make_shared<mga::InterpreterCache>();
125 mga::DeviceQuirks quirks(mga::PropertiesOps{}, gl_context);125 mga::DeviceQuirks quirks(mga::PropertiesOps{}, gl_context);
126 auto interpreter = std::make_shared<mga::ServerRenderWindow>(fbs, config.current_format, cache, quirks); 126 auto interpreter = std::make_shared<mga::ServerRenderWindow>(fbs, config.current_format, cache, quirks);
127 auto native_window = std::make_shared<mga::MirNativeWindow>(interpreter, report);127 auto native_window = std::make_shared<mga::MirNativeWindow>(interpreter, report);
128 return std::unique_ptr<mga::ConfigurableDisplayBuffer>(new mga::DisplayBuffer(128 return std::unique_ptr<mga::ConfigurableDisplayBuffer>(new mga::DisplayBuffer(
129 name,129 name,
130130
=== modified file 'src/platforms/android/server/display_device.h'
--- src/platforms/android/server/display_device.h 2016-07-18 07:38:38 +0000
+++ src/platforms/android/server/display_device.h 2016-10-27 03:52:22 +0000
@@ -46,9 +46,9 @@
46 LayerList& list;46 LayerList& list;
47 geometry::Displacement list_offset;47 geometry::Displacement list_offset;
48 SwappingGLContext& context;48 SwappingGLContext& context;
49 RenderableListCompositor& compositor; 49 RenderableListCompositor& compositor;
50};50};
51 51
52class DisplayDevice52class DisplayDevice
53{53{
54public:54public:
5555
=== modified file 'src/platforms/android/server/fb_device.cpp'
--- src/platforms/android/server/fb_device.cpp 2016-10-20 15:05:56 +0000
+++ src/platforms/android/server/fb_device.cpp 2016-10-27 03:52:22 +0000
@@ -49,7 +49,7 @@
49 int enable = 0;49 int enable = 0;
50 if (mode == mir_power_mode_on)50 if (mode == mir_power_mode_on)
51 enable = 1;51 enable = 1;
52 52
53 if (fb_device->enableScreen)53 if (fb_device->enableScreen)
54 fb_device->enableScreen(fb_device.get(), enable);54 fb_device->enableScreen(fb_device.get(), enable);
55}55}
5656
=== modified file 'src/platforms/android/server/graphic_buffer_allocator.h'
--- src/platforms/android/server/graphic_buffer_allocator.h 2016-08-09 08:13:02 +0000
+++ src/platforms/android/server/graphic_buffer_allocator.h 2016-10-27 03:52:22 +0000
@@ -22,7 +22,7 @@
2222
23#include <cstddef> // to fix missing #includes in graphics.h from hardware.h23#include <cstddef> // to fix missing #includes in graphics.h from hardware.h
24#include <hardware/hardware.h>24#include <hardware/hardware.h>
25#include "mir_toolkit/mir_native_buffer.h" 25#include "mir_toolkit/mir_native_buffer.h"
2626
27#include "mir/graphics/buffer_properties.h"27#include "mir/graphics/buffer_properties.h"
28#include "mir/graphics/graphic_buffer_allocator.h"28#include "mir/graphics/graphic_buffer_allocator.h"
2929
=== modified file 'src/platforms/android/server/hwc_device.cpp'
--- src/platforms/android/server/hwc_device.cpp 2016-10-12 06:56:27 +0000
+++ src/platforms/android/server/hwc_device.cpp 2016-10-27 03:52:22 +0000
@@ -92,7 +92,7 @@
92 {92 {
93 if (content.name == mga::DisplayName::primary)93 if (content.name == mga::DisplayName::primary)
94 lists[HWC_DISPLAY_PRIMARY] = content.list.native_list();94 lists[HWC_DISPLAY_PRIMARY] = content.list.native_list();
95 else if (content.name == mga::DisplayName::external) 95 else if (content.name == mga::DisplayName::external)
96 lists[HWC_DISPLAY_EXTERNAL] = content.list.native_list();96 lists[HWC_DISPLAY_EXTERNAL] = content.list.native_list();
9797
98 content.list.setup_fb(content.context.last_rendered_buffer());98 content.list.setup_fb(content.context.last_rendered_buffer());
@@ -118,7 +118,7 @@
118 content.list.swap_occurred();118 content.list.swap_occurred();
119 purely_overlays = false;119 purely_overlays = false;
120 }120 }
121 121
122 //setup overlays122 //setup overlays
123 for (auto& layer : content.list)123 for (auto& layer : content.list)
124 {124 {
125125
=== modified file 'src/platforms/android/server/hwc_fallback_gl_renderer.cpp'
--- src/platforms/android/server/hwc_fallback_gl_renderer.cpp 2016-08-09 08:13:02 +0000
+++ src/platforms/android/server/hwc_fallback_gl_renderer.cpp 2016-10-27 03:52:22 +0000
@@ -87,7 +87,7 @@
87 glUseProgram(*program);87 glUseProgram(*program);
8888
89 auto display_transform_uniform = glGetUniformLocation(*program, "display_transform");89 auto display_transform_uniform = glGetUniformLocation(*program, "display_transform");
90 set_display_transform(display_transform_uniform, screen_pos); 90 set_display_transform(display_transform_uniform, screen_pos);
9191
92 position_attr = glGetAttribLocation(*program, "position");92 position_attr = glGetAttribLocation(*program, "position");
93 texcoord_attr = glGetAttribLocation(*program, "texcoord");93 texcoord_attr = glGetAttribLocation(*program, "texcoord");
9494
=== modified file 'src/platforms/android/server/hwc_fb_device.cpp'
--- src/platforms/android/server/hwc_fb_device.cpp 2016-10-12 06:03:15 +0000
+++ src/platforms/android/server/hwc_fb_device.cpp 2016-10-27 03:52:22 +0000
@@ -39,7 +39,7 @@
39mga::HwcFbDevice::HwcFbDevice(39mga::HwcFbDevice::HwcFbDevice(
40 std::shared_ptr<HwcWrapper> const& hwc_wrapper,40 std::shared_ptr<HwcWrapper> const& hwc_wrapper,
41 std::shared_ptr<framebuffer_device_t> const& fb_device) :41 std::shared_ptr<framebuffer_device_t> const& fb_device) :
42 hwc_wrapper(hwc_wrapper), 42 hwc_wrapper(hwc_wrapper),
43 fb_device(fb_device),43 fb_device(fb_device),
44 vsync_subscription{44 vsync_subscription{
45 [hwc_wrapper, this]{45 [hwc_wrapper, this]{
4646
=== modified file 'src/platforms/android/server/hwc_fb_device.h'
--- src/platforms/android/server/hwc_fb_device.h 2016-09-02 08:19:31 +0000
+++ src/platforms/android/server/hwc_fb_device.h 2016-10-27 03:52:22 +0000
@@ -36,7 +36,7 @@
36{36{
37class HwcWrapper;37class HwcWrapper;
3838
39class HwcFbDevice : public DisplayDevice 39class HwcFbDevice : public DisplayDevice
40{40{
41public:41public:
42 HwcFbDevice(std::shared_ptr<HwcWrapper> const& hwc_wrapper,42 HwcFbDevice(std::shared_ptr<HwcWrapper> const& hwc_wrapper,
4343
=== modified file 'src/platforms/android/server/hwc_layerlist.cpp'
--- src/platforms/android/server/hwc_layerlist.cpp 2016-01-29 08:18:22 +0000
+++ src/platforms/android/server/hwc_layerlist.cpp 2016-10-27 03:52:22 +0000
@@ -80,7 +80,7 @@
80 mode = Mode::target_only;80 mode = Mode::target_only;
81 else if (renderlist.empty() && !layer_adapter->needs_fb_target())81 else if (renderlist.empty() && !layer_adapter->needs_fb_target())
82 mode = Mode::skip_only;82 mode = Mode::skip_only;
83 else 83 else
84 mode = Mode::no_extra_layers;84 mode = Mode::no_extra_layers;
85}85}
8686
@@ -138,12 +138,12 @@
138138
139std::list<mga::HwcLayerEntry>::iterator mga::LayerList::begin()139std::list<mga::HwcLayerEntry>::iterator mga::LayerList::begin()
140{140{
141 return layers.begin(); 141 return layers.begin();
142}142}
143143
144std::list<mga::HwcLayerEntry>::iterator mga::LayerList::end()144std::list<mga::HwcLayerEntry>::iterator mga::LayerList::end()
145{145{
146 return layers.end(); 146 return layers.end();
147}147}
148148
149hwc_display_contents_1_t* mga::LayerList::native_list()149hwc_display_contents_1_t* mga::LayerList::native_list()
150150
=== modified file 'src/platforms/android/server/hwc_layers.cpp'
--- src/platforms/android/server/hwc_layers.cpp 2016-10-12 06:03:15 +0000
+++ src/platforms/android/server/hwc_layers.cpp 2016-10-27 03:52:22 +0000
@@ -41,7 +41,7 @@
41void mga::FloatSourceCrop::fill_source_crop(41void mga::FloatSourceCrop::fill_source_crop(
42 hwc_layer_1_t& hwc_layer, geometry::Rectangle const& crop_rect) const42 hwc_layer_1_t& hwc_layer, geometry::Rectangle const& crop_rect) const
43{43{
44 hwc_layer.sourceCropf = 44 hwc_layer.sourceCropf =
45 {45 {
46 static_cast<float>(crop_rect.top_left.x.as_int()),46 static_cast<float>(crop_rect.top_left.x.as_int()),
47 static_cast<float>(crop_rect.top_left.y.as_int()),47 static_cast<float>(crop_rect.top_left.y.as_int()),
@@ -58,7 +58,7 @@
58void mga::IntegerSourceCrop::fill_source_crop(58void mga::IntegerSourceCrop::fill_source_crop(
59 hwc_layer_1_t& hwc_layer, geometry::Rectangle const& crop_rect) const59 hwc_layer_1_t& hwc_layer, geometry::Rectangle const& crop_rect) const
60{60{
61 hwc_layer.sourceCropi = 61 hwc_layer.sourceCropi =
62 {62 {
63 crop_rect.top_left.x.as_int(),63 crop_rect.top_left.x.as_int(),
64 crop_rect.top_left.y.as_int(),64 crop_rect.top_left.y.as_int(),
@@ -75,7 +75,7 @@
75void mga::Hwc10Adapter::fill_source_crop(75void mga::Hwc10Adapter::fill_source_crop(
76 hwc_layer_1_t& hwc_layer, geometry::Rectangle const& crop_rect) const76 hwc_layer_1_t& hwc_layer, geometry::Rectangle const& crop_rect) const
77{77{
78 hwc_layer.sourceCropi = 78 hwc_layer.sourceCropi =
79 {79 {
80 crop_rect.top_left.x.as_int(),80 crop_rect.top_left.x.as_int(),
81 crop_rect.top_left.y.as_int(),81 crop_rect.top_left.y.as_int(),
@@ -209,7 +209,7 @@
209 hwc_layer->planeAlpha = plane_alpha_max;209 hwc_layer->planeAlpha = plane_alpha_max;
210210
211 /* note, if the sourceCrop and DisplayFrame sizes differ, the output will be linearly scaled */211 /* note, if the sourceCrop and DisplayFrame sizes differ, the output will be linearly scaled */
212 hwc_layer->displayFrame = 212 hwc_layer->displayFrame =
213 {213 {
214 position.top_left.x.as_int(),214 position.top_left.x.as_int(),
215 position.top_left.y.as_int(),215 position.top_left.y.as_int(),
216216
=== modified file 'src/platforms/android/server/hwc_layers.h'
--- src/platforms/android/server/hwc_layers.h 2016-09-20 04:32:25 +0000
+++ src/platforms/android/server/hwc_layers.h 2016-10-27 03:52:22 +0000
@@ -53,8 +53,8 @@
53 virtual bool needs_fb_target() const = 0;53 virtual bool needs_fb_target() const = 0;
54 virtual ~LayerAdapter() = default;54 virtual ~LayerAdapter() = default;
55 LayerAdapter() = default;55 LayerAdapter() = default;
56 LayerAdapter(LayerAdapter const&) = delete; 56 LayerAdapter(LayerAdapter const&) = delete;
57 LayerAdapter& operator=(LayerAdapter const&) = delete; 57 LayerAdapter& operator=(LayerAdapter const&) = delete;
58};58};
5959
60//HWC 1.0 has int sourceCrop and no fbtarget60//HWC 1.0 has int sourceCrop and no fbtarget
@@ -100,7 +100,7 @@
100100
101 HWCLayer& operator=(HWCLayer const& layer) = delete;101 HWCLayer& operator=(HWCLayer const& layer) = delete;
102 HWCLayer(HWCLayer const& layer) = delete;102 HWCLayer(HWCLayer const& layer) = delete;
103 103
104 bool setup_layer(104 bool setup_layer(
105 LayerType type,105 LayerType type,
106 geometry::Rectangle const& position,106 geometry::Rectangle const& position,
107107
=== modified file 'src/platforms/android/server/hwc_loggers.cpp'
--- src/platforms/android/server/hwc_loggers.cpp 2016-04-14 06:59:49 +0000
+++ src/platforms/android/server/hwc_loggers.cpp 2016-10-27 03:52:22 +0000
@@ -76,9 +76,9 @@
76 case 0:76 case 0:
77 return str << std::string{"NONE"};77 return str << std::string{"NONE"};
78 case HWC_TRANSFORM_ROT_90:78 case HWC_TRANSFORM_ROT_90:
79 return str << std::string{"ROT_90"}; 79 return str << std::string{"ROT_90"};
80 case HWC_TRANSFORM_ROT_180:80 case HWC_TRANSFORM_ROT_180:
81 return str << std::string{"ROT_180"}; 81 return str << std::string{"ROT_180"};
82 case HWC_TRANSFORM_ROT_270:82 case HWC_TRANSFORM_ROT_270:
83 return str << std::string{"ROT_270"};83 return str << std::string{"ROT_270"};
84 default:84 default:
@@ -124,10 +124,10 @@
124}124}
125125
126struct HwcRectMember { int member; };126struct HwcRectMember { int member; };
127std::ostream& operator<<(std::ostream& str, HwcRectMember rect) 127std::ostream& operator<<(std::ostream& str, HwcRectMember rect)
128{128{
129 StreamFormatter stream_format(str, rect_entry_column_size, std::ios_base::right);129 StreamFormatter stream_format(str, rect_entry_column_size, std::ios_base::right);
130 return str << rect.member; 130 return str << rect.member;
131}131}
132132
133struct HwcRect { hwc_rect_t const& rect; };133struct HwcRect { hwc_rect_t const& rect; };
@@ -165,7 +165,7 @@
165 return str << "OFF";165 return str << "OFF";
166}166}
167167
168std::ostream& operator<<(std::ostream& str, mga::HwcVersion version) 168std::ostream& operator<<(std::ostream& str, mga::HwcVersion version)
169{169{
170 switch (version)170 switch (version)
171 {171 {
172172
=== modified file 'src/platforms/android/server/hwc_wrapper.h'
--- src/platforms/android/server/hwc_wrapper.h 2016-09-02 08:19:31 +0000
+++ src/platforms/android/server/hwc_wrapper.h 2016-10-27 03:52:22 +0000
@@ -48,7 +48,7 @@
48 virtual void prepare(std::array<hwc_display_contents_1*, HWC_NUM_DISPLAY_TYPES> const&) const = 0;48 virtual void prepare(std::array<hwc_display_contents_1*, HWC_NUM_DISPLAY_TYPES> const&) const = 0;
49 virtual void set(std::array<hwc_display_contents_1*, HWC_NUM_DISPLAY_TYPES> const&) const = 0;49 virtual void set(std::array<hwc_display_contents_1*, HWC_NUM_DISPLAY_TYPES> const&) const = 0;
50 //receive vsync, invalidate, and hotplug events from the driver.50 //receive vsync, invalidate, and hotplug events from the driver.
51 //As with the HWC api, these events MUST NOT call-back to the other functions in HwcWrapper. 51 //As with the HWC api, these events MUST NOT call-back to the other functions in HwcWrapper.
52 virtual void subscribe_to_events(52 virtual void subscribe_to_events(
53 void const* subscriber,53 void const* subscriber,
54 std::function<void(DisplayName, graphics::Frame::Timestamp)> const& vsync_callback,54 std::function<void(DisplayName, graphics::Frame::Timestamp)> const& vsync_callback,
5555
=== modified file 'src/platforms/android/server/real_hwc_wrapper.cpp'
--- src/platforms/android/server/real_hwc_wrapper.cpp 2016-09-19 09:53:06 +0000
+++ src/platforms/android/server/real_hwc_wrapper.cpp 2016-10-27 03:52:22 +0000
@@ -32,7 +32,7 @@
32{32{
33int num_displays(std::array<hwc_display_contents_1_t*, HWC_NUM_DISPLAY_TYPES> const& displays)33int num_displays(std::array<hwc_display_contents_1_t*, HWC_NUM_DISPLAY_TYPES> const& displays)
34{34{
35 return std::distance(displays.begin(), 35 return std::distance(displays.begin(),
36 std::find_if(displays.begin(), displays.end(),36 std::find_if(displays.begin(), displays.end(),
37 [](hwc_display_contents_1_t* d){ return d == nullptr; }));37 [](hwc_display_contents_1_t* d){ return d == nullptr; }));
38}38}
3939
=== modified file 'src/platforms/android/server/resource_factory.cpp'
--- src/platforms/android/server/resource_factory.cpp 2016-07-18 07:38:38 +0000
+++ src/platforms/android/server/resource_factory.cpp 2016-10-27 03:52:22 +0000
@@ -83,7 +83,7 @@
83 case HWC_DEVICE_API_VERSION_1_5: version = mga::HwcVersion::hwc15; break;83 case HWC_DEVICE_API_VERSION_1_5: version = mga::HwcVersion::hwc15; break;
84 default: version = mga::HwcVersion::unknown; break;84 default: version = mga::HwcVersion::unknown; break;
85 }85 }
86 86
87 return std::make_tuple(87 return std::make_tuple(
88 std::make_shared<mga::RealHwcWrapper>(hwc_native, hwc_report),88 std::make_shared<mga::RealHwcWrapper>(hwc_native, hwc_report),
89 version);89 version);
9090
=== modified file 'src/platforms/android/utils/test_android_hardware_sanity.cpp'
--- src/platforms/android/utils/test_android_hardware_sanity.cpp 2016-10-12 06:56:27 +0000
+++ src/platforms/android/utils/test_android_hardware_sanity.cpp 2016-10-27 03:52:22 +0000
@@ -87,7 +87,7 @@
87 char const* argv = "./aa";87 char const* argv = "./aa";
88 NoCompositingServer config{1, &argv};88 NoCompositingServer config{1, &argv};
89};89};
90 90
91struct AndroidMirDiagnostics : testing::Test91struct AndroidMirDiagnostics : testing::Test
92{92{
93 static void SetUpTestCase()93 static void SetUpTestCase()
@@ -302,7 +302,7 @@
302 bool valid_content = false;302 bool valid_content = false;
303 std::vector<unsigned char> px(303 std::vector<unsigned char> px(
304 buffer->size().height.as_int() *304 buffer->size().height.as_int() *
305 buffer->size().width.as_int() * 305 buffer->size().width.as_int() *
306 MIR_BYTES_PER_PIXEL(buffer->pixel_format()));306 MIR_BYTES_PER_PIXEL(buffer->pixel_format()));
307 uint32_t green{0x00FF00FF};307 uint32_t green{0x00FF00FF};
308 mt::DrawPatternSolid green_pattern(green);308 mt::DrawPatternSolid green_pattern(green);
309309
=== modified file 'src/platforms/common/server/kms-utils/kms_connector.cpp'
--- src/platforms/common/server/kms-utils/kms_connector.cpp 2016-09-20 04:32:25 +0000
+++ src/platforms/common/server/kms-utils/kms_connector.cpp 2016-10-27 03:52:22 +0000
@@ -187,7 +187,7 @@
187 {187 {
188 std::tie(crtc, crtc_index) = find_crtc_and_index_for_connector(resources, connector);188 std::tie(crtc, crtc_index) = find_crtc_and_index_for_connector(resources, connector);
189 }189 }
190 190
191 mgk::PlaneResources plane_res{drm_fd};191 mgk::PlaneResources plane_res{drm_fd};
192192
193 for (auto& plane : plane_res.planes())193 for (auto& plane : plane_res.planes())
194194
=== modified file 'src/platforms/eglstream-kms/client/client_platform.cpp'
--- src/platforms/eglstream-kms/client/client_platform.cpp 2016-10-12 06:03:15 +0000
+++ src/platforms/eglstream-kms/client/client_platform.cpp 2016-10-27 03:52:22 +0000
@@ -71,7 +71,7 @@
71{71{
72 if (auto native = dynamic_cast<mir::graphics::eglstream::NativeBuffer*>(buf))72 if (auto native = dynamic_cast<mir::graphics::eglstream::NativeBuffer*>(buf))
73 return native;73 return native;
74 BOOST_THROW_EXCEPTION(std::invalid_argument("could not convert to NativeBuffer")); 74 BOOST_THROW_EXCEPTION(std::invalid_argument("could not convert to NativeBuffer"));
75}75}
7676
7777
7878
=== modified file 'src/platforms/evdev/CMakeLists.txt'
--- src/platforms/evdev/CMakeLists.txt 2016-08-10 07:57:05 +0000
+++ src/platforms/evdev/CMakeLists.txt 2016-10-27 03:52:22 +0000
@@ -7,7 +7,7 @@
7endif ()7endif ()
88
9include_directories(9include_directories(
10 ${LIBINPUT_CFLAGS} 10 ${LIBINPUT_CFLAGS}
11 ${PROJECT_SOURCE_DIR}/include/platform11 ${PROJECT_SOURCE_DIR}/include/platform
12 ${PROJECT_SOURCE_DIR}/src/include/platform # udev Context12 ${PROJECT_SOURCE_DIR}/src/include/platform # udev Context
13 ${PROJECT_SOURCE_DIR}/src/include/common # raii.h13 ${PROJECT_SOURCE_DIR}/src/include/common # raii.h
1414
=== modified file 'src/platforms/mesa/server/buffer_allocator.cpp'
--- src/platforms/mesa/server/buffer_allocator.cpp 2016-10-11 07:12:33 +0000
+++ src/platforms/mesa/server/buffer_allocator.cpp 2016-10-27 03:52:22 +0000
@@ -284,7 +284,7 @@
284 auto const stride = geom::Stride{284 auto const stride = geom::Stride{
285 MIR_BYTES_PER_PIXEL(buffer_properties.format) *285 MIR_BYTES_PER_PIXEL(buffer_properties.format) *
286 buffer_properties.size.width.as_uint32_t()};286 buffer_properties.size.width.as_uint32_t()};
287 size_t const size_in_bytes = 287 size_t const size_in_bytes =
288 stride.as_int() * buffer_properties.size.height.as_int();288 stride.as_int() * buffer_properties.size.height.as_int();
289 auto shm_file =289 auto shm_file =
290 std::make_unique<mgc::AnonymousShmFile>(size_in_bytes);290 std::make_unique<mgc::AnonymousShmFile>(size_in_bytes);
@@ -331,7 +331,7 @@
331 gbm_import_fd_data data;331 gbm_import_fd_data data;
332 data.fd = package->fd[0];332 data.fd = package->fd[0];
333 data.width = package->width;333 data.width = package->width;
334 data.height = package->height; 334 data.height = package->height;
335 data.stride = package->stride;335 data.stride = package->stride;
336 data.format = format;336 data.format = format;
337337
338338
=== modified file 'src/platforms/mesa/server/kms/cursor.cpp'
--- src/platforms/mesa/server/kms/cursor.cpp 2016-08-05 07:33:22 +0000
+++ src/platforms/mesa/server/kms/cursor.cpp 2016-10-27 03:52:22 +0000
@@ -71,7 +71,7 @@
71{71{
72 // on some older hardware drm incorrectly reports the cursor size72 // on some older hardware drm incorrectly reports the cursor size
73 bool const force_64x64_cursor = getenv(mir_drm_cursor_64x64);73 bool const force_64x64_cursor = getenv(mir_drm_cursor_64x64);
74 74
75 uint64_t height = fallback_cursor_size;75 uint64_t height = fallback_cursor_size;
76 if (!force_64x64_cursor)76 if (!force_64x64_cursor)
77 drmGetCap(fd, DRM_CAP_CURSOR_HEIGHT, &height);77 drmGetCap(fd, DRM_CAP_CURSOR_HEIGHT, &height);
@@ -82,7 +82,7 @@
82{82{
83 // on some older hardware drm incorrectly reports the cursor size83 // on some older hardware drm incorrectly reports the cursor size
84 bool const force_64x64_cursor = getenv(mir_drm_cursor_64x64);84 bool const force_64x64_cursor = getenv(mir_drm_cursor_64x64);
85 85
86 uint64_t width = fallback_cursor_size;86 uint64_t width = fallback_cursor_size;
87 if (!force_64x64_cursor)87 if (!force_64x64_cursor)
88 drmGetCap(fd, DRM_CAP_CURSOR_WIDTH, &width);88 drmGetCap(fd, DRM_CAP_CURSOR_WIDTH, &width);
@@ -149,7 +149,7 @@
149 {149 {
150 BOOST_THROW_EXCEPTION(std::logic_error("Image is too big for GBM cursor buffer"));150 BOOST_THROW_EXCEPTION(std::logic_error("Image is too big for GBM cursor buffer"));
151 }151 }
152 152
153 size_t buffer_stride = gbm_bo_get_stride(buffer); // in bytes153 size_t buffer_stride = gbm_bo_get_stride(buffer); // in bytes
154 size_t padded_size = buffer_stride * buffer_height;154 size_t padded_size = buffer_stride * buffer_height;
155 auto padded = std::unique_ptr<uint8_t[]>(new uint8_t[padded_size]);155 auto padded = std::unique_ptr<uint8_t[]>(new uint8_t[padded_size]);
@@ -198,7 +198,7 @@
198 write_buffer_data_locked(lg, cursor_image.as_argb_8888(), count);198 write_buffer_data_locked(lg, cursor_image.as_argb_8888(), count);
199 }199 }
200 hotspot = cursor_image.hotspot();200 hotspot = cursor_image.hotspot();
201 201
202 // The hotspot may have changed so we need to call drmModeSetCursor again if the cursor was already visible.202 // The hotspot may have changed so we need to call drmModeSetCursor again if the cursor was already visible.
203 if (visible)203 if (visible)
204 place_cursor_at_locked(lg, current_position, ForceState);204 place_cursor_at_locked(lg, current_position, ForceState);
@@ -280,7 +280,7 @@
280 if (output_rect.contains(position))280 if (output_rect.contains(position))
281 {281 {
282 auto dp = transform(output_rect, position - output_rect.top_left, orientation);282 auto dp = transform(output_rect, position - output_rect.top_left, orientation);
283 283
284 // It's a little strange that we implement hotspot this way as there is284 // It's a little strange that we implement hotspot this way as there is
285 // drmModeSetCursor2 with hotspot support. However it appears to not actually285 // drmModeSetCursor2 with hotspot support. However it appears to not actually
286 // work on radeon and intel. There also seems to be precedent in weston for286 // work on radeon and intel. There also seems to be precedent in weston for
287287
=== modified file 'src/platforms/mesa/server/kms/cursor.h'
--- src/platforms/mesa/server/kms/cursor.h 2016-08-05 07:33:22 +0000
+++ src/platforms/mesa/server/kms/cursor.h 2016-10-27 03:52:22 +0000
@@ -89,7 +89,7 @@
89 void place_cursor_at_locked(std::lock_guard<std::mutex> const&, geometry::Point position, ForceCursorState force_state);89 void place_cursor_at_locked(std::lock_guard<std::mutex> const&, geometry::Point position, ForceCursorState force_state);
90 void write_buffer_data_locked(std::lock_guard<std::mutex> const&, void const* data, size_t count);90 void write_buffer_data_locked(std::lock_guard<std::mutex> const&, void const* data, size_t count);
91 void pad_and_write_image_data_locked(std::lock_guard<std::mutex> const&, CursorImage const& image);91 void pad_and_write_image_data_locked(std::lock_guard<std::mutex> const&, CursorImage const& image);
92 92
93 std::mutex guard;93 std::mutex guard;
9494
95 KMSOutputContainer& output_container;95 KMSOutputContainer& output_container;
9696
=== modified file 'src/platforms/mesa/server/kms/display_buffer.cpp'
--- src/platforms/mesa/server/kms/display_buffer.cpp 2016-10-12 06:03:15 +0000
+++ src/platforms/mesa/server/kms/display_buffer.cpp 2016-10-27 03:52:22 +0000
@@ -441,7 +441,7 @@
441441
442 visible_bypass_frame = scheduled_bypass_frame;442 visible_bypass_frame = scheduled_bypass_frame;
443 scheduled_bypass_frame = nullptr;443 scheduled_bypass_frame = nullptr;
444 444
445 if (visible_composite_frame)445 if (visible_composite_frame)
446 visible_composite_frame->release();446 visible_composite_frame->release();
447 visible_composite_frame = scheduled_composite_frame;447 visible_composite_frame = scheduled_composite_frame;
448448
=== modified file 'src/platforms/mesa/server/kms/guest_platform.h'
--- src/platforms/mesa/server/kms/guest_platform.h 2016-07-20 04:54:07 +0000
+++ src/platforms/mesa/server/kms/guest_platform.h 2016-10-27 03:52:22 +0000
@@ -31,7 +31,7 @@
31{31{
32namespace mesa32namespace mesa
33{33{
34class InternalNativeDisplay; 34class InternalNativeDisplay;
3535
36class GuestPlatform : public graphics::Platform36class GuestPlatform : public graphics::Platform
37{37{
3838
=== modified file 'src/platforms/mesa/server/x11/graphics/display.cpp'
--- src/platforms/mesa/server/x11/graphics/display.cpp 2016-10-12 06:03:15 +0000
+++ src/platforms/mesa/server/x11/graphics/display.cpp 2016-10-27 03:52:22 +0000
@@ -203,7 +203,7 @@
203 XMapWindow(x_dpy, win);203 XMapWindow(x_dpy, win);
204204
205 XEvent xev;205 XEvent xev;
206 do 206 do
207 {207 {
208 XNextEvent(x_dpy, &xev);208 XNextEvent(x_dpy, &xev);
209 }209 }
210210
=== modified file 'src/platforms/mesa/server/x11/symbols.map.in'
--- src/platforms/mesa/server/x11/symbols.map.in 2016-01-29 08:18:22 +0000
+++ src/platforms/mesa/server/x11/symbols.map.in 2016-10-27 03:52:22 +0000
@@ -1,5 +1,5 @@
1@MIR_SERVER_GRAPHICS_PLATFORM_VERSION@ {1@MIR_SERVER_GRAPHICS_PLATFORM_VERSION@ {
2 global: 2 global:
3 add_graphics_platform_options;3 add_graphics_platform_options;
4 probe_graphics_platform;4 probe_graphics_platform;
5 create_host_platform;5 create_host_platform;
@@ -9,7 +9,7 @@
9};9};
1010
11@MIR_SERVER_INPUT_PLATFORM_VERSION@ {11@MIR_SERVER_INPUT_PLATFORM_VERSION@ {
12 global: 12 global:
13 add_input_platform_options;13 add_input_platform_options;
14 create_input_platform;14 create_input_platform;
15 probe_input_platform;15 probe_input_platform;
1616
=== modified file 'src/protobuf/mir_protobuf.proto'
--- src/protobuf/mir_protobuf.proto 2016-10-12 06:03:15 +0000
+++ src/protobuf/mir_protobuf.proto 2016-10-27 03:52:22 +0000
@@ -29,7 +29,7 @@
29 optional int32 state = 8;29 optional int32 state = 8;
30 optional int32 pref_orientation = 9;30 optional int32 pref_orientation = 9;
31 optional int32 parent_id = 10;31 optional int32 parent_id = 10;
32 32
33 optional Rectangle aux_rect = 11;33 optional Rectangle aux_rect = 11;
34 optional int32 edge_attachment = 12;34 optional int32 edge_attachment = 12;
3535
@@ -45,7 +45,7 @@
45 optional PersistentSurfaceId parent_persistent_id = 21;45 optional PersistentSurfaceId parent_persistent_id = 21;
46 repeated Rectangle input_shape = 22;46 repeated Rectangle input_shape = 22;
47 optional int32 shell_chrome = 24;47 optional int32 shell_chrome = 24;
48 repeated StreamConfiguration stream = 25; 48 repeated StreamConfiguration stream = 25;
49 optional int32 confine_pointer = 26;49 optional int32 confine_pointer = 26;
5050
51 optional int32 placement_hints = 27;51 optional int32 placement_hints = 27;
@@ -87,7 +87,7 @@
87 optional SurfaceAspectRatio min_aspect = 19;87 optional SurfaceAspectRatio min_aspect = 19;
88 optional SurfaceAspectRatio max_aspect = 20;88 optional SurfaceAspectRatio max_aspect = 20;
8989
90 repeated StreamConfiguration stream = 21; 90 repeated StreamConfiguration stream = 21;
9191
92 optional PersistentSurfaceId parent_persistent_id = 22;92 optional PersistentSurfaceId parent_persistent_id = 22;
93 repeated Rectangle input_shape = 23;93 repeated Rectangle input_shape = 23;
@@ -145,11 +145,11 @@
145145
146message BufferAllocation {146message BufferAllocation {
147 optional BufferStreamId id = 1;147 optional BufferStreamId id = 1;
148 repeated BufferStreamParameters buffer_requests = 2; 148 repeated BufferStreamParameters buffer_requests = 2;
149};149};
150150
151message BufferRelease {151message BufferRelease {
152 repeated Buffer buffers = 1; 152 repeated Buffer buffers = 1;
153 optional BufferStreamId id = 2;153 optional BufferStreamId id = 2;
154};154};
155155
@@ -254,7 +254,7 @@
254 optional int32 pixel_format = 2;254 optional int32 pixel_format = 2;
255 optional int32 buffer_usage = 3;255 optional int32 buffer_usage = 3;
256 optional Buffer buffer = 4;256 optional Buffer buffer = 4;
257 257
258 optional string error = 127;258 optional string error = 127;
259 optional StructuredError structured_error = 128;259 optional StructuredError structured_error = 128;
260}260}
@@ -269,9 +269,9 @@
269269
270 repeated sint32 fd = 7;270 repeated sint32 fd = 7;
271 optional int32 fds_on_side_channel = 8;271 optional int32 fds_on_side_channel = 8;
272 272
273 repeated SurfaceSetting attributes = 9;273 repeated SurfaceSetting attributes = 9;
274 274
275 optional BufferStream buffer_stream = 10;275 optional BufferStream buffer_stream = 10;
276276
277 optional string error = 127;277 optional string error = 127;
278278
=== modified file 'src/server/compositor/CMakeLists.txt'
--- src/server/compositor/CMakeLists.txt 2016-10-21 07:53:23 +0000
+++ src/server/compositor/CMakeLists.txt 2016-10-27 03:52:22 +0000
@@ -1,7 +1,7 @@
1include_directories(1include_directories(
2 ${PROJECT_SOURCE_DIR}/include/renderers/gl/2 ${PROJECT_SOURCE_DIR}/include/renderers/gl/
3 # TODO: This is a temporary dependency until renderers become proper plugins3 # TODO: This is a temporary dependency until renderers become proper plugins
4 ${PROJECT_SOURCE_DIR}/src/renderers/ 4 ${PROJECT_SOURCE_DIR}/src/renderers/
5)5)
66
7set(7set(
88
=== modified file 'src/server/compositor/buffer_map.cpp'
--- src/server/compositor/buffer_map.cpp 2016-10-11 07:12:33 +0000
+++ src/server/compositor/buffer_map.cpp 2016-10-27 03:52:22 +0000
@@ -70,7 +70,7 @@
70 auto it = checked_buffers_find(id, lk);70 auto it = checked_buffers_find(id, lk);
71 if (auto s = sink.lock())71 if (auto s = sink.lock())
72 s->remove_buffer(*it->second.buffer);72 s->remove_buffer(*it->second.buffer);
73 buffers.erase(it); 73 buffers.erase(it);
74}74}
7575
76void mc::BufferMap::send_buffer(mg::BufferID id)76void mc::BufferMap::send_buffer(mg::BufferID id)
7777
=== modified file 'src/server/compositor/buffer_map.h'
--- src/server/compositor/buffer_map.h 2016-10-11 07:12:33 +0000
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches