From c38e9c8468df45eb60eeceb5a54427b2cb67b622 Mon Sep 17 00:00:00 2001 From: Gunnar Beutner Date: Sat, 26 May 2012 20:19:32 +0200 Subject: [PATCH] Removed Memory class. --- base/Makefile.am | 2 -- base/base.vcxproj | 2 -- base/fifo.cpp | 8 +++-- base/memory.cpp | 92 ----------------------------------------------- base/memory.h | 47 ------------------------ 5 files changed, 6 insertions(+), 145 deletions(-) delete mode 100644 base/memory.cpp delete mode 100644 base/memory.h diff --git a/base/Makefile.am b/base/Makefile.am index 5a2947c7b..f1edd61a8 100644 --- a/base/Makefile.am +++ b/base/Makefile.am @@ -25,8 +25,6 @@ libbase_la_SOURCES = \ fifo.cpp \ fifo.h \ i2-base.h \ - memory.cpp \ - memory.h \ object.cpp \ object.h \ socket.cpp \ diff --git a/base/base.vcxproj b/base/base.vcxproj index 59821309e..32a4b87e4 100644 --- a/base/base.vcxproj +++ b/base/base.vcxproj @@ -19,7 +19,6 @@ - @@ -45,7 +44,6 @@ - diff --git a/base/fifo.cpp b/base/fifo.cpp index 906d99123..1dd39f9ee 100644 --- a/base/fifo.cpp +++ b/base/fifo.cpp @@ -37,7 +37,7 @@ FIFO::FIFO(void) */ FIFO::~FIFO(void) { - Memory::Free(m_Buffer); + free(m_Buffer); } /** @@ -52,7 +52,11 @@ void FIFO::ResizeBuffer(size_t newSize) newSize = (newSize / FIFO::BlockSize + 1) * FIFO::BlockSize; - m_Buffer = (char *)Memory::Reallocate(m_Buffer, newSize); + char *newBuffer = (char *)realloc(m_Buffer, newSize); + + if (newBuffer == NULL) + throw bad_alloc(); + m_AllocSize = newSize; } diff --git a/base/memory.cpp b/base/memory.cpp deleted file mode 100644 index 193a0a53a..000000000 --- a/base/memory.cpp +++ /dev/null @@ -1,92 +0,0 @@ -/****************************************************************************** - * Icinga 2 * - * Copyright (C) 2012 Icinga Development Team (http://www.icinga.org/) * - * * - * This program is free software; you can redistribute it and/or * - * modify it under the terms of the GNU General Public License * - * as published by the Free Software Foundation; either version 2 * - * of the License, or (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program; if not, write to the Free Software Foundation * - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * - ******************************************************************************/ - -#include "i2-base.h" - -using namespace icinga; - -/** - * Constructor for the memory class. - */ -Memory::Memory(void) -{ -} - -/** - * Allocates memory. Alignment guarantees are the same like for malloc(). - * - * @param size The size of the requested memory block. - * @returns A new block of memory. - * @exception OutOfMemoryException No more memory is available. - */ -void *Memory::Allocate(size_t size) -{ - void *ptr = malloc(size); - - if (size != 0 && ptr == NULL) - throw OutOfMemoryException("malloc failed."); - - return ptr; -} - -/** - * Resizes a block of memory. - * - * @param ptr The old memory block or NULL. - * @param size The requested new size of the block. - * @returns A pointer to the new memory block. - * @exception OutOfMemoryException No more memory is available. - */ -void *Memory::Reallocate(void *ptr, size_t size) -{ - void *new_ptr = realloc(ptr, size); - - if (size != 0 && new_ptr == NULL) - throw OutOfMemoryException("realloc failed."); - - return new_ptr; -} - -/** - * Duplicates a string. - * - * @param str The string. - * @returns A copy of the string. - * @exception OutOfMemoryException No more memory is available. - */ -char *Memory::StrDup(const char *str) -{ - char *new_str = strdup(str); - - if (str == NULL) - throw OutOfMemoryException("strdup failed."); - - return new_str; -} - -/** - * Frees a memory block. - * - * @param ptr The memory block. - */ -void Memory::Free(void *ptr) -{ - if (ptr != NULL) - free(ptr); -} diff --git a/base/memory.h b/base/memory.h deleted file mode 100644 index 4ad0b83de..000000000 --- a/base/memory.h +++ /dev/null @@ -1,47 +0,0 @@ -/****************************************************************************** - * Icinga 2 * - * Copyright (C) 2012 Icinga Development Team (http://www.icinga.org/) * - * * - * This program is free software; you can redistribute it and/or * - * modify it under the terms of the GNU General Public License * - * as published by the Free Software Foundation; either version 2 * - * of the License, or (at your option) any later version. * - * * - * This program is distributed in the hope that it will be useful, * - * but WITHOUT ANY WARRANTY; without even the implied warranty of * - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * - * GNU General Public License for more details. * - * * - * You should have received a copy of the GNU General Public License * - * along with this program; if not, write to the Free Software Foundation * - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. * - ******************************************************************************/ - -#ifndef MEMORY_H -#define MEMORY_H - -namespace icinga -{ - -DEFINE_EXCEPTION_CLASS(OutOfMemoryException); - -/** - * Memory allocation helper functions. - * - * @ingroup base - */ -class I2_BASE_API Memory -{ -public: - static void *Allocate(size_t size); - static void *Reallocate(void *ptr, size_t size); - static char *StrDup(const char *str); - static void Free(void *ptr); - -private: - Memory(void); -}; - -} - -#endif /* MEMORY_H */