Patch that:
[OpenSRF.git] / src / libopensrf / utils.c
index 987a527..0323fb7 100644 (file)
@@ -22,6 +22,16 @@ inline void* safe_malloc( int size ) {
                osrfLogError( OSRF_LOG_MARK, "Out of Memory" );
                exit(99);
        }
+       memset( ptr, 0, size ); // remove this after safe_calloc transition
+       return ptr;
+}
+
+inline void* safe_calloc( int size ) {
+       void* ptr = (void*) malloc( size );
+       if( ptr == NULL ) {
+               osrfLogError( OSRF_LOG_MARK, "Out of Memory" );
+               exit(99);
+       }
        memset( ptr, 0, size );
        return ptr;
 }
@@ -45,7 +55,7 @@ int init_proc_title( int argc, char* argv[] ) {
        int i = 0;
        while( i < argc ) {
                int len = strlen( global_argv[i]);
-               memset( global_argv[i], 0, len);
+               osrf_clearbuf( global_argv[i], len );
                global_argv_size += len;
                i++;
        }
@@ -56,7 +66,7 @@ int init_proc_title( int argc, char* argv[] ) {
 
 int set_proc_title( char* format, ... ) {
        VA_LIST_TO_STRING(format);
-       memset( *(global_argv), 0, global_argv_size);
+       osrf_clearbuf( *(global_argv), global_argv_size);
        return snprintf( *(global_argv), global_argv_size, VA_BUF );
 }
 
@@ -122,7 +132,7 @@ char* va_list_to_string(const char* format, ...) {
        len = va_list_size(format, args);
 
        char buf[len];
-       memset(buf, 0, sizeof(buf));
+       osrf_clearbuf(buf, sizeof(buf));
 
        va_start(a_copy, format);
        vsnprintf(buf, len - 1, format, a_copy);
@@ -165,7 +175,7 @@ int buffer_fadd(growing_buffer* gb, const char* format, ... ) {
        len = va_list_size(format, args);
 
        char buf[len];
-       memset(buf, 0, sizeof(buf));
+       osrf_clearbuf(buf, sizeof(buf));
 
        va_start(a_copy, format);
        vsnprintf(buf, len - 1, format, a_copy);
@@ -213,7 +223,7 @@ int buffer_add(growing_buffer* gb, char* data) {
 int buffer_reset( growing_buffer *gb){
        if( gb == NULL ) { return 0; }
        if( gb->buf == NULL ) { return 0; }
-       memset( gb->buf, 0, sizeof(gb->buf) );
+       osrf_clearbuf( gb->buf, sizeof(gb->buf) );
        gb->n_used = 0;
        return 1;
 }
@@ -417,7 +427,7 @@ char* file_to_string(const char* filename) {
 
        int len = 1024;
        char buf[len];
-       memset(buf, 0, sizeof(buf));
+       osrf_clearbuf(buf, sizeof(buf));
        growing_buffer* gb = buffer_init(len);
 
        FILE* file = fopen(filename, "r");
@@ -428,7 +438,7 @@ char* file_to_string(const char* filename) {
 
        while(fgets(buf, sizeof(buf), file)) {
                buffer_add(gb, buf);
-               memset(buf, 0, sizeof(buf));
+               osrf_clearbuf(buf, sizeof(buf));
        }
 
        fclose(file);
@@ -456,7 +466,7 @@ char* md5sum( char* text, ... ) {
 
        char buf[16];
        char final[256];
-       memset(final, 0, sizeof(final));
+       osrf_clearbuf(final, sizeof(final));
 
        for ( i=0 ; i<16 ; i++ ) {
                snprintf(buf, sizeof(buf), "%02x", digest[i]);