summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--winsup/cygwin/ChangeLog11
-rw-r--r--winsup/cygwin/fhandler.h22
-rw-r--r--winsup/cygwin/fhandler_dsp.cc6
3 files changed, 25 insertions, 14 deletions
diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog
index 4565d1b2b..e4038c78d 100644
--- a/winsup/cygwin/ChangeLog
+++ b/winsup/cygwin/ChangeLog
@@ -1,3 +1,14 @@
+2014-03-19 Christopher Faylor <me.cygwin2014@cgf.cx>
+
+ * fhandler.h (fhandler_dev_dsp): Remove variable names from
+ declarations.
+ (fhandler_dev_dsp::close_audio_in): Make __reg1.
+ (fhandler_dev_dsp::close_audio_out): Make __reg2.
+ * fhandler_dev_dsp.cc (fhandler_dev_dsp::close_audio_in): Make __reg1.
+ (fhandler_dev_dsp::close_audio_out): Make __reg2.
+ (fhandler_dev_dsp::close): Don't abruptly terminate sound just because
+ we are exiting.
+
2014-03-19 Corinna Vinschen <corinna@vinschen.de>
* exception.h (exception::handle_while_being_debugged): Declare.
diff --git a/winsup/cygwin/fhandler.h b/winsup/cygwin/fhandler.h
index 663009622..c738071de 100644
--- a/winsup/cygwin/fhandler.h
+++ b/winsup/cygwin/fhandler.h
@@ -1792,23 +1792,23 @@ class fhandler_dev_dsp: public fhandler_base
fhandler_dev_dsp ();
fhandler_dev_dsp *base () const {return (fhandler_dev_dsp *)archetype;}
- int open (int flags, mode_t mode = 0);
- ssize_t __stdcall write (const void *ptr, size_t len);
- void __reg3 read (void *ptr, size_t& len);
- int ioctl (unsigned int cmd, void *);
+ int open (int, mode_t mode = 0);
+ ssize_t __stdcall write (const void *, size_t);
+ void __reg3 read (void *, size_t&);
+ int ioctl (unsigned int, void *);
int close ();
- void fixup_after_fork (HANDLE parent);
+ void fixup_after_fork (HANDLE);
void fixup_after_exec ();
private:
- ssize_t __stdcall _write (const void *ptr, size_t len);
- void __reg3 _read (void *ptr, size_t& len);
- int _ioctl (unsigned int cmd, void *);
- void _fixup_after_fork (HANDLE parent);
+ ssize_t __stdcall _write (const void *, size_t);
+ void __reg3 _read (void *, size_t&);
+ int _ioctl (unsigned int, void *);
+ void _fixup_after_fork (HANDLE);
void _fixup_after_exec ();
- void close_audio_in ();
- void close_audio_out (bool immediately = false);
+ void __reg1 close_audio_in ();
+ void __reg2 close_audio_out (bool = false);
bool use_archetype () const {return true;}
fhandler_dev_dsp (void *) {}
diff --git a/winsup/cygwin/fhandler_dsp.cc b/winsup/cygwin/fhandler_dsp.cc
index 70e9c1cb4..2f5019b2c 100644
--- a/winsup/cygwin/fhandler_dsp.cc
+++ b/winsup/cygwin/fhandler_dsp.cc
@@ -1160,7 +1160,7 @@ fhandler_dev_dsp::_read (void *ptr, size_t& len)
audio_in_->read ((char *)ptr, (int&)len);
}
-void
+void __reg1
fhandler_dev_dsp::close_audio_in ()
{
if (audio_in_)
@@ -1171,7 +1171,7 @@ fhandler_dev_dsp::close_audio_in ()
}
}
-void
+void __reg2
fhandler_dev_dsp::close_audio_out (bool immediately)
{
if (audio_out_)
@@ -1187,7 +1187,7 @@ fhandler_dev_dsp::close ()
{
debug_printf ("audio_in=%p audio_out=%p", audio_in_, audio_out_);
close_audio_in ();
- close_audio_out (exit_state != ES_NOT_EXITING);
+ close_audio_out ();
return fhandler_base::close ();
}