diff src/nas.c @ 613:023b83f4e54b

[xemacs-hg @ 2001-06-10 10:42:16 by ben] ------ signal-code changes ------ data.c, device-tty.c, emacs.c, floatfns.c, linuxplay.c, nas.c, process-unix.c, signal.c, sunplay.c, sysdep.c, syssignal.h: use EMACS_SIGNAL everywhere instead of playing preprocessing games with signal(). s\windowsnt.h, s\mingw32.h, syssignal.h: Remove mswindows signal code from s+m headers and move to syssignal.h as one of the five ways of signal handling, instead of playing preprocessing games. fileio.c, sysdep.c: Rename sys_do_signal to qxe_reliable_signal. signal.c, process-unix.c, profile.c: Create set_timeout_signal(); use instead of just EMACS_SIGNAL to establish a signal handler on a timeout signal; this does special things under Cygwin. nt.c: Eliminate term_ntproc(), which is blank; used as a SIGABRT handler, which was wrong anyway. nt.c, win32.c: Move signal code from nt.c to win32.c, since Cygwin needs it too when dealing with timeout signals. s\cygwin32.h: Define CYGWIN_BROKEN_SIGNALS. ------ other changes ------ s\mingw32.h: Fix problems with NOT_C_CODE being in the wrong place and excluding defines needed when building Makefile.in.in. filelock.c, mule-canna.c, mule-ccl.c, mule-ccl.h, ralloc.c, unexalpha.c, unexapollo.c, unexcw.c, unexelfsgi.c, unexnt.c, unexsni.c, s\aix3-1.h, s\bsd4-1.h, s\bsd4-2.h, s\bsd4-3.h, s\cxux.h, s\cygwin32.h, s\dgux.h, s\dgux5-4r2.h, s\dgux5-4r3.h, s\dgux5-4r4.h, s\ewsux5r4.h, s\gnu.h, s\hpux.h, s\iris3-5.h, s\iris3-6.h, s\irix3-3.h, s\linux.h, s\mingw32.h, s\newsos5.h, s\nextstep.h, s\ptx.h, s\riscix1-1.h, s\riscix1-2.h, s\rtu.h, s\sco4.h, s\sco5.h, s\template.h, s\ultrix.h, s\umax.h, s\umips.h, s\unipl5-0.h, s\unipl5-2.h, s\usg5-0.h, s\usg5-2-2.h, s\usg5-2.h, s\usg5-3.h, s\usg5-4.h, s\windowsnt.h, s\xenix.h: Rename 'GNU Emacs' to XEmacs in the copyright and comments. nas.c: Stylistic cleanup. Avoid preprocessing games with names such as play_sound_file. ------ signal-code changes ------ data.c, device-tty.c, emacs.c, floatfns.c, linuxplay.c, nas.c, process-unix.c, signal.c, sunplay.c, sysdep.c, syssignal.h: use EMACS_SIGNAL everywhere instead of playing preprocessing games with signal(). s\windowsnt.h, s\mingw32.h, syssignal.h: Remove mswindows signal code from s+m headers and move to syssignal.h as one of the five ways of signal handling, instead of playing preprocessing games. fileio.c, sysdep.c: Rename sys_do_signal to qxe_reliable_signal. signal.c, process-unix.c, profile.c: Create set_timeout_signal(); use instead of just EMACS_SIGNAL to establish a signal handler on a timeout signal; this does special things under Cygwin. nt.c: Eliminate term_ntproc(), which is blank; used as a SIGABRT handler, which was wrong anyway. nt.c, win32.c: Move signal code from nt.c to win32.c, since Cygwin needs it too when dealing with timeout signals. s\cygwin32.h: Define CYGWIN_BROKEN_SIGNALS. ------ other changes ------ s\mingw32.h: Fix problems with NOT_C_CODE being in the wrong place and excluding defines needed when building Makefile.in.in. filelock.c, mule-canna.c, mule-ccl.c, mule-ccl.h, ralloc.c, unexalpha.c, unexapollo.c, unexcw.c, unexelfsgi.c, unexnt.c, unexsni.c, s\aix3-1.h, s\bsd4-1.h, s\bsd4-2.h, s\bsd4-3.h, s\cxux.h, s\cygwin32.h, s\dgux.h, s\dgux5-4r2.h, s\dgux5-4r3.h, s\dgux5-4r4.h, s\ewsux5r4.h, s\gnu.h, s\hpux.h, s\iris3-5.h, s\iris3-6.h, s\irix3-3.h, s\linux.h, s\mingw32.h, s\newsos5.h, s\nextstep.h, s\ptx.h, s\riscix1-1.h, s\riscix1-2.h, s\rtu.h, s\sco4.h, s\sco5.h, s\template.h, s\ultrix.h, s\umax.h, s\umips.h, s\unipl5-0.h, s\unipl5-2.h, s\usg5-0.h, s\usg5-2-2.h, s\usg5-2.h, s\usg5-3.h, s\usg5-4.h, s\windowsnt.h, s\xenix.h: Rename 'GNU Emacs' to XEmacs in the copyright and comments. nas.c: Stylistic cleanup. Avoid preprocessing games with names such as play_sound_file. xemacs-faq.texi: Update sections on Windows and MacOS availability. alist.el, apropos.el, autoload.el, bytecomp.el, cl-compat.el, cl-extra.el, cl-macs.el, cl-seq.el, cl.el, cmdloop.el, cus-edit.el, derived.el, gpm.el, itimer.el, lisp-mode.el, shadow.el, version.el, wid-browse.el: Rename 'GNU Emacs' to XEmacs in the copyright. Fix other references to GNU Emacs that should be XEmacs or just Emacs. files.el: Fix warning. simple.el: transpose-line-up/down will now move the region up or down by a line if active. cvtmail.c, fakemail.c, gnuserv.c, gnuserv.h, gnuslib.c, make-msgfile.c, make-path.c, pop.c, pop.h, profile.c, tcp.c: Rename 'GNU Emacs' to XEmacs in the copyright. Fix comments in similar ways. digest-doc.c, sorted-doc.c: Fix program and author name to reflect XEmacs.
author ben
date Sun, 10 Jun 2001 10:42:39 +0000
parents 183866b06e0b
children 6728e641994e
line wrap: on
line diff
--- a/src/nas.c	Sat Jun 09 09:02:04 2001 +0000
+++ b/src/nas.c	Sun Jun 10 10:42:39 2001 +0000
@@ -82,37 +82,29 @@
 
 /* NAS <= 1.2p5 <audio/fileutil.h> doesn't define the NAS_ versions */
 #ifndef NAS_LITTLE_ENDIAN
-#define NAS_LITTLE_ENDIAN LITTLE_ENDIAN
-#define NAS_BIG_ENDIAN BIG_ENDIAN
+# define NAS_LITTLE_ENDIAN LITTLE_ENDIAN
+# define NAS_BIG_ENDIAN BIG_ENDIAN
 #endif
 
-#    define XTOOLKIT
-#    define XTEVENTS
-#    define ROBUST_PLAY
-#    define CACHE_SOUNDS
+#define XTOOLKIT
+#define XTEVENTS
+#define ROBUST_PLAY
+#define CACHE_SOUNDS
 
     /*
      * For old NAS libraries, force playing to be synchronous
      * and declare the long jump point locally.
      */
 
-#    if defined (NAS_NO_ERROR_JUMP)
-
-#	undef XTEVENTS
-
-#	include <setjmp.h>
-	jmp_buf AuXtErrorJump;
-#    endif
-
-#    define play_sound_file nas_play_sound_file
-#    define play_sound_data nas_play_sound_data
-#    define wait_for_sounds nas_wait_for_sounds
-#    define init_play       nas_init_play
-#    define close_down_play nas_close_down_play
+#if defined (NAS_NO_ERROR_JUMP)
+# undef XTEVENTS
+# include <setjmp.h>
+jmp_buf AuXtErrorJump;
+#endif
 
 #ifdef XTOOLKIT
-#    include <X11/Intrinsic.h>
-#    include <audio/Xtutil.h>
+# include <X11/Intrinsic.h>
+# include <audio/Xtutil.h>
 #endif
 
 #if defined (ROBUST_PLAY)
@@ -139,7 +131,7 @@
 #endif /* XTOOLKIT */
 
 Extbyte *
-init_play (
+nas_init_play (
 #ifdef XTOOLKIT
 	   Display *display
 #else
@@ -147,7 +139,7 @@
 #endif
 	   );
 Extbyte *
-init_play (
+nas_init_play (
 #ifdef XTOOLKIT
 	   Display *display
 #else
@@ -169,10 +161,10 @@
 #endif
 
 #ifdef ROBUST_PLAY
-  old_sigpipe = signal (SIGPIPE, sigpipe_handle);
+  old_sigpipe = EMACS_SIGNAL (SIGPIPE, sigpipe_handle);
   if (setjmp (AuXtErrorJump))
     {
-      signal (SIGPIPE, old_sigpipe);
+      EMACS_SIGNAL (SIGPIPE, old_sigpipe);
 #ifdef emacs
       start_interrupts ();
 #endif  
@@ -195,7 +187,7 @@
   if (!aud)
     {
 #ifdef ROBUST_PLAY
-      signal (SIGPIPE, old_sigpipe);
+      EMACS_SIGNAL (SIGPIPE, old_sigpipe);
 #endif
       if (err_message == NULL)
 	return "Can't connect to audio server";
@@ -222,7 +214,7 @@
 #endif
 
 #ifdef ROBUST_PLAY
-  signal (SIGPIPE, old_sigpipe);
+  EMACS_SIGNAL (SIGPIPE, old_sigpipe);
 #endif
 
   sounds_in_play = 0;
@@ -231,7 +223,7 @@
 }
 
 static void
-close_down_play (void)
+nas_close_down_play (void)
 
 {
   AuCloseServer (aud);
@@ -329,9 +321,9 @@
 #endif /* CACHE_SOUNDS */
 
 
-void wait_for_sounds (void);
+void nas_wait_for_sounds (void);
 void 
-wait_for_sounds (void)
+nas_wait_for_sounds (void)
 
 {
   AuEvent         ev;
@@ -343,45 +335,46 @@
     }
 }
 
-int play_sound_file (Extbyte *sound_file, int volume);
+int nas_play_sound_file (Extbyte *sound_file, int volume);
 int
-play_sound_file (Extbyte *sound_file,
-		 int volume)
+nas_play_sound_file (Extbyte *sound_file,
+		     int volume)
 {
   SIGTYPE (*old_sigpipe) (int);
 
 #ifdef ROBUST_PLAY
-  old_sigpipe=signal (SIGPIPE, sigpipe_handle);
+  old_sigpipe = EMACS_SIGNAL (SIGPIPE, sigpipe_handle);
   if (setjmp (AuXtErrorJump))
     {
-      signal (SIGPIPE, old_sigpipe);
+      EMACS_SIGNAL (SIGPIPE, old_sigpipe);
       return 0;
     }
 #endif
 
-  if (aud==NULL) {
-    if (aud_server != NULL)
-      {
-	Extbyte *m;
-	/* attempt to reconect */
-	if ((m=init_play (aud_server))!= NULL)
-	  {
-
+  if (aud==NULL)
+    {
+      if (aud_server != NULL)
+	{
+	  Extbyte *m;
+	  /* attempt to reconect */
+	  if ((m = nas_init_play (aud_server)) != NULL)
+	    {
+	      
 #ifdef ROBUST_PLAY
-	    signal (SIGPIPE, old_sigpipe);
+	      EMACS_SIGNAL (SIGPIPE, old_sigpipe);
 #endif
-	    return 0;
-	  }
-      }
-    else
-      {
-	sound_warn ("Attempt to play with no audio init\n");
+	      return 0;
+	    }
+	}
+      else
+	{
+	  sound_warn ("Attempt to play with no audio init\n");
 #ifdef ROBUST_PLAY
-	signal (SIGPIPE, old_sigpipe);
+	  EMACS_SIGNAL (SIGPIPE, old_sigpipe);
 #endif
-	return 0;
-      }
-  }
+	  return 0;
+	}
+    }
 
 #ifndef CACHE_SOUNDS
   sounds_in_play++;
@@ -403,7 +396,7 @@
     if ((s = SoundOpenFileForReading (sound_file))==NULL)
       {
 #ifdef ROBUST_PLAY
-	signal (SIGPIPE, old_sigpipe);
+	EMACS_SIGNAL (SIGPIPE, old_sigpipe);
 #endif
 	return 0;
       }
@@ -421,26 +414,22 @@
 #endif /* CACHE_SOUNDS */
 
 #ifndef XTEVENTS
-  wait_for_sounds ();
+  nas_wait_for_sounds ();
 #else
   if (!NILP (Vsynchronous_sounds))
-    {
-      wait_for_sounds ();
-    }
+    nas_wait_for_sounds ();
 #endif
 
 #ifdef ROBUST_PLAY
-  signal (SIGPIPE, old_sigpipe);
+  EMACS_SIGNAL (SIGPIPE, old_sigpipe);
 #endif
 
   return 1;
 }
 
-int play_sound_data (UChar_Binary *data, int length, int volume);
+int nas_play_sound_data (UChar_Binary *data, int length, int volume);
 int
-play_sound_data (UChar_Binary *data,
-		 int length, 
-		 int volume)
+nas_play_sound_data (UChar_Binary *data, int length, int volume)
 {
   Sound s;
   int offset;
@@ -451,10 +440,10 @@
 #endif
 
 #ifdef ROBUST_PLAY
-  old_sigpipe = signal (SIGPIPE, sigpipe_handle);
-  if (setjmp (AuXtErrorJump) !=0)
+  old_sigpipe = EMACS_SIGNAL (SIGPIPE, sigpipe_handle);
+  if (setjmp (AuXtErrorJump) != 0)
     {
-      signal (SIGPIPE, old_sigpipe);
+      EMACS_SIGNAL (SIGPIPE, old_sigpipe);
       return 0;
     }
 #endif
@@ -465,10 +454,10 @@
       {
 	Extbyte *m;
 	/* attempt to reconect */
-	if ((m = init_play (aud_server)) != NULL)
+	if ((m = nas_init_play (aud_server)) != NULL)
 	  {
 #ifdef ROBUST_PLAY
-	    signal (SIGPIPE, old_sigpipe);
+	    EMACS_SIGNAL (SIGPIPE, old_sigpipe);
 #endif
 	    return 0;
 	  }
@@ -477,7 +466,7 @@
       {
 	sound_warn ("Attempt to play with no audio init\n");
 #ifdef ROBUST_PLAY
-	signal (SIGPIPE, old_sigpipe);
+	EMACS_SIGNAL (SIGPIPE, old_sigpipe);
 #endif
 	return 0;
       }
@@ -487,7 +476,7 @@
     {
       sound_warn ("unknown sound type");
 #ifdef ROBUST_PLAY
-      signal (SIGPIPE, old_sigpipe);
+      EMACS_SIGNAL (SIGPIPE, old_sigpipe);
 #endif
       return 0;
     }
@@ -506,7 +495,7 @@
       sound_warn ("only understand snd and wave files at the moment");
       SoundCloseFile (s);
 #ifdef ROBUST_PLAY
-      signal (SIGPIPE, old_sigpipe);
+      EMACS_SIGNAL (SIGPIPE, old_sigpipe);
 #endif
       return 0;
     }
@@ -526,25 +515,21 @@
 #else
   /* Cache the sounds in buckets on the server */
 
-  {
-    do_caching_play (s, volume, data+offset);
-  }
+  do_caching_play (s, volume, data+offset);
 #endif /* CACHE_SOUNDS */
 
 
 #ifndef XTEVENTS
-  wait_for_sounds ();
+  nas_wait_for_sounds ();
 #else
   if (!NILP (Vsynchronous_sounds))
-    {
-      wait_for_sounds ();
-    }
+    nas_wait_for_sounds ();
 #endif
 
   SoundCloseFile (s); 
 
 #ifdef ROBUST_PLAY
-  signal (SIGPIPE, old_sigpipe);
+  EMACS_SIGNAL (SIGPIPE, old_sigpipe);
 #endif
 
   return 1;
@@ -570,9 +555,7 @@
 
 #ifdef XTEVENTS
 #ifdef XTOOLKIT
-  {
-    AuXtAppRemoveAudioHandler (aud, input_id); 
-  }
+  AuXtAppRemoveAudioHandler (aud, input_id); 
 #endif
 
   if (aud)
@@ -808,36 +791,36 @@
 static unsigned short
 DataReadS (int swapit)
 {
-    unsigned short us;
+  unsigned short us;
 
-    dread(&us, 2, 1);
-    if (swapit)
-	us = FileSwapS(us);
-    return us;
+  dread(&us, 2, 1);
+  if (swapit)
+    us = FileSwapS(us);
+  return us;
 }
 
 static AuUint32
 DataReadL (int swapit)
 {
-    AuUint32 ul;
+  AuUint32 ul;
 
-    dread(&ul, 4, 1);
-    if (swapit)
-	ul = FileSwapL(ul);
-    return ul;
+  dread(&ul, 4, 1);
+  if (swapit)
+    ul = FileSwapL(ul);
+  return ul;
 }
 
 static int
 readChunk (RiffChunk *c)
 {
-    int             status;
-    Char_Binary            n;
+  int             status;
+  Char_Binary            n;
 
-    if ((status = dread(c, sizeof(RiffChunk), 1)))
-	if (NAS_BIG_ENDIAN)
-	    swapl(&c->ckSize, n);
+  if ((status = dread(c, sizeof(RiffChunk), 1)))
+    if (NAS_BIG_ENDIAN)
+      swapl(&c->ckSize, n);
 
-    return status;
+  return status;
 }
 
 /* A very straight-forward translation of WaveOpenFileForReading to
@@ -847,133 +830,133 @@
 WaveOpenDataForReading (const Char_Binary *data,
 			int length)
 {
-    RiffChunk       ck;
-    RIFF_FOURCC     fourcc;
-    AuInt32            fileSize;
-    WaveInfo       *wi;
+  RiffChunk       ck;
+  RIFF_FOURCC     fourcc;
+  AuInt32            fileSize;
+  WaveInfo       *wi;
 
     
-    if (!(wi = (WaveInfo *) malloc(sizeof(WaveInfo))))
-	return NULL;
+  if (!(wi = (WaveInfo *) malloc(sizeof(WaveInfo))))
+    return NULL;
 
-    wi->comment = NULL;
-    wi->dataOffset = wi->format = wi->writing = 0;
+  wi->comment = NULL;
+  wi->dataOffset = wi->format = wi->writing = 0;
 
-    dopen(data, length);
+  dopen(data, length);
     
-    if (!readChunk(&ck) ||
-	cmpID(&ck.ckID, RIFF_RiffID) ||
-	!readFourcc(&fourcc) ||
-	cmpID(&fourcc, RIFF_WaveID))
+  if (!readChunk(&ck) ||
+      cmpID(&ck.ckID, RIFF_RiffID) ||
+      !readFourcc(&fourcc) ||
+      cmpID(&fourcc, RIFF_WaveID))
+    Err();
+
+  fileSize = PAD2(ck.ckSize) - sizeof(RIFF_FOURCC);
+
+  while (fileSize >= sizeof(RiffChunk))
+    {
+      if (!readChunk(&ck))
 	Err();
 
-    fileSize = PAD2(ck.ckSize) - sizeof(RIFF_FOURCC);
+      fileSize -= sizeof(RiffChunk) + PAD2(ck.ckSize);
 
-    while (fileSize >= sizeof(RiffChunk))
-    {
-	if (!readChunk(&ck))
+      /* LIST chunk */
+      if (!cmpID(&ck.ckID, RIFF_ListID))
+	{
+	  if (!readFourcc(&fourcc))
 	    Err();
 
-	fileSize -= sizeof(RiffChunk) + PAD2(ck.ckSize);
+	  /* INFO chunk */
+	  if (!cmpID(&fourcc, RIFF_ListInfoID))
+	    {
+	      ck.ckSize -= sizeof(RIFF_FOURCC);
 
-	/* LIST chunk */
-	if (!cmpID(&ck.ckID, RIFF_ListID))
-	{
-	    if (!readFourcc(&fourcc))
-		Err();
+	      while (ck.ckSize)
+		{
+		  RiffChunk       c;
 
-	    /* INFO chunk */
-	    if (!cmpID(&fourcc, RIFF_ListInfoID))
-	    {
-		ck.ckSize -= sizeof(RIFF_FOURCC);
+		  if (!readChunk(&c))
+		    Err();
 
-		while (ck.ckSize)
-		{
-		    RiffChunk       c;
-
-		    if (!readChunk(&c))
+		  /* ICMT chunk */
+		  if (!cmpID(&c.ckID, RIFF_InfoIcmtID))
+		    {
+		      if (!(wi->comment = (Extbyte *) malloc(c.ckSize)) ||
+			  !dread(wi->comment, c.ckSize, 1))
 			Err();
 
-		    /* ICMT chunk */
-		    if (!cmpID(&c.ckID, RIFF_InfoIcmtID))
-		    {
-			if (!(wi->comment = (Extbyte *) malloc(c.ckSize)) ||
-			    !dread(wi->comment, c.ckSize, 1))
-			    Err();
+		      if (c.ckSize & 1)
+			dgetc(); /* eat the pad byte */
+		    }
+		  else
+		    /* skip unknown chunk */
+		    dseek(PAD2(c.ckSize), 1);
 
-			if (c.ckSize & 1)
-			    dgetc();	/* eat the pad byte */
-		    }
-		    else
-			/* skip unknown chunk */
-			dseek(PAD2(c.ckSize), 1);
-
-		    ck.ckSize -= sizeof(RiffChunk) + PAD2(c.ckSize);
+		  ck.ckSize -= sizeof(RiffChunk) + PAD2(c.ckSize);
 		}
 	    }
-	    else
-		/* skip unknown chunk */
-		dseek(PAD2(ck.ckSize) - sizeof(RIFF_FOURCC), 1);
+	  else
+	    /* skip unknown chunk */
+	    dseek(PAD2(ck.ckSize) - sizeof(RIFF_FOURCC), 1);
 	}
-	/* wave format chunk */
-	else if (!cmpID(&ck.ckID, RIFF_WaveFmtID) && !wi->format)
+      /* wave format chunk */
+      else if (!cmpID(&ck.ckID, RIFF_WaveFmtID) && !wi->format)
 	{
-	    AuInt32            dummy;
+	  AuInt32            dummy;
 
-	    wi->format = DataReadS(NAS_BIG_ENDIAN);
-	    wi->channels = DataReadS(NAS_BIG_ENDIAN);
-	    wi->sampleRate = DataReadL(NAS_BIG_ENDIAN);
+	  wi->format = DataReadS(NAS_BIG_ENDIAN);
+	  wi->channels = DataReadS(NAS_BIG_ENDIAN);
+	  wi->sampleRate = DataReadL(NAS_BIG_ENDIAN);
 
-	    /* we don't care about the next two fields */
-	    dummy = DataReadL(NAS_BIG_ENDIAN);
-	    dummy = DataReadS(NAS_BIG_ENDIAN);
+	  /* we don't care about the next two fields */
+	  dummy = DataReadL(NAS_BIG_ENDIAN);
+	  dummy = DataReadS(NAS_BIG_ENDIAN);
 
-	    if (wi->format != RIFF_WAVE_FORMAT_PCM)
-		Err();
+	  if (wi->format != RIFF_WAVE_FORMAT_PCM)
+	    Err();
 
-	    wi->bitsPerSample = DataReadS(NAS_BIG_ENDIAN);
+	  wi->bitsPerSample = DataReadS(NAS_BIG_ENDIAN);
 
-	    /* skip any other format specific fields */
-	    dseek(PAD2(ck.ckSize - 16), 1);
+	  /* skip any other format specific fields */
+	  dseek(PAD2(ck.ckSize - 16), 1);
 	}
-	/* wave data chunk */
-	else if (!cmpID(&ck.ckID, RIFF_WaveDataID) && !wi->dataOffset)
+      /* wave data chunk */
+      else if (!cmpID(&ck.ckID, RIFF_WaveDataID) && !wi->dataOffset)
 	{
-	    long endOfFile;
+	  long endOfFile;
 
-	    wi->dataOffset = dtell();
-	    wi->dataSize = ck.ckSize;
-	    dseek(0, 2);
-	    endOfFile = dtell();
+	  wi->dataOffset = dtell();
+	  wi->dataSize = ck.ckSize;
+	  dseek(0, 2);
+	  endOfFile = dtell();
 
-	    /* seek past the data */
-	    if (dseek(wi->dataOffset + PAD2(ck.ckSize), 0) ||
-		dtell() > endOfFile)
+	  /* seek past the data */
+	  if (dseek(wi->dataOffset + PAD2(ck.ckSize), 0) ||
+	      dtell() > endOfFile)
 	    {
-		/* the seek failed, assume the size is bogus */
-		dseek(0, 2);
-		wi->dataSize = dtell() - wi->dataOffset;
+	      /* the seek failed, assume the size is bogus */
+	      dseek(0, 2);
+	      wi->dataSize = dtell() - wi->dataOffset;
 	    }
 
-	    wi->dataOffset -= sizeof(long);
+	  wi->dataOffset -= sizeof(long);
 	}
-	else
-	    /* skip unknown chunk */
-	    dseek(PAD2(ck.ckSize), 1);
+      else
+	/* skip unknown chunk */
+	dseek(PAD2(ck.ckSize), 1);
     }
 
-    if (!wi->dataOffset)
-	Err();
+  if (!wi->dataOffset)
+    Err();
 
-    wi->numSamples = wi->dataSize / wi->channels / (wi->bitsPerSample >> 3);
+  wi->numSamples = wi->dataSize / wi->channels / (wi->bitsPerSample >> 3);
 
-    if (!wi->comment)
-       wi->comment = NameFromData (data + wi->dataOffset,
-                                   length - wi->dataOffset);
+  if (!wi->comment)
+    wi->comment = NameFromData (data + wi->dataOffset,
+				length - wi->dataOffset);
 
-    wi->fp = NULL;
+  wi->fp = NULL;
     
-    return wi;
+  return wi;
 }