diff --git a/ldso/dynlink.c b/ldso/dynlink.c index 3380240..f507bc4 100644 --- a/ldso/dynlink.c +++ b/ldso/dynlink.c @@ -807,7 +807,12 @@ static int fixup_rpath(struct dso *p, char *buf, size_t buf_size) origin = p->name; } t = strrchr(origin, '/'); - l = t ? t-origin : 0; + if (t) { + l = t-origin; + } else { + origin = "."; + l = 1; + } p->rpath = malloc(strlen(p->rpath_orig) + n*l + 1); if (!p->rpath) return -1;