1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/src-openeuler-iSulad

В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
0159-bugfix-overwriting-when-i-is-len-1.patch 1.3 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Lu Jingxiao Отправлено 30.12.2024 15:45 ca9c755
From 9006b2901cb17b5cf0fa3579334ddb765ac3fe11 Mon Sep 17 00:00:00 2001
From: liuxu <liuxu156@huawei.com>
Date: Mon, 25 Nov 2024 19:42:02 +0800
Subject: [PATCH 01/19] bugfix:overwriting when i is len-1
Signed-off-by: liuxu <liuxu156@huawei.com>
---
src/daemon/modules/spec/specs.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/daemon/modules/spec/specs.c b/src/daemon/modules/spec/specs.c
index 36e89343..67a47257 100644
--- a/src/daemon/modules/spec/specs.c
+++ b/src/daemon/modules/spec/specs.c
@@ -2779,8 +2779,11 @@ void spec_remove_mount(oci_runtime_spec *oci_spec, const char *dest)
for (i = 0; i < oci_spec->mounts_len; i++) {
if (strcmp(oci_spec->mounts[i]->destination, dest) == 0) {
free_defs_mount(oci_spec->mounts[i]);
- (void)memcpy((void **)&oci_spec->mounts[i], (void **)&oci_spec->mounts[i + 1],
- (oci_spec->mounts_len - i - 1) * sizeof(void *));
+ oci_spec->mounts[i] = NULL;
+ if (i != oci_spec->mounts_len - 1) {
+ (void)memcpy((void **)&oci_spec->mounts[i], (void **)&oci_spec->mounts[i + 1],
+ (oci_spec->mounts_len - i - 1) * sizeof(void *));
+ }
oci_spec->mounts_len--;
return;
}
--
2.23.0

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/src-openeuler-iSulad.git
git@api.gitlife.ru:oschina-mirror/src-openeuler-iSulad.git
oschina-mirror
src-openeuler-iSulad
src-openeuler-iSulad
master