• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /**
2  * misc.c : miscellaneous :
3  *		- dealing with errors in memory allocation
4  *
5  * Copyright (c) 2008 Jean-Pierre Andre
6  *
7  * This program/include file is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU General Public License as published
9  * by the Free Software Foundation; either version 2 of the License, or
10  * (at your option) any later version.
11  *
12  * This program/include file is distributed in the hope that it will be
13  * useful, but WITHOUT ANY WARRANTY; without even the implied warranty
14  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program (in the main directory of the NTFS-3G
19  * distribution in the file COPYING); if not, write to the Free Software
20  * Foundation,Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
21  */
22 
23 #ifdef HAVE_CONFIG_H
24 #include "config.h"
25 #endif
26 
27 #ifdef HAVE_STDLIB_H
28 #include <stdlib.h>
29 #endif
30 #ifdef HAVE_STRING_H
31 #include <string.h>
32 #endif
33 
34 #include "types.h"
35 #include "misc.h"
36 #include "logging.h"
37 
38 /**
39  * ntfs_calloc
40  *
41  * Return a pointer to the allocated memory or NULL if the request fails.
42  */
ntfs_calloc(size_t size)43 void *ntfs_calloc(size_t size)
44 {
45 	void *p;
46 
47 	p = calloc(1, size);
48 	if (!p)
49 		ntfs_log_perror("Failed to calloc %lld bytes", (long long)size);
50 	return p;
51 }
52 
ntfs_malloc(size_t size)53 void *ntfs_malloc(size_t size)
54 {
55 	void *p;
56 
57 	p = malloc(size);
58 	if (!p)
59 		ntfs_log_perror("Failed to malloc %lld bytes", (long long)size);
60 	return p;
61 }
62 
ntfs_realloc(void * ptr,size_t size)63 void *ntfs_realloc(void *ptr, size_t size)
64 {
65 	void *p;
66 
67 	p = realloc(ptr, size);
68 	if (!p)
69 		ntfs_log_perror("Failed to realloc %lld bytes",
70 				(long long)size);
71 	return p;
72 }
73 
ntfs_free(void * p)74 void ntfs_free(void *p)
75 {
76 	free(p);
77 }
78