mirror of
https://github.com/postgres/postgres.git
synced 2025-04-29 13:56:47 +03:00
waldump: fix use-after-free in search_directory().
After closedir() dirent->d_name is not valid anymore. As there alerady are a few places relying on the limited lifetime of pg_waldump, do so here as well, and just pg_strdup() the string. The bug was introduced in fc49e24fa69a. Found by UBSan, run locally. Backpatch: 11-, like fc49e24fa69 itself.
This commit is contained in:
parent
3f7a59c59b
commit
6839aa7a69
@ -177,7 +177,7 @@ search_directory(const char *directory, const char *fname)
|
||||
if (IsXLogFileName(xlde->d_name))
|
||||
{
|
||||
fd = open_file_in_directory(directory, xlde->d_name);
|
||||
fname = xlde->d_name;
|
||||
fname = pg_strdup(xlde->d_name);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user