On 24/10/20 11:14, Sunil Muthuswamy wrote: > With upstream commit#ea1edcd7da1a "vl: relocate paths to data > directories", the data dir logic was unified between POSIX & > Win32. That patch moved to using 'get_relocated_path()', to > find the data dir. There is a latent bug in get_relocated_path > which can cause it to spin indefinitely, when the bind dir is > the same as the passed in dir (in this case, it was the data > dir). > > Signed-off-by: Sunil Muthuswamy <sunil...@microsoft.com> > --- > util/cutils.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/util/cutils.c b/util/cutils.c > index be4e43a9ef..c395974fab 100644 > --- a/util/cutils.c > +++ b/util/cutils.c > @@ -949,7 +949,7 @@ char *get_relocated_path(const char *dir) > bindir += len_bindir; > dir = next_component(dir, &len_dir); > bindir = next_component(bindir, &len_bindir); > - } while (len_dir == len_bindir && !memcmp(dir, bindir, len_dir)); > + } while (len_dir && len_dir == len_bindir && !memcmp(dir, bindir, > len_dir)); > > /* Ascend from bindir to the common prefix with dir. */ > while (len_bindir) { >
Queued, thanks. Paolo