@@ -21,7 +21,7 @@ long hv_free_cnt() {
2121 return s_free_cnt ;
2222}
2323
24- void * safe_malloc (size_t size ) {
24+ void * hv_malloc (size_t size ) {
2525 hatomic_inc (& s_alloc_cnt );
2626 void * ptr = malloc (size );
2727 if (!ptr ) {
@@ -31,7 +31,7 @@ void* safe_malloc(size_t size) {
3131 return ptr ;
3232}
3333
34- void * safe_realloc (void * oldptr , size_t newsize , size_t oldsize ) {
34+ void * hv_realloc (void * oldptr , size_t newsize , size_t oldsize ) {
3535 hatomic_inc (& s_alloc_cnt );
3636 hatomic_inc (& s_free_cnt );
3737 void * ptr = realloc (oldptr , newsize );
@@ -45,7 +45,7 @@ void* safe_realloc(void* oldptr, size_t newsize, size_t oldsize) {
4545 return ptr ;
4646}
4747
48- void * safe_calloc (size_t nmemb , size_t size ) {
48+ void * hv_calloc (size_t nmemb , size_t size ) {
4949 hatomic_inc (& s_alloc_cnt );
5050 void * ptr = calloc (nmemb , size );
5151 if (!ptr ) {
@@ -55,7 +55,7 @@ void* safe_calloc(size_t nmemb, size_t size) {
5555 return ptr ;
5656}
5757
58- void * safe_zalloc (size_t size ) {
58+ void * hv_zalloc (size_t size ) {
5959 hatomic_inc (& s_alloc_cnt );
6060 void * ptr = malloc (size );
6161 if (!ptr ) {
@@ -66,15 +66,15 @@ void* safe_zalloc(size_t size) {
6666 return ptr ;
6767}
6868
69- void safe_free (void * ptr ) {
69+ void hv_free (void * ptr ) {
7070 if (ptr ) {
7171 free (ptr );
7272 ptr = NULL ;
7373 hatomic_inc (& s_free_cnt );
7474 }
7575}
7676
77- char * strupper (char * str ) {
77+ char * hv_strupper (char * str ) {
7878 char * p = str ;
7979 while (* p != '\0' ) {
8080 if (* p >= 'a' && * p <= 'z' ) {
@@ -85,7 +85,7 @@ char* strupper(char* str) {
8585 return str ;
8686}
8787
88- char * strlower (char * str ) {
88+ char * hv_strlower (char * str ) {
8989 char * p = str ;
9090 while (* p != '\0' ) {
9191 if (* p >= 'A' && * p <= 'Z' ) {
@@ -96,7 +96,7 @@ char* strlower(char* str) {
9696 return str ;
9797}
9898
99- char * strreverse (char * str ) {
99+ char * hv_strreverse (char * str ) {
100100 if (str == NULL ) return NULL ;
101101 char * b = str ;
102102 char * e = str ;
@@ -114,7 +114,7 @@ char* strreverse(char* str) {
114114}
115115
116116// n = sizeof(dest_buf)
117- char * safe_strncpy (char * dest , const char * src , size_t n ) {
117+ char * hv_strncpy (char * dest , const char * src , size_t n ) {
118118 assert (dest != NULL && src != NULL );
119119 char * ret = dest ;
120120 while (* src != '\0' && -- n > 0 ) {
@@ -125,7 +125,7 @@ char* safe_strncpy(char* dest, const char* src, size_t n) {
125125}
126126
127127// n = sizeof(dest_buf)
128- char * safe_strncat (char * dest , const char * src , size_t n ) {
128+ char * hv_strncat (char * dest , const char * src , size_t n ) {
129129 assert (dest != NULL && src != NULL );
130130 char * ret = dest ;
131131 while (* dest ) {++ dest ;-- n ;}
@@ -136,7 +136,7 @@ char* safe_strncat(char* dest, const char* src, size_t n) {
136136 return ret ;
137137}
138138
139- bool strstartswith (const char * str , const char * start ) {
139+ bool hv_strstartswith (const char * str , const char * start ) {
140140 assert (str != NULL && start != NULL );
141141 while (* str && * start && * str == * start ) {
142142 ++ str ;
@@ -145,7 +145,7 @@ bool strstartswith(const char* str, const char* start) {
145145 return * start == '\0' ;
146146}
147147
148- bool strendswith (const char * str , const char * end ) {
148+ bool hv_strendswith (const char * str , const char * end ) {
149149 assert (str != NULL && end != NULL );
150150 int len1 = 0 ;
151151 int len2 = 0 ;
@@ -162,12 +162,12 @@ bool strendswith(const char* str, const char* end) {
162162 return true;
163163}
164164
165- bool strcontains (const char * str , const char * sub ) {
165+ bool hv_strcontains (const char * str , const char * sub ) {
166166 assert (str != NULL && sub != NULL );
167167 return strstr (str , sub ) != NULL ;
168168}
169169
170- char * strrchr_dir (const char * filepath ) {
170+ char * hv_strrchr_dir (const char * filepath ) {
171171 char * p = (char * )filepath ;
172172 while (* p ) ++ p ;
173173 while (-- p >= filepath ) {
@@ -182,12 +182,12 @@ char* strrchr_dir(const char* filepath) {
182182}
183183
184184const char * hv_basename (const char * filepath ) {
185- const char * pos = strrchr_dir (filepath );
185+ const char * pos = hv_strrchr_dir (filepath );
186186 return pos ? pos + 1 : filepath ;
187187}
188188
189189const char * hv_suffixname (const char * filename ) {
190- const char * pos = strrchr_dot (filename );
190+ const char * pos = hv_strrchr_dot (filename );
191191 return pos ? pos + 1 : "" ;
192192}
193193
@@ -196,7 +196,7 @@ int hv_mkdir_p(const char* dir) {
196196 return EEXIST ;
197197 }
198198 char tmp [MAX_PATH ] = {0 };
199- safe_strncpy (tmp , dir , sizeof (tmp ));
199+ hv_strncpy (tmp , dir , sizeof (tmp ));
200200 char * p = tmp ;
201201 char delim = '/' ;
202202 while (* p ) {
@@ -226,7 +226,7 @@ int hv_rmdir_p(const char* dir) {
226226 return EPERM ;
227227 }
228228 char tmp [MAX_PATH ] = {0 };
229- safe_strncpy (tmp , dir , sizeof (tmp ));
229+ hv_strncpy (tmp , dir , sizeof (tmp ));
230230 char * p = tmp ;
231231 while (* p ) ++ p ;
232232 while (-- p >= tmp ) {
@@ -283,20 +283,6 @@ size_t hv_filesize(const char* filepath) {
283283 return st .st_size ;
284284}
285285
286- bool getboolean (const char * str ) {
287- if (str == NULL ) return false;
288- int len = strlen (str );
289- if (len == 0 ) return false;
290- switch (len ) {
291- case 1 : return * str == '1' || * str == 'y' || * str == 'Y' ;
292- case 2 : return stricmp (str , "on" ) == 0 ;
293- case 3 : return stricmp (str , "yes" ) == 0 ;
294- case 4 : return stricmp (str , "true" ) == 0 ;
295- case 6 : return stricmp (str , "enable" ) == 0 ;
296- default : return false;
297- }
298- }
299-
300286char * get_executable_path (char * buf , int size ) {
301287#ifdef OS_WIN
302288 GetModuleFileName (NULL , buf , size );
@@ -313,7 +299,7 @@ char* get_executable_path(char* buf, int size) {
313299char * get_executable_dir (char * buf , int size ) {
314300 char filepath [MAX_PATH ] = {0 };
315301 get_executable_path (filepath , sizeof (filepath ));
316- char * pos = strrchr_dir (filepath );
302+ char * pos = hv_strrchr_dir (filepath );
317303 if (pos ) {
318304 * pos = '\0' ;
319305 strncpy (buf , filepath , size );
@@ -324,7 +310,7 @@ char* get_executable_dir(char* buf, int size) {
324310char * get_executable_file (char * buf , int size ) {
325311 char filepath [MAX_PATH ] = {0 };
326312 get_executable_path (filepath , sizeof (filepath ));
327- char * pos = strrchr_dir (filepath );
313+ char * pos = hv_strrchr_dir (filepath );
328314 if (pos ) {
329315 strncpy (buf , pos + 1 , size );
330316 }
@@ -361,3 +347,17 @@ void hv_random_string(char *buf, int len) {
361347 }
362348 buf [i ] = '\0' ;
363349}
350+
351+ bool hv_getboolean (const char * str ) {
352+ if (str == NULL ) return false;
353+ int len = strlen (str );
354+ if (len == 0 ) return false;
355+ switch (len ) {
356+ case 1 : return * str == '1' || * str == 'y' || * str == 'Y' ;
357+ case 2 : return stricmp (str , "on" ) == 0 ;
358+ case 3 : return stricmp (str , "yes" ) == 0 ;
359+ case 4 : return stricmp (str , "true" ) == 0 ;
360+ case 6 : return stricmp (str , "enable" ) == 0 ;
361+ default : return false;
362+ }
363+ }
0 commit comments