diff options
| -rw-r--r-- | src/ldso/dynlink.c | 6 | 
1 files changed, 3 insertions, 3 deletions
| diff --git a/src/ldso/dynlink.c b/src/ldso/dynlink.c index 305d70e0..a23390e1 100644 --- a/src/ldso/dynlink.c +++ b/src/ldso/dynlink.c @@ -514,19 +514,19 @@ void *dlopen(const char *file, int mode)  	/* First load handling */  	if (!p->deps) {  		load_deps(p); -		for (i=0; p->deps[i]; i++) +		if (p->deps) for (i=0; p->deps[i]; i++)  			if (!p->deps[i]->global)  				p->deps[i]->global = -1;  		if (!p->global) p->global = -1;  		reloc_all(p); -		for (i=0; p->deps[i]; i++) +		if (p->deps) for (i=0; p->deps[i]; i++)  			if (p->deps[i]->global < 0)  				p->deps[i]->global = 0;  		if (p->global < 0) p->global = 0;  	}  	if (mode & RTLD_GLOBAL) { -		for (i=0; p->deps[i]; i++) +		if (p->deps) for (i=0; p->deps[i]; i++)  			p->deps[i]->global = 1;  		p->global = 1;  	} | 
