When compiling installwatch from ports, the following warnings appear: installwatch.c: In function `open': installwatch.c:577: warning: `mode_t' is promoted to `int' when passed through `...' installwatch.c:577: warning: (so you should pass `int' not `mode_t' to `va_arg') installwatch.c:577: note: if this code is reached, the program will abort The threat made by gcc on the last line is not an empty one. When using installwatch, it will exit with a bus error. Fix: There's probably a better way to fix this, but as mode is defined as an int in vfs_syscalls.c, I figured I'd just duplicate it here. It quickly alleviated the issue on my end. !DSPAM:2756,45d75d51678051410918767!--XpEvIuylUheDYx8Si5N2YPLQ8i8vm7Zdwyh6hRqV9h5x8soN Content-Type: text/plain; name="file.diff" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="file.diff" diff -urN installwatch.orig/files/patch-installwatch.c installwatch/files/patch-installwatch.c --- installwatch.orig/files/patch-installwatch.c Wed Dec 31 19:00:00 1969 +++ installwatch/files/patch-installwatch.c Sat Feb 17 14:46:14 2007 @@ -0,0 +1,11 @@ +--- installwatch.c.orig Sat Feb 17 14:45:22 2007 ++++ installwatch.c Sat Feb 17 14:45:47 2007 +@@ -574,7 +574,7 @@ + + REFCOUNT; + va_start(ap, flags); +- mode = va_arg(ap, mode_t); ++ mode = va_arg(ap, int); + va_end(ap); + canonicalize(pathname, canonic); + How-To-Repeat: Install installwatch on FreeBSD 6.2, try to use it.
Responsible Changed From-To: freebsd-ports-bugs->sergei Over to maintainer
Responsible Changed From-To: sergei->freebsd-ports-bugs Maintainer was reset.
State Changed From-To: open->closed Committed, thanks! Might be worth sending to the original author. Sorry for the long delay. -Volker