Setting up a specific ALPHA macro which is passed via CPPFLAGS to the
configure script in debian/rules is not elegant, because gcc has a
built-in __alpha__ macro to take care of it. Hence, here is the new
patch which will come in the 7.2.2-2 revision.

Cheers,
-- 
 .''`.   Aurélien GÉRÔME
: :'  :
`. `'`   Free Software Developer
  `-     Unix Sys & Net Admin
#! /bin/sh /usr/share/dpatch/dpatch-run
## 18_va_list_is_not_a_pointer.dpatch by Aurélien GÉRÔME <agroxor.cx>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: Fix va_list usage on Alpha which is not a pointer, but a struct.

@DPATCH@
diff -urNad ircd-hybrid-7.2.2~/src/s_user.c ircd-hybrid-7.2.2/src/s_user.c
--- ircd-hybrid-7.2.2~/src/s_user.c     2006-09-19 17:49:13.000000000 +0200
+++ ircd-hybrid-7.2.2/src/s_user.c      2006-09-19 17:57:30.648925324 +0200
@@ -427,8 +427,16 @@
   {
     const char *id = execute_callback(uid_get_cb, source_p);
 
-    while (hash_find_id(id) != NULL)
-      id = uid_get(NULL);
+    while (hash_find_id(id) != NULL) {
+      va_list vl;
+#ifdef __alpha__
+      vl.__base = NULL;
+      vl.__offset = 0;
+#else
+      vl = NULL;
+#endif
+      id = uid_get(vl);
+    }
 
     strlcpy(source_p->id, id, sizeof(source_p->id));
     hash_add_id(source_p);

Attachment: signature.asc
Description: Digital signature

Reply via email to