Added memory utility functions.
git-svn-id: http://svn.zoneminder.com/svn/zm/trunk@1455 e3e1d417-86f3-4887-817a-d78f3d33393f
This commit is contained in:
parent
cf7b29650e
commit
978aeb5505
|
@ -69,9 +69,9 @@ protected:
|
|||
|
||||
protected:
|
||||
static void Base64Encode( const char *in_string, char *out_string );
|
||||
inline static char *mempbrk(const char *s, const char *accept, size_t limit )
|
||||
inline static char *mempbrk( register const char *s, const char *accept, size_t limit )
|
||||
{
|
||||
if ( limit <= 0 )
|
||||
if ( limit <= 0 || !s || !accept || !*accept )
|
||||
return( 0 );
|
||||
|
||||
register int i,j;
|
||||
|
@ -89,9 +89,36 @@ protected:
|
|||
}
|
||||
return( 0 );
|
||||
}
|
||||
inline static size_t memspn( const char *s, const char *accept, size_t limit )
|
||||
inline static char *memstr( register const char *s, const char *n, size_t limit )
|
||||
{
|
||||
if ( limit <= 0 )
|
||||
if ( limit <= 0 || !s || !n )
|
||||
return( 0 );
|
||||
|
||||
if ( !*n )
|
||||
return( (char *)s );
|
||||
|
||||
register int i,j,k;
|
||||
size_t n_len = strlen( n );
|
||||
|
||||
for ( i = 0; i < limit; i++, s++ )
|
||||
{
|
||||
if ( *s != *n )
|
||||
continue;
|
||||
j = 1;
|
||||
k = 1;
|
||||
while ( true )
|
||||
{
|
||||
if ( k >= n_len )
|
||||
return( (char *)s );
|
||||
if ( s[j++] != n[k++] )
|
||||
break;
|
||||
}
|
||||
}
|
||||
return( 0 );
|
||||
}
|
||||
inline static size_t memspn( register const char *s, const char *accept, size_t limit )
|
||||
{
|
||||
if ( limit <= 0 || !s || !accept || !*accept )
|
||||
return( 0 );
|
||||
|
||||
register int i,j;
|
||||
|
@ -115,11 +142,14 @@ protected:
|
|||
}
|
||||
return( limit );
|
||||
}
|
||||
inline static size_t memcspn( const char *s, const char *reject, size_t limit )
|
||||
inline static size_t memcspn( register const char *s, const char *reject, size_t limit )
|
||||
{
|
||||
if ( limit <= 0 )
|
||||
if ( limit <= 0 || !s || !reject )
|
||||
return( 0 );
|
||||
|
||||
if ( !*reject )
|
||||
return( limit );
|
||||
|
||||
register int i,j;
|
||||
size_t rej_len = strlen( reject );
|
||||
|
||||
|
|
Loading…
Reference in New Issue