Bogdan Lisman
1168447626
avcodec/snowenc: fix out-of-bounds memcpy in get_block_rd() for narrow planes
...
For an edge block, get_block_rd() copies the full-OBMC-weight central
region directly from cur[] into the reconstruction. It moved one
boundary to block_w/block_h but overwrote the in-plane clip (x0/x1/y0/y1
computed earlier from the plane size) instead of intersecting with it.
When a plane is narrower than block_w - e.g. a tiny field/chroma plane
produced by the mcdeint filter - the right-edge case left x0 = block_w
while x1 stayed clipped to w - sx < block_w, so x1 - x0 became negative
and was passed to memcpy() as a huge size_t, crashing with SIGSEGV.
Intersect the moved boundaries with the existing clip so the copy region
stays inside the plane and the memcpy length can never be negative.
Reproducible with the GPL mcdeint filter in slow/extra_slow mode, e.g.
ffmpeg -f lavfi -i testsrc=s=5x32 -vf mcdeint=mode=slow -f null -
This is a separate crash from the get_dc() SIGFPE (ticket #7779 ) reached
through the same iterative_me() path. Add a lavfi-based FATE regression
test.
Signed-off-by: Bogdan Lisman <bogdan@pydevsolutions.com >
2026-06-15 19:33:25 +00:00
..
2026-06-15 17:45:16 +08:00
2026-06-10 18:03:01 +00:00
2026-06-13 21:32:07 -03:00
2026-06-13 05:48:44 +00:00
2026-06-13 12:08:10 +02:00
2026-06-14 03:10:29 +00:00
2026-06-12 15:11:53 +02:00
2026-06-03 14:12:50 +09:00
2026-06-02 19:50:39 -03:00
2026-06-14 22:04:42 +02:00
2025-09-02 16:05:46 +02:00
2024-05-20 11:58:07 +02:00
2025-08-03 13:48:47 +02:00
2022-08-05 03:28:45 +02:00
2025-07-15 16:27:31 +09:00
2026-06-15 11:19:58 -03:00
2026-06-04 19:17:43 +00:00
2026-05-28 00:04:06 -03:00
2026-05-28 00:04:06 -03:00
2026-05-20 10:59:02 -03:00
2023-10-31 21:44:48 +01:00
2015-07-22 21:51:22 +02:00
2023-10-31 21:44:48 +01:00
2015-07-22 21:51:28 +02:00
2025-10-25 01:01:14 +02:00
2024-04-23 08:31:40 +02:00
2025-04-13 22:49:21 +02:00
2025-04-13 22:49:21 +02:00
2014-06-15 12:11:46 +02:00
2022-09-03 15:42:57 +02:00
2022-01-04 13:16:49 +01:00
2025-06-02 13:37:41 +02:00
2025-03-10 00:57:23 +01:00
2025-03-10 00:57:23 +01:00
2016-02-24 17:31:44 +00:00
2025-09-13 20:37:03 +00:00
2021-02-24 08:57:17 +01:00
2026-06-07 02:57:25 +00:00
2025-08-20 11:20:11 +02:00
2026-06-11 14:06:20 +00:00
2024-05-20 12:06:31 +02:00
2022-09-16 11:14:32 +02:00
2026-02-11 12:07:35 +01:00
2026-06-12 00:47:12 +00:00
2025-11-01 16:57:03 +01:00
2024-08-14 18:21:01 +02:00
2022-03-15 09:42:40 -03:00
2024-03-31 00:08:43 +01:00
2025-11-30 22:20:13 +01:00
2025-03-10 00:57:23 +01:00
2026-06-12 15:11:53 +02:00
2026-03-31 14:07:31 +00:00
2026-03-31 14:07:31 +00:00
2026-04-07 14:54:21 +00:00
2026-03-11 10:23:35 +01:00
2026-02-11 12:07:35 +01:00
2026-02-11 12:07:35 +01:00
2024-11-11 16:10:15 -03:00
2025-03-10 00:57:23 +01:00
2025-03-10 00:57:23 +01:00
2026-05-19 17:43:53 +09:00
2025-04-27 15:52:30 +01:00
2026-04-28 12:29:37 +00:00
2025-08-03 13:48:47 +02:00
2026-02-11 12:07:35 +01:00
2020-12-08 17:51:47 +01:00
2022-11-06 14:39:40 +01:00
2026-05-25 03:18:53 +00:00
2021-07-22 15:29:46 +02:00
2020-08-15 13:01:25 -03:00
2023-05-17 19:38:45 +00:00
2026-06-02 19:50:39 -03:00
2026-05-16 13:55:22 -03:00
2022-11-06 12:15:56 -03:00
2025-11-01 16:57:03 +01:00
2026-04-28 12:29:37 +00:00
2024-03-15 12:51:15 +01:00
2025-11-12 14:50:21 +01:00
2025-03-10 00:57:23 +01:00
2026-05-31 16:58:23 +02:00
2025-11-30 22:20:13 +01:00
2022-09-03 15:42:57 +02:00
2025-03-28 14:33:08 -03:00
2025-03-28 14:33:08 -03:00
2022-10-17 09:56:47 +02:00
2026-03-15 19:27:07 -03:00
2026-04-28 12:29:37 +00:00
2022-02-24 12:56:49 +01:00
2026-06-14 22:04:42 +02:00
2025-09-04 10:15:09 +02:00
2026-06-15 17:10:52 +00:00
2025-03-25 20:38:29 -03:00
2026-05-08 09:35:38 +02:00
2024-06-28 13:16:57 -03:00
2026-06-12 00:43:44 +00:00
2026-06-12 00:43:44 +00:00
2026-06-12 00:43:44 +00:00
2026-06-13 15:57:19 +00:00
2026-02-28 16:12:33 -03:00
2025-10-25 01:01:15 +02:00
2026-04-28 12:24:54 +00:00
2026-02-28 16:12:33 -03:00
2026-02-24 10:32:20 -03:00
2026-02-24 10:32:20 -03:00
2025-10-27 13:44:03 +00:00
2026-05-08 09:35:38 +02:00
2025-09-13 20:37:03 +00:00
2025-09-13 20:37:03 +00:00
2026-02-18 23:45:28 +00:00
2025-11-30 22:20:13 +01:00
2026-02-18 23:45:28 +00:00
2025-11-30 22:20:13 +01:00
2012-10-01 22:24:17 +02:00
2025-03-28 14:33:08 -03:00
2024-03-31 00:08:43 +01:00
2025-03-10 00:57:23 +01:00
2026-06-10 10:08:39 -05:00
2026-06-10 11:59:35 +00:00
2025-09-02 17:06:24 +02:00
2026-04-28 14:31:19 +02:00
2025-03-28 14:33:06 -03:00
2023-05-04 18:48:22 -03:00
2026-06-03 20:35:41 +00:00
2025-07-25 21:10:16 +02:00
2026-06-13 11:21:14 +00:00
2026-06-13 11:21:14 +00:00
2026-02-25 08:47:14 +00:00
2026-02-25 08:47:14 +00:00
2025-03-17 08:51:23 +01:00
2025-03-17 08:51:23 +01:00
2026-04-28 12:29:37 +00:00
2022-01-04 13:16:49 +01:00
2022-01-04 13:16:49 +01:00
2023-03-02 13:46:04 +01:00
2026-02-05 18:12:46 +01:00
2022-01-04 13:16:49 +01:00
2024-03-31 00:08:43 +01:00
2017-07-18 21:04:55 -03:00
2026-06-07 10:24:42 -03:00
2026-04-27 20:13:23 +00:00
2022-09-16 18:07:29 +02:00
2017-05-22 02:16:39 +02:00
2026-06-11 17:28:14 -03:00
2026-06-05 03:02:04 +00:00
2025-03-28 14:33:08 -03:00
2024-03-17 15:10:05 +01:00
2024-03-31 00:08:43 +01:00
2026-06-03 23:37:46 +00:00
2025-03-26 04:08:33 +01:00
2025-11-01 16:57:03 +01:00
2025-11-01 16:57:03 +01:00
2025-11-01 16:57:03 +01:00
2026-04-28 12:29:37 +00:00
2024-04-07 21:59:32 +02:00
2023-05-02 10:57:21 +02:00
2025-11-01 16:57:03 +01:00
2025-11-08 18:48:54 +01:00
2026-03-22 00:33:26 +00:00
2025-12-03 11:52:54 +01:00
2026-04-28 12:29:37 +00:00
2025-03-17 08:51:23 +01:00
2024-10-02 17:28:30 +02:00
2025-03-28 14:33:07 -03:00
2025-06-08 18:39:17 -03:00
2025-05-21 12:02:25 +02:00
2024-03-31 00:08:43 +01:00
2026-05-16 13:55:22 -03:00
2026-02-17 20:17:23 -03:00
2026-04-09 01:14:39 +02:00
2023-11-10 00:15:28 +01:00
2025-08-03 13:48:47 +02:00
2025-08-03 13:48:47 +02:00
2025-08-03 13:48:47 +02:00
2025-09-13 20:37:03 +00:00
2026-06-05 03:02:04 +00:00
2026-05-01 07:40:25 -04:00
2026-06-05 03:02:04 +00:00
2026-06-06 21:32:08 +00:00
2024-03-23 11:37:44 +01:00
2026-05-31 20:04:02 +09:00
2026-06-03 14:12:50 +09:00
2026-06-03 14:12:50 +09:00
2026-05-31 20:04:02 +09:00
2025-08-03 13:19:25 +00:00
2025-11-01 16:57:03 +01:00
2022-02-08 06:16:26 +01:00
2025-03-10 00:57:23 +01:00
2026-04-28 12:29:37 +00:00
2025-11-30 22:20:13 +01:00
2022-08-05 03:28:45 +02:00
2025-03-28 14:33:07 -03:00
2025-03-28 14:33:08 -03:00
2025-07-03 20:35:31 +02:00
2025-07-03 20:35:31 +02:00
2021-08-17 10:34:10 +02:00
2024-05-19 11:40:07 +02:00
2025-09-13 20:37:03 +00:00
2021-07-22 15:29:46 +02:00
2025-11-30 22:20:13 +01:00
2023-08-24 21:07:18 +03:00
2025-03-10 00:57:23 +01:00
2025-11-01 16:57:03 +01:00
2021-07-22 15:29:46 +02:00
2025-10-30 03:41:24 +01:00
2026-04-28 12:29:37 +00:00
2025-03-28 14:33:08 -03:00
2025-11-01 16:57:03 +01:00
2024-03-31 00:08:43 +01:00
2022-02-24 12:56:49 +01:00
2025-09-13 20:37:03 +00:00
2025-11-01 16:57:03 +01:00
2026-01-02 18:39:48 +01:00
2025-11-01 16:57:03 +01:00
2024-05-22 19:15:39 +03:00
2025-07-03 20:34:51 +02:00
2026-01-25 22:53:25 +01:00
2025-09-26 16:15:46 +00:00
2024-08-19 20:23:20 -03:00
2025-08-03 13:48:47 +02:00
2026-06-07 18:55:16 +00:00
2026-06-02 19:50:39 -03:00
2026-06-02 19:50:39 -03:00
2026-01-25 22:53:25 +01:00
2025-09-26 16:15:46 +00:00
2025-11-30 22:20:13 +01:00
2026-03-15 19:20:06 -03:00
2026-06-02 19:50:39 -03:00
2026-06-02 19:50:39 -03:00
2026-06-07 18:55:16 +00:00
2022-12-01 11:00:41 +01:00
2022-08-19 22:09:36 +02:00
2026-02-26 11:40:09 +08:00
2026-02-11 12:07:35 +01:00
2025-11-01 16:57:03 +01:00
2026-05-13 19:35:33 +00:00
2025-09-26 06:20:56 +02:00
2025-04-13 08:21:29 +02:00
2025-04-13 08:21:29 +02:00
2025-09-26 16:15:46 +00:00
2025-01-21 22:55:10 +01:00
2024-09-17 21:11:06 +02:00
2024-12-23 04:24:54 +09:00
2026-06-03 20:35:41 +00:00
2026-04-28 12:29:37 +00:00
2026-04-28 12:29:37 +00:00
2025-07-03 20:35:32 +02:00
2025-03-28 14:33:08 -03:00
2026-01-02 18:39:48 +01:00
2026-01-02 18:39:48 +01:00
2026-06-15 15:35:07 +00:00
2026-06-02 19:50:39 -03:00
2025-11-24 16:48:31 +01:00
2024-03-23 11:34:34 +01:00
2025-11-01 16:57:03 +01:00
2024-08-10 09:22:44 -07:00
2026-02-20 16:32:10 +01:00
2026-06-13 21:40:40 +00:00
2022-10-26 20:30:25 +11:00
2022-10-18 15:44:29 +02:00
2025-12-13 18:45:17 -03:00
2024-03-07 08:53:31 -03:00
2025-03-28 14:33:08 -03:00
2026-04-28 12:29:37 +00:00
2023-10-01 01:02:53 +02:00
2025-11-01 16:57:03 +01:00
2026-04-06 14:07:59 -03:00
2026-06-11 17:28:14 -03:00
2026-06-11 17:28:14 -03:00
2026-04-28 12:29:37 +00:00
2022-08-02 09:56:27 -03:00
2026-06-02 19:50:39 -03:00
2026-02-11 12:07:38 +01:00
2026-06-02 19:50:39 -03:00
2024-02-09 08:16:25 +01:00
2026-02-17 20:17:23 -03:00
2024-01-25 11:07:28 -05:00
2025-11-07 17:54:10 +00:00
2026-02-12 09:59:54 -03:00
2026-02-17 20:17:23 -03:00
2025-09-26 05:38:46 +02:00
2026-06-07 17:53:44 +02:00
2025-03-10 00:57:23 +01:00
2025-03-10 00:57:23 +01:00
2026-02-12 09:59:54 -03:00
2026-05-03 18:22:56 +02:00
2025-03-28 14:33:07 -03:00
2025-09-04 07:01:13 -04:00
2026-02-21 22:43:41 +00:00
2025-03-28 14:33:08 -03:00
2026-02-18 23:38:16 +00:00
2026-05-30 13:10:07 +02:00
2026-02-15 20:28:31 +01:00
2025-03-28 14:33:07 -03:00
2026-05-03 18:23:00 +02:00
2025-11-07 17:54:10 +00:00
2026-05-03 18:23:03 +02:00
2025-03-10 04:51:57 +01:00
2025-11-12 14:40:14 -05:00
2025-11-30 22:20:13 +01:00
2025-12-14 10:16:25 +01:00
2025-06-23 17:11:09 +10:00
2025-03-17 04:33:11 +01:00
2025-04-09 13:52:29 +02:00
2025-04-09 13:52:29 +02:00
2021-07-22 15:29:46 +02:00
2024-05-19 11:40:07 +02:00
2026-05-25 02:05:30 +00:00
2026-06-11 14:06:20 +00:00
2025-06-21 22:08:52 +02:00
2025-11-30 22:20:13 +01:00
2024-11-20 19:23:13 +08:00
2026-03-20 04:40:06 +00:00
2026-02-11 12:07:35 +01:00
2024-10-09 16:30:37 +03:00
2026-01-17 12:02:31 -03:00
2026-06-13 15:55:40 +00:00
2025-12-30 17:30:45 +00:00
2026-06-13 21:40:40 +00:00
2026-06-13 21:40:40 +00:00
2025-12-03 11:52:54 +01:00
2026-03-07 20:14:36 +01:00
2023-12-21 22:42:34 +02:00
2025-09-13 20:37:03 +00:00
2026-03-10 13:52:19 +01:00
2026-02-11 12:07:35 +01:00
2023-09-07 00:42:10 +02:00
2025-04-13 22:49:21 +02:00
2025-06-21 22:08:52 +02:00
2025-12-03 10:20:41 +01:00
2022-10-27 15:44:38 +02:00
2026-06-14 22:04:42 +02:00
2017-10-17 20:56:30 +01:00
2022-01-04 13:16:50 +01:00
2026-03-10 13:52:18 +01:00
2015-11-14 10:58:39 -05:00
2025-12-03 11:52:54 +01:00
2025-03-07 15:19:02 +01:00
2026-05-03 18:22:31 +02:00
2026-05-03 18:22:27 +02:00
2025-11-01 16:57:03 +01:00
2025-12-07 20:20:38 +02:00
2021-05-12 06:00:14 +02:00
2026-01-02 18:39:48 +01:00
2025-03-26 03:39:01 +01:00
2026-01-02 18:39:48 +01:00
2026-01-02 18:39:48 +01:00
2025-09-13 20:37:03 +00:00
2025-03-28 14:33:08 -03:00
2024-03-31 00:08:43 +01:00
2025-03-28 14:33:08 -03:00
2025-03-10 00:57:23 +01:00
2025-09-13 20:37:03 +00:00
2026-06-05 01:27:39 +00:00
2025-08-03 13:48:47 +02:00
2025-03-10 00:57:23 +01:00
2025-03-28 14:33:08 -03:00
2025-03-28 14:33:08 -03:00
2025-07-03 20:35:31 +02:00
2025-03-28 14:33:08 -03:00
2026-06-15 18:14:39 +02:00
2026-03-10 15:08:16 +00:00
2026-01-27 12:58:46 +00:00
2026-06-15 18:14:39 +02:00
2026-06-15 18:14:39 +02:00
2025-07-18 14:45:13 +08:00
2026-01-19 20:47:22 +00:00
2026-06-10 02:15:53 +00:00
2026-06-10 12:34:38 +00:00
2026-02-11 12:07:35 +01:00
2026-05-30 17:37:28 +00:00
2025-11-01 18:41:27 +01:00
2026-03-07 19:21:44 -03:00
2026-03-07 19:22:40 -03:00
2025-09-06 15:11:48 +00:00
2026-02-11 12:07:35 +01:00
2026-05-16 13:55:22 -03:00
2025-10-07 18:06:40 +02:00
2025-08-03 13:48:47 +02:00
2025-11-30 22:20:13 +01:00
2025-11-01 16:57:03 +01:00
2026-05-25 15:09:20 +00:00
2026-02-04 12:05:35 +08:00
2026-02-04 12:05:35 +08:00
2026-01-11 00:47:17 +00:00
2023-11-09 12:53:35 +01:00
2026-03-06 02:33:59 +01:00
2025-08-08 01:06:11 +09:00
2025-08-08 01:06:11 +09:00
2026-05-17 12:17:16 +09:00
2026-06-10 02:38:36 +09:00
2026-05-17 12:02:52 +09:00
2024-01-10 14:08:00 +01:00
2025-10-25 22:34:30 +02:00
2025-08-02 06:11:39 +00:00
2026-03-05 14:02:39 +00:00
2025-06-06 17:21:31 +02:00
2025-03-12 17:00:24 +01:00
2025-10-25 01:01:15 +02:00
2025-08-05 03:27:54 +02:00
2023-09-11 00:27:45 +02:00
2024-12-15 14:03:47 +01:00
2026-03-28 22:07:54 -03:00
2025-03-10 00:57:23 +01:00
2022-02-24 12:56:49 +01:00
2026-02-09 17:36:40 +00:00
2025-03-28 14:33:31 -03:00
2026-03-10 13:52:19 +01:00
2025-09-14 21:35:54 +08:00
2025-11-27 15:54:49 +08:00
2023-10-01 01:02:53 +02:00
2025-03-10 00:57:23 +01:00
2026-06-13 15:54:44 +00:00
2026-03-07 20:14:36 +01:00
2025-07-03 20:34:51 +02:00
2021-07-22 15:29:46 +02:00
2026-06-13 15:54:44 +00:00
2025-11-30 22:20:13 +01:00
2025-07-03 20:35:31 +02:00
2024-11-03 10:53:15 +11:00
2026-02-19 22:39:35 +00:00
2024-11-03 10:53:15 +11:00
2025-09-13 20:37:03 +00:00
2026-06-13 22:03:59 +00:00
2026-03-28 11:25:38 +01:00
2026-03-28 11:25:38 +01:00
2026-03-28 11:25:38 +01:00
2026-04-17 16:46:52 +02:00
2025-08-11 11:54:31 +02:00
2026-04-28 12:29:37 +00:00
2026-04-28 12:29:37 +00:00
2026-02-11 12:07:35 +01:00
2025-02-27 15:30:12 +01:00
2025-02-27 15:30:12 +01:00
2025-11-01 16:57:03 +01:00
2024-03-31 00:08:43 +01:00
2025-03-28 14:33:08 -03:00
2025-08-08 03:04:42 -07:00
2026-04-13 12:51:35 +02:00
2026-04-13 12:51:35 +02:00
2026-04-13 12:46:24 +02:00
2026-06-15 19:33:25 +00:00
2025-07-19 00:36:25 +02:00
2025-07-03 23:05:14 +02:00
2026-04-28 12:29:37 +00:00
2025-11-30 22:20:13 +01:00
2026-01-25 22:53:25 +01:00
2025-11-30 22:20:13 +01:00
2025-12-05 11:31:23 +01:00
2025-11-30 22:20:13 +01:00
2025-03-10 00:57:23 +01:00
2026-06-03 20:35:41 +00:00
2026-04-28 12:29:37 +00:00
2025-03-02 18:43:53 +01:00
2024-05-19 11:40:07 +02:00
2026-06-11 13:58:45 +00:00
2024-03-31 00:08:43 +01:00
2025-03-28 14:33:08 -03:00
2022-02-08 06:16:26 +01:00
2021-01-08 05:05:10 +01:00
2026-02-11 12:07:35 +01:00
2018-10-07 03:03:09 +02:00
2026-06-04 19:44:02 +00:00
2026-03-10 13:52:18 +01:00
2025-08-03 13:48:47 +02:00
2025-09-13 20:37:03 +00:00
2025-03-10 00:57:23 +01:00
2026-05-01 23:59:06 +00:00
2025-03-10 00:57:23 +01:00
2026-04-28 12:29:37 +00:00
2026-04-28 12:29:37 +00:00
2025-08-03 13:48:47 +02:00
2025-03-10 00:57:23 +01:00
2025-06-21 22:08:52 +02:00
2025-11-01 16:57:03 +01:00
2025-07-03 20:34:51 +02:00
2026-01-17 17:56:06 -03:00
2026-06-03 10:41:08 +00:00
2026-06-06 19:07:39 +00:00
2025-08-03 13:48:47 +02:00
2026-04-28 12:29:37 +00:00
2026-05-03 18:22:07 +02:00
2026-04-28 12:29:37 +00:00
2026-06-02 20:06:00 -03:00
2026-03-19 14:44:40 +01:00
2024-03-07 08:53:30 -03:00
2026-04-28 12:29:37 +00:00
2025-08-20 11:20:14 +02:00
2025-03-17 03:26:07 +01:00
2026-04-28 12:29:37 +00:00
2025-05-31 03:18:26 +02:00
2025-11-30 22:20:13 +01:00
2026-06-14 22:04:42 +02:00
2024-10-31 17:49:48 +11:00
2025-11-01 16:57:03 +01:00
2026-04-28 12:29:37 +00:00
2023-11-15 10:29:03 -05:00
2026-04-14 01:42:53 +00:00
2024-07-29 21:16:41 +03:00
2022-07-28 03:49:54 +02:00
2025-08-08 18:29:39 +09:00
2025-11-27 12:10:29 +01:00
2025-11-27 12:10:29 +01:00
2025-09-26 16:15:46 +00:00
2026-05-19 17:43:53 +09:00
2026-05-19 17:43:53 +09:00
2025-12-03 11:52:54 +01:00
2025-12-03 11:52:54 +01:00
2026-05-12 11:28:09 +00:00
2026-05-12 09:14:34 +00:00
2026-06-03 14:12:50 +09:00
2026-05-17 12:17:16 +09:00
2026-05-09 11:44:39 -03:00
2025-05-17 09:22:40 +08:00
2025-09-13 20:37:03 +00:00
2026-04-28 12:29:37 +00:00
2025-09-15 17:52:21 +02:00
2025-11-01 16:57:03 +01:00
2026-05-19 11:36:10 +02:00
2025-08-04 09:12:17 +00:00
2025-07-03 20:21:55 +02:00
2023-10-31 21:44:48 +01:00
2026-04-28 12:29:37 +00:00
2026-02-11 12:07:35 +01:00
2025-03-28 14:33:08 -03:00
2026-01-02 18:39:48 +01:00
2026-03-13 23:22:54 +01:00
2026-01-02 18:39:48 +01:00
2026-01-02 18:39:48 +01:00
2024-05-19 11:40:07 +02:00
2024-02-09 08:16:25 +01:00
2025-03-10 00:57:23 +01:00
2025-11-01 16:57:03 +01:00
2024-05-19 11:40:07 +02:00
2025-11-30 22:20:13 +01:00
2026-03-16 10:24:33 +00:00
2025-03-28 14:33:08 -03:00
2025-09-13 20:37:03 +00:00
2022-03-19 00:18:36 +01:00
2026-05-03 13:22:37 +00:00
2025-03-10 00:57:23 +01:00