XEmacs 21.2.32 "Kastor & Polydeukes".
[chise/xemacs-chise.git.1] / src / sound.c
index c9fe1b0..ccf6b41 100644 (file)
@@ -126,7 +126,9 @@ Windows the sound file must be in WAV format.
     {
       char *fileext;
 
-      GET_C_STRING_FILENAME_DATA_ALLOCA (file, fileext);
+      TO_EXTERNAL_FORMAT (LISP_STRING, file,
+                         C_STRING_ALLOCA, fileext,
+                         Qfile_name);
       /* #### NAS code should allow specification of a device. */
       if (nas_play_sound_file (fileext, vol))
        return Qnil;
@@ -138,7 +140,9 @@ Windows the sound file must be in WAV format.
     {
       char *fileext;
 
-      GET_C_STRING_FILENAME_DATA_ALLOCA (file, fileext);
+      TO_EXTERNAL_FORMAT (LISP_STRING, file,
+                         C_STRING_ALLOCA, fileext,
+                         Qfile_name);
       if (esd_play_sound_file (fileext, vol))
        return Qnil;
     }
@@ -147,9 +151,11 @@ Windows the sound file must be in WAV format.
 #ifdef HAVE_NATIVE_SOUND
   if (NILP (Vnative_sound_only_on_console) || DEVICE_ON_CONSOLE_P (d))
     {
-      CONST char *fileext;
+      const char *fileext;
 
-      GET_C_STRING_FILENAME_DATA_ALLOCA (file, fileext);
+      TO_EXTERNAL_FORMAT (LISP_STRING, file,
+                         C_STRING_ALLOCA, fileext,
+                         Qfile_name);
       /* The sound code doesn't like getting SIGIO interrupts.
         Unix sucks! */
       stop_interrupts ();
@@ -311,10 +317,12 @@ See the variable `sound-alist'.
 #ifdef HAVE_NAS_SOUND
   if (DEVICE_CONNECTED_TO_NAS_P (d) && STRINGP (sound))
     {
-      CONST Extbyte *soundext;
+      const Extbyte *soundext;
       Extcount soundextlen;
 
-      GET_STRING_BINARY_DATA_ALLOCA (sound, soundext, soundextlen);
+      TO_EXTERNAL_FORMAT (LISP_STRING, sound,
+                         ALLOCA, (soundext, soundextlen),
+                         Qbinary);
       if (nas_play_sound_data ((unsigned char*)soundext, soundextlen, vol))
        return Qnil;
     }
@@ -326,7 +334,8 @@ See the variable `sound-alist'.
       Extbyte *soundext;
       Extcount soundextlen;
 
-      GET_STRING_BINARY_DATA_ALLOCA (sound, soundext, soundextlen);
+      TO_EXTERNAL_FORMAT (LISP_STRING, sound, ALLOCA, (soundext, soundextlen),
+                         Qbinary);
       if (esd_play_sound_data (soundext, soundextlen, vol))
        return Qnil;
     }
@@ -336,10 +345,12 @@ See the variable `sound-alist'.
   if ((NILP (Vnative_sound_only_on_console) || DEVICE_ON_CONSOLE_P (d))
       && STRINGP (sound))
     {
-      CONST Extbyte *soundext;
+      const Extbyte *soundext;
       Extcount soundextlen;
 
-      GET_STRING_BINARY_DATA_ALLOCA (sound, soundext, soundextlen);
+      TO_EXTERNAL_FORMAT (LISP_STRING, sound,
+                         ALLOCA, (soundext, soundextlen),
+                         Qbinary);
       /* The sound code doesn't like getting SIGIO interrupts. Unix sucks! */
       stop_interrupts ();
       play_sound_data ((unsigned char*)soundext, soundextlen, vol);
@@ -393,7 +404,7 @@ device).
   
   if (d == last_bell_device && now-last_bell_time < bell_inhibit_time)
     return Qnil;
-  else if (visible_bell && DEVMETH (d, flash, (d)))
+  else if (!NILP (Vvisible_bell) && DEVMETH (d, flash, (d)))
     ;
   else
     Fplay_sound (sound, Qnil, device);
@@ -436,13 +447,11 @@ Return t if connected to NAS server for sounds on DEVICE.
 static void
 init_nas_sound (struct device *d)
 {
-  char *error;
-
 #ifdef HAVE_X_WINDOWS
   if (DEVICE_X_P (d))
     {
-      error = nas_init_play (DEVICE_X_DISPLAY (d));
-      DEVICE_CONNECTED_TO_NAS_P (d) = !error;
+      char *err_message = nas_init_play (DEVICE_X_DISPLAY (d));
+      DEVICE_CONNECTED_TO_NAS_P (d) = !err_message;
       /* Print out the message? */
     }
 #endif /* HAVE_X_WINDOWS */
@@ -562,6 +571,9 @@ vars_of_sound (void)
 #ifdef HAVE_NAS_SOUND
   Fprovide (intern ("nas-sound"));
 #endif
+#ifdef HAVE_ESD_SOUND
+  Fprovide (intern ("esd-sound"));
+#endif
 
   DEFVAR_INT ("bell-volume", &bell_volume /*
 *How loud to be, from 0 to 100.