Skip to content

Commit 1a6ad18

Browse files
authored
Merge pull request #2383 from pbalcer/fix-link-use-after-free
[L0] fix use-after-free in urProgramLinkExp
2 parents c2d177c + eb2c3ce commit 1a6ad18

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

source/adapters/level_zero/program.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -452,9 +452,11 @@ ur_result_t urProgramLinkExp(
452452
// Build flags may be different for different devices, so handle them
453453
// here. Clear values of the previous device first.
454454
BuildFlagPtrs.clear();
455+
std::vector<std::string> TemporaryOptionsStrings;
455456
for (uint32_t I = 0; I < count; I++) {
456-
BuildFlagPtrs.push_back(
457-
phPrograms[I]->getBuildOptions(ZeDevice).c_str());
457+
TemporaryOptionsStrings.push_back(
458+
phPrograms[I]->getBuildOptions(ZeDevice));
459+
BuildFlagPtrs.push_back(TemporaryOptionsStrings.back().c_str());
458460
}
459461
ZeExtModuleDesc.pBuildFlags = BuildFlagPtrs.data();
460462
if (count == 1)

0 commit comments

Comments
 (0)