[vlc-devel] [PATCH v2] vlc_fixup: remap win64 lfind as it expects a unsigned* where we get a size_t*

Rémi Denis-Courmont remi at remlab.net
Tue Jul 16 10:19:28 CEST 2019


Ok.

It won't work for the theoretical case that array is really large, but that's not a regression.

Le 16 juillet 2019 10:44:22 GMT+03:00, Steve Lhomme <robux4 at ycbcr.xyz> a écrit :
>So now we include search.h for every file we compile.
>
>Co-authored-by: Rémi Denis-Courmont <remi at remlab.net>
>---
> include/vlc_fixups.h | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
>diff --git a/include/vlc_fixups.h b/include/vlc_fixups.h
>index 2164f690b1..c59e398912 100644
>--- a/include/vlc_fixups.h
>+++ b/include/vlc_fixups.h
>@@ -490,6 +490,16 @@ void twalk( const void *root, void(*action)(const
>void *nodep, VISIT which, int
> void *lfind( const void *key, const void *base, size_t *nmemb,
>              size_t size, int(*cmp)(const void *, const void *) );
> #endif /* HAVE_SEARCH_H */
>+
>+#ifdef _WIN64
>+# ifdef HAVE_SEARCH_H
>+#  include <search.h>
>+# endif
>+/* the Win32 prototype of lfind() expects an unsigned* for 'nelp' */
>+# define lfind(a,b,c,d,e) \
>+         lfind(a,b, &(unsigned){ (*(c) > UINT_MAX) ? UINT_MAX : *(c)
>}, d,e)
>+#endif /* _WIN64 */
>+
> #ifndef HAVE_TDESTROY
> void tdestroy( void *root, void (*free_node)(void *nodep) );
> #endif
>-- 
>2.17.1
>
>_______________________________________________
>vlc-devel mailing list
>To unsubscribe or modify your subscription options:
>https://mailman.videolan.org/listinfo/vlc-devel

-- 
Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma brièveté.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20190716/6871b28b/attachment.html>


More information about the vlc-devel mailing list