Ilias Apalodimas
ad53505a48
efi_loader: Fix a memory leak when retrieving device paths from boot vars
...
get_dp_device() is used to derive the device path from a boot variable.
However, if the last efi_get_variable_int() call fails, we return an
error without freeing 'buf'.
There's no need to call efi_get_variable_int() for variables we don't
know the size since we have the efi_get_var() wrapper.
Replace that in the two instances we use it. The first one will also
fix the memory leak.
A nice sideeffect is that the code size is also reduced, since we are
re-using functions instead of open coding them
$~ bloat-o-meter u-boot u-boot.new
add/remove: 0/0 grow/shrink: 1/2 up/down: 6/-196 (-190)
Function old new delta
version_string 70 76 +6
efi_launch_capsules 2288 2196 -92
get_dp_device 244 140 -104
Total: Before=1222331, After=1222141, chg -0.02%
Fixes: c74cd8bd08d1 ("efi_loader: capsule: add capsule_on_disk support")
Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2025-12-06 11:43:28 +01:00
..
2025-11-06 08:30:33 -06:00
2025-04-11 12:16:44 -06:00
2023-12-21 08:54:37 -05:00
2024-07-15 12:12:18 -06:00
2024-07-15 12:12:18 -06:00
2024-07-15 12:12:18 -06:00
2025-04-11 12:16:44 -06:00
2024-07-15 12:12:18 -06:00
2025-07-14 15:16:45 -06:00
2025-07-26 07:34:31 +02:00
2025-11-15 11:36:50 +01:00
2025-11-06 23:26:28 +01:00
2025-12-06 11:43:28 +01:00
2025-11-15 11:45:29 +01:00
2025-10-09 09:07:04 +02:00
2024-07-15 12:12:18 -06:00
2024-10-11 11:44:48 -06:00
2025-09-30 12:01:36 +02:00
2024-07-15 12:12:18 -06:00
2024-07-15 12:12:18 -06:00
2025-06-14 09:09:40 -06:00
2025-11-18 15:54:03 -06:00
2025-11-06 17:32:33 -06:00
2025-04-08 16:23:51 -06:00
2024-07-15 12:12:18 -06:00
2020-01-22 17:47:57 -05:00
2025-05-30 09:49:31 +01:00
2023-12-21 08:54:37 -05:00
2023-12-21 08:54:37 -05:00
2024-11-03 21:27:12 -06:00
2024-08-26 14:06:08 -06:00
2023-09-24 09:54:57 -04:00
2023-12-21 08:54:37 -05:00
2025-05-27 10:07:36 +01:00
2024-04-20 08:22:24 +02:00
2024-07-15 12:12:18 -06:00
2024-07-15 12:12:18 -06:00
2025-02-03 16:01:36 -06:00
2023-12-21 08:54:37 -05:00
2022-04-21 14:32:40 -04:00
2023-12-21 08:54:37 -05:00
2023-12-21 08:54:37 -05:00
2023-12-21 08:54:37 -05:00
2024-10-11 11:44:48 -06:00
2020-05-18 21:19:23 -04:00
2024-08-27 18:01:21 -06:00
2023-12-21 08:54:37 -05:00
2021-05-24 14:21:30 -04:00
2021-04-14 15:06:08 -04:00
2023-12-21 08:54:37 -05:00
2023-12-21 08:54:37 -05:00
2025-04-28 10:13:19 -06:00
2025-10-09 13:50:40 -06:00
2023-12-21 08:54:37 -05:00
2025-05-05 14:16:57 -06:00
2024-07-05 13:57:02 -06:00
2024-10-11 11:44:48 -06:00
2023-12-21 08:54:37 -05:00
2024-12-07 09:07:45 -03:00
2024-10-11 11:44:48 -06:00
2024-02-09 09:42:04 +01:00
2025-10-09 13:50:40 -06:00
2023-12-21 08:54:37 -05:00
2025-05-16 06:21:36 +02:00
2023-12-21 08:54:37 -05:00
2025-07-22 11:29:33 -06:00
2025-02-03 16:01:36 -06:00
2025-10-10 14:25:33 -06:00
2025-10-22 11:09:24 +02:00
2024-12-06 17:47:23 -06:00
2025-04-03 16:54:49 -06:00
2024-11-18 16:12:35 +01:00
2025-05-30 09:49:31 +01:00
2019-12-06 16:44:20 -05:00
2023-12-21 08:54:37 -05:00
2023-12-21 08:54:37 -05:00
2023-12-21 08:54:37 -05:00
2023-12-21 08:54:37 -05:00
2021-06-11 16:34:52 +05:30
2023-12-21 08:54:37 -05:00
2023-12-21 08:54:37 -05:00
2023-12-21 08:54:37 -05:00
2024-12-06 17:47:23 -06:00
2025-01-18 17:12:47 -06:00
2025-01-18 17:12:47 -06:00
2024-12-06 17:47:23 -06:00
2025-05-29 08:25:18 -06:00
2024-02-02 19:57:45 +01:00
2025-04-24 08:23:02 -06:00
2020-08-24 14:11:31 -04:00
2025-02-12 12:37:12 -06:00
2024-11-13 08:14:23 -06:00
2024-01-09 10:08:52 +01:00
2025-04-23 13:19:44 -06:00
2025-05-22 10:57:12 -06:00
2025-01-28 08:58:41 +02:00
2025-01-28 09:09:32 +02:00
2023-12-21 08:54:37 -05:00
2022-01-19 18:11:34 +01:00
2024-10-14 17:58:30 -06:00
2025-07-01 08:46:38 +03:00
2025-06-13 16:57:15 -06:00
2025-04-23 13:19:44 -06:00
2025-10-18 12:00:16 +02:00
2024-11-13 08:16:41 -06:00
2019-05-05 08:48:50 -04:00