|
Lines 1956-1962
Link Here
|
| 1956 |
static void |
1956 |
static void |
| 1957 |
trace_loaded_objects(Obj_Entry *obj) |
1957 |
trace_loaded_objects(Obj_Entry *obj) |
| 1958 |
{ |
1958 |
{ |
| 1959 |
char *fmt1, *fmt2, *fmt, *main_local; |
1959 |
char *fmt1, *fmt2, *fmt, *main_local, *list_containers; |
| 1960 |
int c; |
1960 |
int c; |
| 1961 |
|
1961 |
|
| 1962 |
if ((main_local = getenv("LD_TRACE_LOADED_OBJECTS_PROGNAME")) == NULL) |
1962 |
if ((main_local = getenv("LD_TRACE_LOADED_OBJECTS_PROGNAME")) == NULL) |
|
Lines 1968-1981
Link Here
|
| 1968 |
if ((fmt2 = getenv("LD_TRACE_LOADED_OBJECTS_FMT2")) == NULL) |
1968 |
if ((fmt2 = getenv("LD_TRACE_LOADED_OBJECTS_FMT2")) == NULL) |
| 1969 |
fmt2 = "\t%o (%x)\n"; |
1969 |
fmt2 = "\t%o (%x)\n"; |
| 1970 |
|
1970 |
|
|
|
1971 |
list_containers = getenv("LD_TRACE_LOADED_OBJECTS_ALL"); |
| 1972 |
|
| 1971 |
for (; obj; obj = obj->next) { |
1973 |
for (; obj; obj = obj->next) { |
| 1972 |
Needed_Entry *needed; |
1974 |
Needed_Entry *needed; |
| 1973 |
char *name, *path; |
1975 |
char *name, *path; |
| 1974 |
bool is_lib; |
1976 |
bool is_lib; |
| 1975 |
|
1977 |
|
|
|
1978 |
if (list_containers && obj->needed != NULL) |
| 1979 |
printf("%s:\n", obj->path); |
| 1976 |
for (needed = obj->needed; needed; needed = needed->next) { |
1980 |
for (needed = obj->needed; needed; needed = needed->next) { |
| 1977 |
if (needed->obj != NULL) { |
1981 |
if (needed->obj != NULL) { |
| 1978 |
if (needed->obj->traced) |
1982 |
if (needed->obj->traced && !list_containers) |
| 1979 |
continue; |
1983 |
continue; |
| 1980 |
needed->obj->traced = true; |
1984 |
needed->obj->traced = true; |
| 1981 |
path = needed->obj->path; |
1985 |
path = needed->obj->path; |