diff options
author | Joe Marcus Clarke <marcus@FreeBSD.org> | 2005-04-27 03:38:33 +0000 |
---|---|---|
committer | Joe Marcus Clarke <marcus@FreeBSD.org> | 2005-04-27 03:38:33 +0000 |
commit | fc0c338e9f2edac130ccf2b8513cbb2ab20719e2 (patch) | |
tree | 8adafcf6166d295f8d81100346af0cdf95f7d21c /audio/esound/files | |
parent | Make this work with readline from ports. (diff) |
Only process the var_args argument to open() if flags contain O_CREAT.
This avoids a bus error crash when using esddsp.
PR: 80382
Diffstat (limited to 'audio/esound/files')
-rw-r--r-- | audio/esound/files/patch-esddsp.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/audio/esound/files/patch-esddsp.c b/audio/esound/files/patch-esddsp.c new file mode 100644 index 000000000000..c1175da944ab --- /dev/null +++ b/audio/esound/files/patch-esddsp.c @@ -0,0 +1,18 @@ +--- esddsp.c.orig Tue Apr 26 22:41:23 2005 ++++ esddsp.c Tue Apr 26 22:42:04 2005 +@@ -223,9 +223,12 @@ open (const char *pathname, int flags, . + + dsp_init (); + +- va_start (args, flags); +- mode = va_arg (args, mode_t); +- va_end (args); ++ if ((flags & O_CREAT) != 0) ++ { ++ va_start (args, flags); ++ mode = va_arg (args, int); ++ va_end (args); ++ } + + if (!strcmp (pathname, "/dev/dsp")) + { |