Package: librcc Version: 0.2.8-2 Severity: important Tags: patch User: [email protected] Usertags: origin-ubuntu ubuntu-patch karmic
src/rccstring.h has this code: #ifdef HAVE_STRNLEN # ifndef strnlen int strnlen(const char *str, size_t size); # endif /* !strnlen */ This is pointless and incorrect. configure has already detected that strnlen is present, so it must be either a function or a macro, and this declaration is only used if it's a function. In that case, this may fail if the system header declaration is even slightly different, and if it's the same, then why redeclare it? This caused a build failure on Ubuntu. If it doesn't fail to build on Debian yet, then it's probably only because Ubuntu is using a slightly newer eglibc, but it would still be worth fixing pre-emptively in Debian. http://launchpadlibrarian.net/32052981/buildlog_ubuntu-karmic-i386.librcc_0.2.8-2_FAILEDTOBUILD.txt.gz The following patch fixes this: * Don't pointlessly redefine strnlen in rccstring.h; it just causes build failures if strnlen isn't a macro. --- librcc-0.2.8.orig/src/rccstring.h +++ librcc-0.2.8/src/rccstring.h @@ -38,11 +38,7 @@ int rccStringFixID(rcc_string string, rcc_context ctx); int rccStringChangeID(rcc_string string, rcc_language_id language_id); -#ifdef HAVE_STRNLEN -# ifndef strnlen -int strnlen(const char *str, size_t size); -# endif /* !strnlen */ -#else +#ifndef HAVE_STRNLEN int rccStrnlen(const char *str, size_t size); #endif /* HAVE_STRNLEN */ int rccIsASCII(const char *str); Thanks, -- Colin Watson [[email protected]] -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected]

