aboutsummaryrefslogtreecommitdiff
path: root/src/client/mac/handler/dynamic_images.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/mac/handler/dynamic_images.cc')
-rw-r--r--src/client/mac/handler/dynamic_images.cc15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/client/mac/handler/dynamic_images.cc b/src/client/mac/handler/dynamic_images.cc
index e2a9d485..32a57e82 100644
--- a/src/client/mac/handler/dynamic_images.cc
+++ b/src/client/mac/handler/dynamic_images.cc
@@ -104,6 +104,19 @@ void DynamicImage::CalculateMemoryInfo() {
slide_ = 0;
}
+void DynamicImage::Print() {
+ const char *path = GetFilePath();
+ if (!path) {
+ path = "(unknown)";
+ }
+ printf("%p: %s\n", GetLoadAddress(), path);
+ mach_header *header = GetMachHeader();
+ MachHeader(*header).Print();
+ printf("vmaddr\t\t: %p\n", reinterpret_cast<void*>(GetVMAddr()));
+ printf("vmsize\t\t: %d\n", GetVMSize());
+ printf("slide\t\t: %d\n", GetVMAddrSlide());
+}
+
#pragma mark -
//==============================================================================
@@ -123,7 +136,7 @@ void DynamicImages::ReadImageInfoForTask() {
// which lives in "dyld". This structure contains information about all
// of the loaded dynamic images.
struct nlist &list = l[0];
- list.n_un.n_name = "_dyld_all_image_infos";
+ list.n_un.n_name = const_cast<char *>("_dyld_all_image_infos");
nlist("/usr/lib/dyld", &list);
if (list.n_value) {