Bug 1288077: Merge implementations of |nsTArrayFallibleAllocator|, r?froydnj draft
authorThomas Zimmermann <tdz@users.sourceforge.net>
Wed, 20 Jul 2016 15:24:14 +0200
changeset 389997 7e4206d227729f65f84f6926d9a3ad05d95bb93d
parent 389996 42786e87a8f2b5d361e393a927dde79cfb61de44
child 525911 41de0fc7302035b8a3adda789d9297cd84285463
push id23576
push usertdz@users.sourceforge.net
push dateWed, 20 Jul 2016 14:19:50 +0000
reviewersfroydnj
bugs1288077
milestone50.0a1
Bug 1288077: Merge implementations of |nsTArrayFallibleAllocator|, r?froydnj The two implemenations of |nsTArrayFallibleAllocator| in 'nsTArray' are equivalent. This patch merges both. MozReview-Commit-ID: 3G9pHSQRzKz
xpcom/glue/nsTArray.h
--- a/xpcom/glue/nsTArray.h
+++ b/xpcom/glue/nsTArray.h
@@ -153,55 +153,46 @@ struct nsTArrayInfallibleAllocatorBase
   static ResultType ConvertBoolToResultType(bool aValue)
   {
     if (!aValue) {
       NS_RUNTIMEABORT("infallible nsTArray should never convert false to ResultType");
     }
   }
 };
 
-#if defined(MOZALLOC_HAVE_XMALLOC)
-#include "mozilla/mozalloc_abort.h"
-
 struct nsTArrayFallibleAllocator : nsTArrayFallibleAllocatorBase
 {
   static void* Malloc(size_t aSize) { return malloc(aSize); }
   static void* Realloc(void* aPtr, size_t aSize)
   {
     return realloc(aPtr, aSize);
   }
 
   static void Free(void* aPtr) { free(aPtr); }
   static void SizeTooBig(size_t) {}
 };
 
+#if defined(MOZALLOC_HAVE_XMALLOC)
+#include "mozilla/mozalloc_abort.h"
+
 struct nsTArrayInfallibleAllocator : nsTArrayInfallibleAllocatorBase
 {
   static void* Malloc(size_t aSize) { return moz_xmalloc(aSize); }
   static void* Realloc(void* aPtr, size_t aSize)
   {
     return moz_xrealloc(aPtr, aSize);
   }
 
   static void Free(void* aPtr) { free(aPtr); }
   static void SizeTooBig(size_t aSize) { NS_ABORT_OOM(aSize); }
 };
 
 #else
 #include <stdlib.h>
 
-struct nsTArrayFallibleAllocator : nsTArrayFallibleAllocatorBase
-{
-  static void* Malloc(size_t aSize) { return malloc(aSize); }
-  static void* Realloc(void* aPtr, size_t aSize) { return realloc(aPtr, aSize); }
-
-  static void Free(void* aPtr) { free(aPtr); }
-  static void SizeTooBig(size_t) {}
-};
-
 struct nsTArrayInfallibleAllocator : nsTArrayInfallibleAllocatorBase
 {
   static void* Malloc(size_t aSize)
   {
     void* ptr = malloc(aSize);
     if (MOZ_UNLIKELY(!ptr)) {
       NS_ABORT_OOM(aSize);
     }