/*
 *  call-seq:
 *    stop  ->  self
 *
 *  Stop the Music. Unlike #pause, the music must be played again from
 *  the beginning, it cannot be resumed from it was stopped.
 *
 *  Returns::     The receiver (self).
 *
 *  **NOTE**: Does nothing if the music is not currently playing or paused.
 *
 */
static VALUE rg_music_stop( VALUE self )
{
  RG_Music *music;
  Data_Get_Struct(self,  RG_Music, music);

  /* Check that the music is current. */
  if( _rg_music_current_check(self) )
  {
    Mix_HaltMusic();
  }

  return self;
}