31004e6
From 4cdf790013d4c087da018961e5081562df307bbf Mon Sep 17 00:00:00 2001
a5bd9f6
From: Vladimir 'phcoder' Serbinenko <phcoder@gmail.com>
a5bd9f6
Date: Sat, 12 Jan 2013 16:27:37 +0100
f74b50e
Subject: [PATCH 100/482] 	* grub-core/lib/libgcrypt_wrap/mem.c
a5bd9f6
 (gcry_x*alloc): Make out of memory 	fatal.
a5bd9f6
a5bd9f6
---
a5bd9f6
 ChangeLog                          |  5 +++++
a5bd9f6
 grub-core/lib/libgcrypt_wrap/mem.c | 30 +++++++++++++++++++++++++-----
a5bd9f6
 2 files changed, 30 insertions(+), 5 deletions(-)
a5bd9f6
a5bd9f6
diff --git a/ChangeLog b/ChangeLog
a5bd9f6
index 8a16591..4ac0aa6 100644
a5bd9f6
--- a/ChangeLog
a5bd9f6
+++ b/ChangeLog
a5bd9f6
@@ -1,5 +1,10 @@
a5bd9f6
 2013-01-12  Vladimir Serbinenko  <phcoder@gmail.com>
a5bd9f6
 
a5bd9f6
+	* grub-core/lib/libgcrypt_wrap/mem.c (gcry_x*alloc): Make out of memory
a5bd9f6
+	fatal.
a5bd9f6
+
a5bd9f6
+2013-01-12  Vladimir Serbinenko  <phcoder@gmail.com>
a5bd9f6
+
a5bd9f6
 	* grub-core/lib/libgcrypt_wrap/mem.c (_gcry_log_bug): Make gcrypt bugs
a5bd9f6
 	fatal.
a5bd9f6
 
a5bd9f6
diff --git a/grub-core/lib/libgcrypt_wrap/mem.c b/grub-core/lib/libgcrypt_wrap/mem.c
a5bd9f6
index 64e8b62..94f9d65 100644
a5bd9f6
--- a/grub-core/lib/libgcrypt_wrap/mem.c
a5bd9f6
+++ b/grub-core/lib/libgcrypt_wrap/mem.c
a5bd9f6
@@ -35,31 +35,51 @@ gcry_is_secure (const void *a __attribute__ ((unused)))
a5bd9f6
 void *
a5bd9f6
 gcry_xcalloc (size_t n, size_t m)
a5bd9f6
 {
a5bd9f6
-  return grub_zalloc (n * m);
a5bd9f6
+  void *ret;
a5bd9f6
+  ret = grub_zalloc (n * m);
a5bd9f6
+  if (!ret)
a5bd9f6
+    grub_fatal ("gcry_xcalloc failed");
a5bd9f6
+  return ret;
a5bd9f6
 }
a5bd9f6
 
a5bd9f6
 void *
a5bd9f6
 gcry_xmalloc_secure (size_t n)
a5bd9f6
 {
a5bd9f6
-  return grub_malloc (n);
a5bd9f6
+  void *ret;
a5bd9f6
+  ret = grub_malloc (n);
a5bd9f6
+  if (!ret)
a5bd9f6
+    grub_fatal ("gcry_xmalloc failed");
a5bd9f6
+  return ret;
a5bd9f6
 }
a5bd9f6
 
a5bd9f6
 void *
a5bd9f6
 gcry_xcalloc_secure (size_t n, size_t m)
a5bd9f6
 {
a5bd9f6
-  return grub_zalloc (n * m);
a5bd9f6
+  void *ret;
a5bd9f6
+  ret = grub_zalloc (n * m);
a5bd9f6
+  if (!ret)
a5bd9f6
+    grub_fatal ("gcry_xcalloc failed");
a5bd9f6
+  return ret;
a5bd9f6
 }
a5bd9f6
 
a5bd9f6
 void *
a5bd9f6
 gcry_xmalloc (size_t n)
a5bd9f6
 {
a5bd9f6
-  return grub_malloc (n);
a5bd9f6
+  void *ret;
a5bd9f6
+  ret = grub_malloc (n);
a5bd9f6
+  if (!ret)
a5bd9f6
+    grub_fatal ("gcry_xmalloc failed");
a5bd9f6
+  return ret;
a5bd9f6
 }
a5bd9f6
 
a5bd9f6
 void *
a5bd9f6
 gcry_xrealloc (void *a, size_t n)
a5bd9f6
 {
a5bd9f6
-  return grub_realloc (a, n);
a5bd9f6
+  void *ret;
a5bd9f6
+  ret = grub_realloc (a, n);
a5bd9f6
+  if (!ret)
a5bd9f6
+    grub_fatal ("gcry_xrealloc failed");
a5bd9f6
+  return ret;
a5bd9f6
 }
a5bd9f6
 
a5bd9f6
 void
a5bd9f6
-- 
31004e6
1.8.2.1
a5bd9f6