|
@@ -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;
|
|
|
+ }
|
|
|
+
|