Skip to content

Commit c9685d5

Browse files
[arcane,core] Corrige possible 'Read after free' dans 'ParallelMngDispatcher::setDefaultRunner()'.
1 parent 0bccef7 commit c9685d5

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

arcane/src/arcane/core/ParallelMngDispatcher.cc

+7-2
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
22
//-----------------------------------------------------------------------------
3-
// Copyright 2000-2024 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
3+
// Copyright 2000-2025 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
44
// See the top-level COPYRIGHT file for details.
55
// SPDX-License-Identifier: Apache-2.0
66
//-----------------------------------------------------------------------------
77
/*---------------------------------------------------------------------------*/
8-
/* ParallelMngDispatcher.cc (C) 2000-2024 */
8+
/* ParallelMngDispatcher.cc (C) 2000-2025 */
99
/* */
1010
/* Redirection de la gestion des messages suivant le type des arguments. */
1111
/*---------------------------------------------------------------------------*/
@@ -253,6 +253,11 @@ class ParallelMngDispatcher::Impl
253253
if (!m_runner.isInitialized())
254254
ARCANE_FATAL("Can not set an unitialized Runner");
255255

256+
// Attention à bien supprimer la référence sur la RunQueue
257+
// avant de détruire le Runner car s'il n'y a pas d'autres
258+
// références sur \a m_runner il sera détruit avec \a m_queue
259+
// et ce dernier aura un \a m_runner détruit.
260+
m_queue = RunQueue{};
256261
m_runner = runner;
257262
Accelerator::RunQueueBuildInfo build_info(-5);
258263
m_queue = makeQueue(m_runner,build_info);

0 commit comments

Comments
 (0)