|
@@ -1089,8 +1089,12 @@ restart:
|
|
|
if (symsrc__init(&ss, dso, name, symtab_type) < 0)
|
|
|
continue;
|
|
|
|
|
|
- ret = dso__load_sym(dso, map, &ss, filter, 0,
|
|
|
- want_symtab);
|
|
|
+ if (want_symtab && !symsrc__has_symtab(&ss)) {
|
|
|
+ symsrc__destroy(&ss);
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+
|
|
|
+ ret = dso__load_sym(dso, map, &ss, filter, 0);
|
|
|
|
|
|
/*
|
|
|
* Some people seem to have debuginfo files _WITHOUT_ debug
|
|
@@ -1376,7 +1380,7 @@ int dso__load_vmlinux(struct dso *dso, struct map *map,
|
|
|
if (symsrc__init(&ss, dso, symfs_vmlinux, symtab_type))
|
|
|
return -1;
|
|
|
|
|
|
- err = dso__load_sym(dso, map, &ss, filter, 0, 0);
|
|
|
+ err = dso__load_sym(dso, map, &ss, filter, 0);
|
|
|
symsrc__destroy(&ss);
|
|
|
|
|
|
if (err > 0) {
|