Control: tags -1 patch Here's a patch that fixes the errors. I will create a merge request.
J.
Author: Jeremy Sowden <aza...@debian.org> Last-Update: 2024-07-26 Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1075650 Description: fix gcc-14 FTBFS caused by incompatible pointer types `XawListChange` declares the type of its second parameter as `_Xconst char **`. However, xawtv passes `str_list`, which is declared as `String *`, or `&empty` which is declared as `char *`. With gcc 14, these result in incompatible-pointer errors: . x11/propwatch.c: In function 'RebuildList': x11/propwatch.c:319:43: error: passing argument 2 of 'XawListChange' from incompatible pointer type [-Wincompatible-pointer-types] 319 | XawListChange(bl,str_count ? str_list : &empty, | ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~ | | | char ** In file included from x11/propwatch.c:28: /usr/include/X11/Xaw/List.h:170:27: note: expected 'const char **' but argument is of type 'char **' 170 | _Xconst char **list, | ^ x11/propwatch.c: In function 'ProcessPropertyChange': x11/propwatch.c:498:34: error: passing argument 2 of 'XawListChange' from incompatible pointer type [-Wincompatible-pointer-types] 498 | XawListChange(bl,str_list,str_count,1000,1); | ^~~~~~~~ | | | char ** /usr/include/X11/Xaw/List.h:170:27: note: expected 'const char **' but argument is of type 'char **' 170 | _Xconst char **list, | ^ . Both variables are only used as arguments to `XawListChange`, so change their types to match its expectations. --- a/x11/propwatch.c +++ b/x11/propwatch.c @@ -58,8 +58,8 @@ "WM_COMMAND", }; -static String *str_list; -static int str_count; +static const char **str_list; +static int str_count; static void AddWatch(Display *dpy, Window win, int i); static void DeleteWatch(Window win); @@ -306,13 +306,13 @@ static void RebuildList(void) { - static char *empty = "empty"; + static const char *empty = "empty"; int i; struct WATCHLIST *this; if (str_list) free(str_list); - str_list = malloc(str_count*sizeof(String)); + str_list = malloc(str_count*sizeof(*str_list)); for (i=0, this=watchlist; this!=NULL; i++, this=this->next) str_list[i] = this->text; qsort(str_list,str_count,sizeof(char*),cmp);
signature.asc
Description: PGP signature