summaryrefslogtreecommitdiff
path: root/package/firefox/patches/patch-xpcom_base_nsMemoryReporterManager_cpp
diff options
context:
space:
mode:
Diffstat (limited to 'package/firefox/patches/patch-xpcom_base_nsMemoryReporterManager_cpp')
-rw-r--r--package/firefox/patches/patch-xpcom_base_nsMemoryReporterManager_cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/package/firefox/patches/patch-xpcom_base_nsMemoryReporterManager_cpp b/package/firefox/patches/patch-xpcom_base_nsMemoryReporterManager_cpp
new file mode 100644
index 000000000..e13b23274
--- /dev/null
+++ b/package/firefox/patches/patch-xpcom_base_nsMemoryReporterManager_cpp
@@ -0,0 +1,18 @@
+--- firefox-45.0.orig/xpcom/base/nsMemoryReporterManager.cpp 2016-03-03 22:48:07.000000000 +0100
++++ firefox-45.0/xpcom/base/nsMemoryReporterManager.cpp 2016-03-15 08:42:15.629014068 +0100
+@@ -157,6 +157,7 @@ ResidentUniqueDistinguishedAmount(int64_
+ nsresult
+ SystemHeapSize(int64_t* aSizeOut)
+ {
++#if defined(__GLIBC__) && !defined(__UCLIBC__)
+ struct mallinfo info = mallinfo();
+
+ // The documentation in the glibc man page makes it sound like |uordblks|
+@@ -170,6 +171,7 @@ SystemHeapSize(int64_t* aSizeOut)
+ // shouldn't be a problem. Nonetheless, cast the |int|s to |size_t| before
+ // adding them to provide a small amount of extra overflow protection.
+ *aSizeOut = size_t(info.hblkhd) + size_t(info.uordblks);
++#endif
+ return NS_OK;
+ }
+