Add a wrapper for 'memmem'

memmem is a GNU libc extension that works like strstr except that the
size of the needle and the haystack are passed into the function
instead of using null-terminated strings.

This patch adds a wrapper function called 'cogl_util_memmem' so that
we can use this function. There is a configure check and if the
function is not available then a fallback implementation will be used.
Otherwise cogl_util_memmem is just defined to memmem.

Reviewed-by: Robert Bragg <robert@linux.intel.com>

(cherry picked from commit 1dd1b0a67f6238e13f7f9253fb03addada0541b7)
This commit is contained in:
Neil Roberts
2012-08-07 11:45:29 +01:00
committed by Robert Bragg
parent 12a1ef72c0
commit 0c66431df3
3 changed files with 37 additions and 0 deletions

View File

@ -268,4 +268,14 @@ _cogl_util_pixel_format_from_masks (unsigned long r_mask,
#define _Static_assert(EXPRESSION, MESSAGE)
#endif
#ifdef HAVE_MEMMEM
#define _cogl_util_memmem memmem
#else
char *
_cogl_util_memmem (const void *haystack,
size_t haystack_len,
const void *needle,
size_t needle_len);
#endif
#endif /* __COGL_UTIL_H */