mutter/clutter/clutter
Sebastian Keller c86d8a23c3 clutter/actor: Don't write uninitialized out values on failed transform
clutter_actor_get_transformed_position() would write the uninitialized
values of v2 when clutter_actor_apply_transform_to_point() fails in
_clutter_actor_fully_transform_vertices() because the actor has not been
added to the stage yet.

When called from JS this would overwrite the zero initialized values
passed in from gjs. If the uninitialized values now happen to correspond
to one of the NaN float values used by mozjs to represent a pointer
type, this would lead to seemingly random crashes in mozjs code later
on.

Avoid this by using _clutter_actor_fully_transform_vertices() directly,
which allows us to check if it failed.

Related: https://gitlab.gnome.org/GNOME/gnome-shell-extensions/-/issues/469
Related: https://gitlab.gnome.org/GNOME/gjs/-/issues/591
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3453>
2023-12-15 15:08:22 +00:00
..
cally clutter/cleanup: Stop disabling deprecated API usage warnings 2023-11-15 13:12:13 +01:00
clutter-action-private.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-action.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-action.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-actor-box-private.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-actor-box.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-actor-meta-private.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-actor-meta.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-actor-meta.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-actor-private.h clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-actor.c clutter/actor: Don't write uninitialized out values on failed transform 2023-12-15 15:08:22 +00:00
clutter-actor.h clutter/actor: Allow specifying the layout manager for an actor type 2023-12-07 18:02:11 +00:00
clutter-align-constraint.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-align-constraint.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-animatable.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-animatable.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-autocleanups.h clutter: Remove unused Path related types 2023-12-13 11:20:04 +00:00
clutter-backend-private.h clutter/backend: Remove 'finish_init()' vfunc 2023-12-05 14:39:25 +00:00
clutter-backend.c context: Make ClutterContext a GObject and move to separate file 2023-12-05 14:39:25 +00:00
clutter-backend.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-base-types.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-bin-layout.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-bin-layout.h clutter/layout-manager: Consume Actors not Containers 2023-11-14 09:57:39 +00:00
clutter-bind-constraint.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-bind-constraint.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-binding-pool.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-binding-pool.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-blur-effect.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-blur-effect.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-blur-private.h clutter: Pass 'radius' to public blur APIs instead of 'sigma' 2023-12-14 18:12:55 +00:00
clutter-blur.c clutter: Pass 'radius' to public blur APIs instead of 'sigma' 2023-12-14 18:12:55 +00:00
clutter-box-layout.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-box-layout.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-brightness-contrast-effect.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-brightness-contrast-effect.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-canvas.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-canvas.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-click-action.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-click-action.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-clone.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-clone.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-color-state.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-color-state.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-color-static.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
clutter-color.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-color.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-colorize-effect.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-colorize-effect.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-constraint-private.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-constraint.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-constraint.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-content-private.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-content.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-content.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-context-private.h context: Make ClutterContext a GObject and move to separate file 2023-12-05 14:39:25 +00:00
clutter-context.c context: Make ClutterContext a GObject and move to separate file 2023-12-05 14:39:25 +00:00
clutter-context.h context: Make ClutterContext a GObject and move to separate file 2023-12-05 14:39:25 +00:00
clutter-damage-history.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-damage-history.h Port to MtkRegion 2023-11-03 11:27:52 +00:00
clutter-debug.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-deform-effect.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-deform-effect.h cogl/cleanup: Stop using CoglHandle 2023-10-29 21:16:24 +00:00
clutter-desaturate-effect.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-desaturate-effect.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-easing.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-easing.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-effect-private.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-effect.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-effect.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-enum-types.c.in build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-enum-types.h.in cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-enums.h clutter: Remove unused enums 2023-12-13 11:20:04 +00:00
clutter-event-private.h clutter: Add ClutterModifierSet argument to key event constructor 2023-11-08 08:07:41 +00:00
clutter-event.c context: Make ClutterContext a GObject and move to separate file 2023-12-05 14:39:25 +00:00
clutter-event.h clutter: Drop Event.get_source 2023-11-09 15:07:30 +00:00
clutter-feature.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-fixed-layout.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-fixed-layout.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-flatten-effect.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-flatten-effect.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-flow-layout.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-flow-layout.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-frame-clock.c clutter/frame-clock: Add output name to span descriptions 2023-12-06 16:12:58 +00:00
clutter-frame-clock.h clutter/frame-clock: Store output name 2023-12-06 16:12:58 +00:00
clutter-frame-private.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
clutter-frame.c clutter/frame: Add API to query minimal render time of a frame 2023-04-17 09:16:10 +00:00
clutter-frame.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
clutter-gesture-action.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-gesture-action.h clutter: Drop GestureAction.get_threshold_trigger_egde 2023-11-09 15:07:30 +00:00
clutter-grab.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
clutter-graphene.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-graphene.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
clutter-grid-layout.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-grid-layout.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-image.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-image.h clutter: Replace cairo_rectangle_int_t with MtkRectangle 2023-08-30 16:46:13 +02:00
clutter-input-device-private.h cleanup: Fix various typos 2023-08-12 20:13:37 +00:00
clutter-input-device-tool.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-input-device-tool.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-input-device.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-input-device.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-input-focus-private.h clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-input-focus.c clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-input-focus.h Update license access method 2023-08-30 08:48:23 +02:00
clutter-input-method-private.h clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-input-method.c clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-input-method.h Update license access method 2023-08-30 08:48:23 +02:00
clutter-input-only-action.c clutter/input-only-action: Don't override finalize with dispose 2023-11-20 12:10:52 +01:00
clutter-input-only-action.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
clutter-input-only-actor.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-input-only-actor.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
clutter-input-pointer-a11y-private.h Update license access method 2023-08-30 08:48:23 +02:00
clutter-input-pointer-a11y.c context: Make ClutterContext a GObject and move to separate file 2023-12-05 14:39:25 +00:00
clutter-interval.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-interval.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-keyframe-transition.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-keyframe-transition.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-keymap-private.h Update license access method 2023-08-30 08:48:23 +02:00
clutter-keymap.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-keymap.h Update license access method 2023-08-30 08:48:23 +02:00
clutter-keyname-table.h clutter: Generate keynames table 2022-12-22 15:13:54 +01:00
clutter-keysyms-table.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-keysyms-update.pl cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
clutter-keysyms.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
clutter-keyval.c clutter/keyval: Fix keyval_name() transfer annotation 2023-11-14 16:28:09 +00:00
clutter-keyval.h clutter/keyval: Fix keyval_name() transfer annotation 2023-11-14 16:28:09 +00:00
clutter-layout-manager.c clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-layout-manager.h clutter/layout-manager: Consume Actors not Containers 2023-11-14 09:57:39 +00:00
clutter-layout-meta.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-layout-meta.h clutter/layout-meta: Become one with ClutterChildMeta 2023-11-14 10:27:51 +00:00
clutter-macros.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
clutter-main.c clutter: Add trace spans to event handling 2023-12-06 16:12:57 +00:00
clutter-main.h clutter: Change clutter_do_event() name/signature 2023-08-08 03:58:42 +02:00
clutter-marshal.list clutter: Add va_marshallers for stage signals 2023-08-24 16:04:27 +00:00
clutter-mutter.h context: Make ClutterContext a GObject and move to separate file 2023-12-05 14:39:25 +00:00
clutter-offscreen-effect.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-offscreen-effect.h cogl/cleanup: Stop using CoglHandle 2023-10-29 21:16:24 +00:00
clutter-page-turn-effect.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-page-turn-effect.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-paint-context-private.h Port to MtkRegion 2023-11-03 11:27:52 +00:00
clutter-paint-context.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-paint-context.h Port to MtkRegion 2023-11-03 11:27:52 +00:00
clutter-paint-node-private.h clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-paint-node.c clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-paint-node.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-paint-nodes.c clutter: Pass 'radius' to public blur APIs instead of 'sigma' 2023-12-14 18:12:55 +00:00
clutter-paint-nodes.h clutter: Pass 'radius' to public blur APIs instead of 'sigma' 2023-12-14 18:12:55 +00:00
clutter-paint-volume-private.h clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-paint-volume.c clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-pan-action.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-pan-action.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-pick-context-private.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-pick-context.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-pick-context.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-pick-stack-private.h Port to MtkRegion 2023-11-03 11:27:52 +00:00
clutter-pick-stack.c clutter/pick-stack: Add an allocation check to calculate_clear_area () 2023-12-01 15:36:32 +00:00
clutter-private.h clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-property-transition.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-property-transition.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-rotate-action.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-rotate-action.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-scroll-actor.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-scroll-actor.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-seat-private.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
clutter-seat.c clutter: Drop remaining params nick/blurbs 2023-12-13 11:20:04 +00:00
clutter-seat.h cleanup: Switch to pragma once 2023-08-07 22:24:36 +00:00
clutter-settings-private.h clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-settings.c clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-settings.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-shader-effect.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-shader-effect.h cogl: Port Program away from CoglObject 2023-10-29 21:16:24 +00:00
clutter-shader-types.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-shader-types.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-snap-constraint.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-snap-constraint.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-stage-manager-private.h clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-stage-manager.c clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-stage-manager.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-stage-private.h clutter: Defer repick on transform changes 2023-11-17 20:24:41 +00:00
clutter-stage-view-private.h clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-stage-view.c clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-stage-view.h clutter/stage-view: Rename offscreen pipeline vfunc 2023-12-06 13:45:03 +00:00
clutter-stage-window.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-stage-window.h Remove unused _clutter_stage_window_set_title 2023-10-26 09:49:29 +00:00
clutter-stage.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-stage.h Port to MtkRegion 2023-11-03 11:27:52 +00:00
clutter-swipe-action.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-swipe-action.h clutter/swipe-action: Remove deprecated swept signal/vfunc 2023-11-09 16:42:24 +00:00
clutter-tap-action.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-tap-action.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-text-buffer.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-text-buffer.h Update license access method 2023-08-30 08:48:23 +02:00
clutter-text.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-text.h clutter/text: Remove deprecated prop/signal 2023-11-09 16:42:24 +00:00
clutter-texture-content.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-texture-content.h clutter: Replace cairo_rectangle_int_t with MtkRectangle 2023-08-30 16:46:13 +02:00
clutter-timeline-private.h clutter: Drop unused private functions/defines 2023-12-13 11:20:04 +00:00
clutter-timeline.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-timeline.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-transition-group.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-transition-group.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-transition.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-transition.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-types.h clutter: Remove unused Path related types 2023-12-13 11:20:04 +00:00
clutter-util.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-virtual-input-device.c clutter: Drop CLUTTER_PARAM_* defines 2023-12-13 11:20:04 +00:00
clutter-virtual-input-device.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter-zoom-action.c build: One config file to rule them all 2023-11-15 12:00:19 +00:00
clutter-zoom-action.h cleanup: Make include macro usages consistent 2023-08-07 22:24:36 +00:00
clutter.h clutter: Remove unused Path related types 2023-12-13 11:20:04 +00:00
gen-keyname-table.pl clutter: Generate keynames table 2022-12-22 15:13:54 +01:00
keynames.txt clutter: Generate keynames table 2022-12-22 15:13:54 +01:00
meson.build clutter: Remove unused Path related types 2023-12-13 11:20:04 +00:00