change NULL to (NULL) for GST_ELEMENT_ERROR

Original commit message from CVS:
change NULL to (NULL) for GST_ELEMENT_ERROR
Make sure errors end with "."
diff --git a/ChangeLog b/ChangeLog
index 6e4b3c2..1955ac7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,150 @@
 2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
 
+	reviewed by: <delete if not using a buddy>
+
+	* ext/aalib/gstaasink.c: (gst_aasink_open):
+	* ext/alsa/gstalsa.c: (gst_alsa_link), (gst_alsa_xrun_recovery):
+	* ext/alsa/gstalsasink.c: (gst_alsa_sink_loop):
+	* ext/alsa/gstalsasrc.c: (gst_alsa_src_loop):
+	* ext/audiofile/gstafsink.c: (gst_afsink_open_file),
+	(gst_afsink_close_file):
+	* ext/audiofile/gstafsrc.c: (gst_afsrc_open_file),
+	(gst_afsrc_close_file):
+	* ext/divx/gstdivxdec.c: (gst_divxdec_setup), (gst_divxdec_chain):
+	* ext/divx/gstdivxenc.c: (gst_divxenc_setup), (gst_divxenc_chain):
+	* ext/dv/gstdvdec.c: (gst_dvdec_loop):
+	* ext/dvdnav/dvdnavsrc.c: (dvdnavsrc_user_op), (dvdnavsrc_get):
+	* ext/esd/esdmon.c: (gst_esdmon_get):
+	* ext/esd/esdsink.c: (gst_esdsink_chain), (gst_esdsink_open_audio):
+	* ext/faac/gstfaac.c: (gst_faac_chain):
+	* ext/faad/gstfaad.c: (gst_faad_chain):
+	* ext/ffmpeg/gstffmpegdec.c: (gst_ffmpegdec_chain):
+	* ext/ffmpeg/gstffmpegdemux.c: (gst_ffmpegdemux_loop):
+	* ext/ffmpeg/gstffmpegmux.c: (gst_ffmpegmux_loop):
+	* ext/flac/gstflacdec.c: (gst_flacdec_error_callback),
+	(gst_flacdec_loop):
+	* ext/flac/gstflacenc.c: (gst_flacenc_chain):
+	* ext/flac/gstflactag.c: (gst_flac_tag_chain):
+	* ext/gdk_pixbuf/gstgdkpixbuf.c: (gst_gdk_pixbuf_chain):
+	* ext/gnomevfs/gstgnomevfssink.c: (gst_gnomevfssink_open_file),
+	(gst_gnomevfssink_close_file):
+	* ext/gnomevfs/gstgnomevfssrc.c: (audiocast_init),
+	(gst_gnomevfssrc_open_file):
+	* ext/ivorbis/vorbisfile.c: (gst_ivorbisfile_loop):
+	* ext/lame/gstlame.c: (gst_lame_sink_link), (gst_lame_chain):
+	* ext/lcs/gstcolorspace.c: (gst_colorspace_srcconnect_func):
+	* ext/mad/gstid3tag.c: (gst_id3_tag_handle_event),
+	(gst_id3_tag_do_typefind), (gst_id3_tag_chain):
+	* ext/mad/gstmad.c: (gst_mad_chain):
+	* ext/mikmod/gstmikmod.c: (gst_mikmod_loop):
+	* ext/mpeg2dec/gstmpeg2dec.c:
+	* ext/mpeg2enc/gstmpeg2enc.cc:
+	* ext/mplex/gstmplex.cc:
+	* ext/mplex/gstmplexibitstream.cc:
+	* ext/ogg/gstoggdemux.c: (gst_ogg_demux_chain),
+	(gst_ogg_demux_push):
+	* ext/raw1394/gstdv1394src.c:
+	* ext/sdl/sdlvideosink.c: (gst_sdlvideosink_lock),
+	(gst_sdlvideosink_initsdl), (gst_sdlvideosink_create):
+	* ext/sndfile/gstsf.c: (gst_sf_open_file), (gst_sf_close_file),
+	(gst_sf_loop):
+	* ext/speex/gstspeexenc.c: (gst_speexenc_chain):
+	* ext/swfdec/gstswfdec.c: (gst_swfdec_loop):
+	* ext/tarkin/gsttarkindec.c: (gst_tarkindec_chain):
+	* ext/tarkin/gsttarkinenc.c: (gst_tarkinenc_chain):
+	* ext/vorbis/vorbisenc.c: (gst_vorbisenc_chain):
+	* ext/vorbis/vorbisfile.c: (gst_vorbisfile_loop):
+	* ext/xvid/gstxviddec.c: (gst_xviddec_setup), (gst_xviddec_chain):
+	* ext/xvid/gstxvidenc.c: (gst_xvidenc_setup), (gst_xvidenc_chain):
+	* gst-libs/gst/riff/riff-read.c: (gst_riff_peek_head),
+	(gst_riff_read_element_data), (gst_riff_read_seek),
+	(gst_riff_peek_list), (gst_riff_read_list), (gst_riff_read_header):
+	* gst/adder/gstadder.c: (gst_adder_loop):
+	* gst/asfdemux/gstasfdemux.c: (gst_asf_demux_process_segment),
+	(gst_asf_demux_process_stream), (gst_asf_demux_get_stream):
+	* gst/avi/gstavidemux.c: (gst_avi_demux_stream_init),
+	(gst_avi_demux_add_stream), (gst_avi_demux_stream_header):
+	* gst/avi/gstavimux.c: (gst_avimux_stop_file):
+	* gst/flx/gstflxdec.c: (gst_flxdec_loop):
+	* gst/goom/gstgoom.c: (gst_goom_chain):
+	* gst/id3/gstid3types.c: (gst_id3types_loop):
+	* gst/intfloat/float22int.c: (gst_float2_2_int_chain):
+	* gst/intfloat/gstfloat2int.c: (gst_float2int_loop):
+	* gst/intfloat/gstint2float.c: (gst_int2float_chain_gint16):
+	* gst/matroska/ebml-read.c: (gst_ebml_read_element_id),
+	(gst_ebml_read_element_length), (gst_ebml_read_element_data),
+	(gst_ebml_read_seek), (gst_ebml_read_uint), (gst_ebml_read_sint),
+	(gst_ebml_read_float), (gst_ebml_read_header):
+	* gst/matroska/matroska-demux.c: (gst_matroska_demux_init_stream),
+	(gst_matroska_demux_parse_blockgroup):
+	* gst/monoscope/gstmonoscope.c: (gst_monoscope_chain):
+	* gst/mpegstream/gstmpegparse.c: (gst_mpeg_parse_loop):
+	* gst/oneton/gstoneton.c: (gst_oneton_chain):
+	* gst/silence/gstsilence.c: (gst_silence_get):
+	* gst/sine/gstsinesrc.c: (gst_sinesrc_get):
+	* gst/smpte/gstsmpte.c: (gst_smpte_loop):
+	* gst/speed/gstspeed.c: (speed_loop):
+	* gst/tags/gstvorbistag.c: (gst_vorbis_tag_chain):
+	* gst/videotestsrc/gstvideotestsrc.c: (gst_videotestsrc_get):
+	* gst/volenv/gstvolenv.c: (gst_volenv_chain):
+	* gst/wavenc/gstwavenc.c: (gst_wavenc_chain):
+	* gst/wavparse/gstwavparse.c: (gst_wavparse_parse_fmt),
+	(gst_wavparse_loop):
+	* sys/dxr3/dxr3audiosink.c: (dxr3audiosink_open),
+	(dxr3audiosink_set_mode_pcm), (dxr3audiosink_set_mode_ac3),
+	(dxr3audiosink_close):
+	* sys/dxr3/dxr3spusink.c: (dxr3spusink_open), (dxr3spusink_close):
+	* sys/dxr3/dxr3videosink.c: (dxr3videosink_open),
+	(dxr3videosink_close), (dxr3videosink_write_data):
+	* sys/oss/gstosselement.c: (gst_osselement_open_audio):
+	* sys/oss/gstosssink.c: (gst_osssink_chain):
+	* sys/oss/gstosssrc.c: (gst_osssrc_get):
+	* sys/v4l/gstv4lmjpegsink.c: (gst_v4lmjpegsink_chain):
+	* sys/v4l/gstv4lmjpegsrc.c: (gst_v4lmjpegsrc_buffer_free):
+	* sys/v4l/gstv4lsrc.c: (gst_v4lsrc_buffer_free):
+	* sys/v4l/v4l-overlay_calls.c: (gst_v4l_set_overlay),
+	(gst_v4l_set_window), (gst_v4l_enable_overlay):
+	* sys/v4l/v4l_calls.c: (gst_v4l_get_capabilities), (gst_v4l_open),
+	(gst_v4l_set_chan_norm), (gst_v4l_get_signal),
+	(gst_v4l_get_frequency), (gst_v4l_set_frequency),
+	(gst_v4l_get_picture), (gst_v4l_set_picture), (gst_v4l_get_audio),
+	(gst_v4l_set_audio):
+	* sys/v4l/v4l_calls.h:
+	* sys/v4l/v4lmjpegsink_calls.c: (gst_v4lmjpegsink_sync_thread),
+	(gst_v4lmjpegsink_queue_frame), (gst_v4lmjpegsink_set_playback),
+	(gst_v4lmjpegsink_playback_init),
+	(gst_v4lmjpegsink_playback_start):
+	* sys/v4l/v4lmjpegsrc_calls.c: (gst_v4lmjpegsrc_queue_frame):
+	* sys/v4l/v4lsrc_calls.c: (gst_v4lsrc_queue_frame),
+	(gst_v4lsrc_sync_frame), (gst_v4lsrc_capture_init),
+	(gst_v4lsrc_requeue_frame), (gst_v4lsrc_try_palette):
+	* sys/v4l2/gstv4l2src.c: (gst_v4l2src_get):
+	* sys/v4l2/v4l2-overlay_calls.c: (gst_v4l2_set_display),
+	(gst_v4l2_set_window), (gst_v4l2_enable_overlay):
+	* sys/v4l2/v4l2_calls.c: (gst_v4l2_get_capabilities),
+	(gst_v4l2_fill_lists), (gst_v4l2_open), (gst_v4l2_get_norm),
+	(gst_v4l2_set_norm), (gst_v4l2_get_input), (gst_v4l2_set_input),
+	(gst_v4l2_get_output), (gst_v4l2_set_output),
+	(gst_v4l2_get_frequency), (gst_v4l2_set_frequency),
+	(gst_v4l2_signal_strength), (gst_v4l2_get_attribute),
+	(gst_v4l2_set_attribute):
+	* sys/v4l2/v4l2_calls.h:
+	* sys/v4l2/v4l2src_calls.c: (gst_v4l2src_fill_format_list),
+	(gst_v4l2src_queue_frame), (gst_v4l2src_grab_frame),
+	(gst_v4l2src_get_capture), (gst_v4l2src_set_capture),
+	(gst_v4l2src_capture_init), (gst_v4l2src_capture_start),
+	(gst_v4l2src_capture_stop):
+	* sys/vcd/vcdsrc.c: (vcdsrc_open_file):
+	* sys/ximage/ximagesink.c: (gst_ximagesink_xcontext_get),
+	(gst_ximagesink_chain):
+	* sys/xvideo/xvideosink.c: (gst_xvideosink_buffer_new),
+	(gst_xvideosink_sinkconnect), (gst_xvideosink_chain),
+	(gst_xvideosink_xwindow_new):
+	* sys/xvimage/xvimagesink.c: (gst_xvimagesink_xcontext_get),
+	(gst_xvimagesink_chain):
+
+2004-02-02  Thomas Vander Stichele  <thomas at apestaart dot org>
+
 	* gst/volume/gstvolume.c: (gst_volume_set_volume),
 	(gst_volume_get_volume), (volume_class_init), (volume_init),
 	(volume_chain_int16), (volume_update_volume):
diff --git a/ext/audiofile/gstafsink.c b/ext/audiofile/gstafsink.c
index afef5f6..69a7da7 100644
--- a/ext/audiofile/gstafsink.c
+++ b/ext/audiofile/gstafsink.c
@@ -347,7 +347,7 @@
   if (sink->file == AF_NULL_FILEHANDLE)
   {
    GST_ELEMENT_ERROR (sink, RESOURCE, OPEN_WRITE,
-                         (_("Could not open file \"%s\" for writing"), sink->filename),
+                         (_("Could not open file \"%s\" for writing."), sink->filename),
                          ("system error: %s", strerror (errno)));
     return FALSE;
   } 
@@ -370,7 +370,7 @@
   if (afCloseFile (sink->file) != 0)
   {
     GST_ELEMENT_ERROR (sink, RESOURCE, CLOSE,
-                       (_("Error closing file \"%s\""), sink->filename),
+                       (_("Error closing file \"%s\"."), sink->filename),
                        GST_ERROR_SYSTEM);
   }
   else {
diff --git a/ext/audiofile/gstafsrc.c b/ext/audiofile/gstafsrc.c
index e2bdf3f..aa41273 100644
--- a/ext/audiofile/gstafsrc.c
+++ b/ext/audiofile/gstafsrc.c
@@ -317,7 +317,7 @@
   if (src->file == AF_NULL_FILEHANDLE)
   {
      GST_ELEMENT_ERROR (src, RESOURCE, OPEN_READ,
-                        (_("Could not open file \"%s\" for reading"), src->filename),
+                        (_("Could not open file \"%s\" for reading."), src->filename),
                         ("system error: %s", strerror (errno)));
     return FALSE;
   }
@@ -375,7 +375,7 @@
   if (afCloseFile (src->file) != 0)
   {
     GST_ELEMENT_ERROR (src, RESOURCE, CLOSE,
-                       (_("Error closing file \"%s\""), src->filename),
+                       (_("Error closing file \"%s\"."), src->filename),
                        GST_ERROR_SYSTEM);
   } else {
     GST_FLAG_UNSET (src, GST_AFSRC_OPEN);
diff --git a/ext/divx/gstdivxdec.c b/ext/divx/gstdivxdec.c
index 15aecaa..568e372 100644
--- a/ext/divx/gstdivxdec.c
+++ b/ext/divx/gstdivxdec.c
@@ -229,7 +229,7 @@
       break;
   }
   if ((ret = decore(&handle, DEC_OPT_INIT, &xinit, NULL)) != 0) {
-    GST_ELEMENT_ERROR (divxdec, LIBRARY, INIT, NULL,
+    GST_ELEMENT_ERROR (divxdec, LIBRARY, INIT, (NULL),
                        ("divx library error: %s (%d)", gst_divxdec_error (ret), ret));
     return FALSE;
   }
@@ -247,7 +247,7 @@
 
   if ((ret = decore(divxdec->handle, DEC_OPT_SETOUT,
                     &output, NULL)) != 0) {
-    GST_ELEMENT_ERROR (divxdec, LIBRARY, SETTINGS, NULL,
+    GST_ELEMENT_ERROR (divxdec, LIBRARY, SETTINGS, (NULL),
                        ("error setting output: %s (%d)",
                         gst_divxdec_error (ret), ret));
     gst_divxdec_unset(divxdec);
@@ -285,7 +285,7 @@
 
   if (!divxdec->handle) {
     if (gst_divxdec_negotiate(divxdec) <= 0) {
-      GST_ELEMENT_ERROR (divxdec, CORE, TOO_LAZY, NULL,
+      GST_ELEMENT_ERROR (divxdec, CORE, TOO_LAZY, (NULL),
                         ("No format set - aborting"));
       gst_buffer_unref(buf);
       return;
@@ -309,7 +309,7 @@
 
   if ((ret = decore(divxdec->handle, DEC_OPT_FRAME,
                     &xframe, NULL))) {
-    GST_ELEMENT_ERROR (divxdec, STREAM, DECODE, NULL,
+    GST_ELEMENT_ERROR (divxdec, STREAM, DECODE, (NULL),
                        ("Error decoding divx frame: %s (%d)",
                        gst_divxdec_error(ret), ret));
     gst_buffer_unref(buf);
diff --git a/ext/divx/gstdivxenc.c b/ext/divx/gstdivxenc.c
index a0b4e89..bb77ace 100644
--- a/ext/divx/gstdivxenc.c
+++ b/ext/divx/gstdivxenc.c
@@ -295,7 +295,7 @@
   output.temporal_level = 1.0;
 
   if ((ret = encore(&handle, ENC_OPT_INIT, &input, &output))) {
-    GST_ELEMENT_ERROR (divxenc, LIBRARY, SETTINGS, NULL,
+    GST_ELEMENT_ERROR (divxenc, LIBRARY, SETTINGS, (NULL),
                        ("Error setting up divx encoder: %s (%d)",
                         gst_divxenc_error(ret), ret));
     return FALSE;
@@ -357,7 +357,7 @@
 
   if ((ret = encore(divxenc->handle, ENC_OPT_ENCODE,
                     &xframe, &xres))) {
-    GST_ELEMENT_ERROR (divxenc, LIBRARY, ENCODE, NULL,
+    GST_ELEMENT_ERROR (divxenc, LIBRARY, ENCODE, (NULL),
                        ("Error encoding divx frame: %s (%d)",
                         gst_divxenc_error(ret), ret));
     gst_buffer_unref(buf);
diff --git a/ext/faac/gstfaac.c b/ext/faac/gstfaac.c
index 218d9bb..01eb03a 100644
--- a/ext/faac/gstfaac.c
+++ b/ext/faac/gstfaac.c
@@ -417,7 +417,7 @@
 					 NULL, 0,
 					 GST_BUFFER_DATA (outbuf),
 					 faac->bytes)) < 0) {
-            GST_ELEMENT_ERROR (faac, LIBRARY, ENCODE, NULL, NULL);
+            GST_ELEMENT_ERROR (faac, LIBRARY, ENCODE, (NULL), (NULL));
             gst_event_unref (event);
             gst_buffer_unref (outbuf);
             return;
@@ -445,7 +445,7 @@
   inbuf = GST_BUFFER (data);
 
   if (!faac->handle) {
-    GST_ELEMENT_ERROR (faac, CORE, NEGOTIATION, NULL,
+    GST_ELEMENT_ERROR (faac, CORE, NEGOTIATION, (NULL),
                        ("format wasn't negotiated before chain function"));
     gst_buffer_unref (inbuf);
     return;
@@ -454,7 +454,7 @@
   if (!GST_PAD_CAPS (faac->srcpad)) {
     if (gst_faac_srcconnect (faac->srcpad,
 			     gst_pad_get_allowed_caps (faac->srcpad)) <= 0) {
-      GST_ELEMENT_ERROR (faac, CORE, NEGOTIATION, NULL,
+      GST_ELEMENT_ERROR (faac, CORE, NEGOTIATION, (NULL),
 			 ("failed to negotiate MPEG/AAC format with next element"));
       gst_buffer_unref (inbuf);
       return;
@@ -516,7 +516,7 @@
 				   GST_BUFFER_SIZE (subbuf) / faac->bps,
 				   GST_BUFFER_DATA (outbuf),
 				   faac->bytes)) < 0) {
-      GST_ELEMENT_ERROR (faac, LIBRARY, ENCODE, NULL, NULL);
+      GST_ELEMENT_ERROR (faac, LIBRARY, ENCODE, (NULL), (NULL));
       gst_buffer_unref (inbuf);
       gst_buffer_unref (subbuf);
       return;
diff --git a/ext/faad/gstfaad.c b/ext/faad/gstfaad.c
index 7f3a8c1..bb804cb 100644
--- a/ext/faad/gstfaad.c
+++ b/ext/faad/gstfaad.c
@@ -359,7 +359,7 @@
     faad->channels = channels;
     if (gst_faad_srcconnect (faad->srcpad,
 			     gst_pad_get_allowed_caps (faad->srcpad)) <= 0) {
-      GST_ELEMENT_ERROR (faad, CORE, NEGOTIATION, NULL, NULL);
+      GST_ELEMENT_ERROR (faad, CORE, NEGOTIATION, (NULL), (NULL));
       gst_buffer_unref (buf);
       return;
     }
@@ -368,7 +368,7 @@
   out = faacDecDecode (faad->handle, &info,
 		       GST_BUFFER_DATA (buf), GST_BUFFER_SIZE (buf));
   if (info.error) {
-    GST_ELEMENT_ERROR (faad, STREAM, DECODE, NULL,
+    GST_ELEMENT_ERROR (faad, STREAM, DECODE, (NULL),
 		       ("Failed to decode buffer: %s",
 		        faacDecGetErrorMessage (info.error)));
     gst_buffer_unref (buf);
@@ -381,7 +381,7 @@
     faad->channels = info.channels;
     if (gst_faad_srcconnect (faad->srcpad,
 			     gst_pad_get_allowed_caps (faad->srcpad)) <= 0) {
-      GST_ELEMENT_ERROR (faad, CORE, NEGOTIATION, NULL, NULL);
+      GST_ELEMENT_ERROR (faad, CORE, NEGOTIATION, (NULL), (NULL));
       gst_buffer_unref (buf);
       return;
     }
diff --git a/ext/ivorbis/vorbisfile.c b/ext/ivorbis/vorbisfile.c
index 182cdbb..be36e92 100644
--- a/ext/ivorbis/vorbisfile.c
+++ b/ext/ivorbis/vorbisfile.c
@@ -569,7 +569,7 @@
     /* open our custom ivorbisfile data object with the callbacks we provide */
     if (ov_open_callbacks (ivorbisfile, &ivorbisfile->vf, NULL, 0,
 			   ivorbisfile_ov_callbacks) < 0) {
-      GST_ELEMENT_ERROR (element, STREAM, DECODE, NULL, NULL);
+      GST_ELEMENT_ERROR (element, STREAM, DECODE, (NULL), (NULL));
       return;
     }
     ivorbisfile->need_discont = TRUE;
@@ -633,7 +633,7 @@
   /* we update the caps for each logical stream */
   if (ivorbisfile->vf.current_link != ivorbisfile->current_link) {
     if (!gst_ivorbisfile_new_link (ivorbisfile, ivorbisfile->vf.current_link)) {
-      GST_ELEMENT_ERROR (ivorbisfile, CORE, NEGOTIATION, NULL, NULL);
+      GST_ELEMENT_ERROR (ivorbisfile, CORE, NEGOTIATION, (NULL), (NULL));
     }
     return;
   }
diff --git a/ext/lcs/gstcolorspace.c b/ext/lcs/gstcolorspace.c
index 4658745..948b97a 100644
--- a/ext/lcs/gstcolorspace.c
+++ b/ext/lcs/gstcolorspace.c
@@ -316,7 +316,7 @@
     peercaps = peercaps->next;
   }
   
-  GST_ELEMENT_ERROR (space, CORE, NEGOTIATION, NULL, NULL);
+  GST_ELEMENT_ERROR (space, CORE, NEGOTIATION, (NULL), (NULL));
   /* we disable ourself here */
   space->disabled = TRUE;
 
diff --git a/ext/mpeg2enc/gstmpeg2enc.cc b/ext/mpeg2enc/gstmpeg2enc.cc
index 5bf0ba1..7ee28bd 100644
--- a/ext/mpeg2enc/gstmpeg2enc.cc
+++ b/ext/mpeg2enc/gstmpeg2enc.cc
@@ -239,7 +239,7 @@
     gst_pad_set_element_private (enc->sinkpad, data);
 
     if (!(caps = GST_PAD_CAPS (enc->sinkpad))) {
-      GST_ELEMENT_ERROR (element, CORE, NEGOTIATION, (""),
+      GST_ELEMENT_ERROR (element, CORE, NEGOTIATION, (NULL),
 			 ("format wasn't negotiated before loop function"));
       return;
     }
@@ -251,7 +251,7 @@
     /* and set caps on other side */
     othercaps = enc->encoder->getFormat ();
     if (gst_pad_set_explicit_caps (enc->srcpad, othercaps) <= 0) {
-      GST_ELEMENT_ERROR (element, CORE, NEGOTIATION, (""), (""));
+      GST_ELEMENT_ERROR (element, CORE, NEGOTIATION, (NULL), (NULL));
       delete enc->encoder;
       enc->encoder = NULL;
       return;
diff --git a/ext/mplex/gstmplex.cc b/ext/mplex/gstmplex.cc
index 060e5d0..06d199b 100644
--- a/ext/mplex/gstmplex.cc
+++ b/ext/mplex/gstmplex.cc
@@ -279,7 +279,7 @@
     }
 
     if (!mplex->job->video_tracks && !mplex->job->audio_tracks) {
-      GST_ELEMENT_ERROR (element, CORE, NEGOTIATION, (""),
+      GST_ELEMENT_ERROR (element, CORE, NEGOTIATION, (NULL),
 			 ("no input video or audio tracks set up before loop function"));
       return;
     }
diff --git a/ext/mplex/gstmplexibitstream.cc b/ext/mplex/gstmplexibitstream.cc
index 1867c65..6ed7820 100644
--- a/ext/mplex/gstmplexibitstream.cc
+++ b/ext/mplex/gstmplexibitstream.cc
@@ -53,7 +53,7 @@
   gst_bytestream_peek_bytes (bs, &data, 1);
 
   if (!ReadIntoBuffer () && buffered == 0) {
-    GST_ELEMENT_ERROR (gst_pad_get_parent (_pad), RESOURCE, READ, (""),
+    GST_ELEMENT_ERROR (gst_pad_get_parent (_pad), RESOURCE, READ, (NULL),
 		       ("Failed to read from input pad %s",
 		       gst_pad_get_name (pad)));
   }
diff --git a/ext/sdl/sdlvideosink.c b/ext/sdl/sdlvideosink.c
index 36d7c63..e882f97 100644
--- a/ext/sdl/sdlvideosink.c
+++ b/ext/sdl/sdlvideosink.c
@@ -366,7 +366,7 @@
 {
   /* assure that we've got a screen */
   if (!sdlvideosink->screen || !sdlvideosink->overlay) {
-    GST_ELEMENT_ERROR (sdlvideosink, LIBRARY, TOO_LAZY, NULL,
+    GST_ELEMENT_ERROR (sdlvideosink, LIBRARY, TOO_LAZY, (NULL),
 		       ("Tried to lock screen without being set-up"));
     return FALSE;
   }
@@ -376,14 +376,14 @@
   {
     if (SDL_LockSurface(sdlvideosink->screen) < 0)
     {
-      GST_ELEMENT_ERROR (sdlvideosink, LIBRARY, TOO_LAZY, NULL,
+      GST_ELEMENT_ERROR (sdlvideosink, LIBRARY, TOO_LAZY, (NULL),
         ("SDL: couldn't lock the SDL video window: %s", SDL_GetError()));
       return FALSE;
     }
   }
   if (SDL_LockYUVOverlay(sdlvideosink->overlay) < 0)
   {
-    GST_ELEMENT_ERROR (sdlvideosink, LIBRARY, TOO_LAZY, NULL,
+    GST_ELEMENT_ERROR (sdlvideosink, LIBRARY, TOO_LAZY, (NULL),
       ("SDL: couldn\'t lock the SDL YUV overlay: %s", SDL_GetError()));
     return FALSE;
   }
@@ -427,7 +427,7 @@
 
   /* Initialize the SDL library */
   if (SDL_Init(SDL_INIT_VIDEO | SDL_INIT_NOPARACHUTE) < 0 ) {
-    GST_ELEMENT_ERROR (sdlvideosink, LIBRARY, INIT, NULL,
+    GST_ELEMENT_ERROR (sdlvideosink, LIBRARY, INIT, (NULL),
 		      ("Couldn't initialize SDL: %s", SDL_GetError()));
     return FALSE;
   }
@@ -464,7 +464,7 @@
     GST_VIDEOSINK_HEIGHT (sdlvideosink), 0, SDL_HWSURFACE | SDL_RESIZABLE);
   if (sdlvideosink->screen == NULL)
   {
-    GST_ELEMENT_ERROR (sdlvideosink, LIBRARY, TOO_LAZY, NULL,
+    GST_ELEMENT_ERROR (sdlvideosink, LIBRARY, TOO_LAZY, (NULL),
       ("SDL: Couldn't set %dx%d: %s", GST_VIDEOSINK_WIDTH (sdlvideosink),
       GST_VIDEOSINK_HEIGHT (sdlvideosink), SDL_GetError()));
     return FALSE;
@@ -475,7 +475,7 @@
     sdlvideosink->height, sdlvideosink->format, sdlvideosink->screen);
   if ( sdlvideosink->overlay == NULL )
   {
-    GST_ELEMENT_ERROR (sdlvideosink, LIBRARY, TOO_LAZY, NULL,
+    GST_ELEMENT_ERROR (sdlvideosink, LIBRARY, TOO_LAZY, (NULL),
       ("SDL: Couldn't create SDL YUV overlay (%dx%d \'" GST_FOURCC_FORMAT "\'): %s",
       sdlvideosink->width, sdlvideosink->height,
       GST_FOURCC_ARGS(sdlvideosink->format), SDL_GetError()));
diff --git a/ext/sndfile/gstsf.c b/ext/sndfile/gstsf.c
index c7bc2c1..36e1a57 100644
--- a/ext/sndfile/gstsf.c
+++ b/ext/sndfile/gstsf.c
@@ -560,8 +560,8 @@
 
   if (!this->filename) {
     GST_ELEMENT_ERROR (this, RESOURCE, NOT_FOUND,
-                         (_("No filename specified")),
-                         NULL);
+                         (_("No filename specified.")),
+                         (NULL));
     return FALSE;
   }
     
@@ -587,7 +587,7 @@
               this->filename, info.samplerate, info.channels, info.format);
 
     if (!sf_format_check (&info)) {
-      GST_ELEMENT_ERROR (this, STREAM, ENCODE, NULL,
+      GST_ELEMENT_ERROR (this, STREAM, ENCODE, (NULL),
                            ("Input parameters (rate:%d, channels:%d, format:0x%x) invalid",
                                           info.samplerate, info.channels, info.format));
       return FALSE;
@@ -598,7 +598,7 @@
 
   if (!this->file) {
     GST_ELEMENT_ERROR (this, RESOURCE, OPEN_WRITE,
-                       (_("Could not open file \"%s\" for writing"), this->filename),
+                       (_("Could not open file \"%s\" for writing."), this->filename),
                          ("soundfile error: %s", sf_strerror (NULL)));
     return FALSE;
   }
@@ -637,7 +637,7 @@
 
   if ((err = sf_close (this->file)))
     GST_ELEMENT_ERROR (this, RESOURCE, CLOSE,
-                       ("Could not close file file \"%s\"", this->filename),
+                       ("Could not close file file \"%s\".", this->filename),
                        ("soundfile error: %s", strerror (err)));
   else
     GST_FLAG_UNSET (this, GST_SF_OPEN);
@@ -657,7 +657,7 @@
   this = (GstSF*)element;
   
   if (this->channels == NULL) {
-    GST_ELEMENT_ERROR (element, CORE, PAD, NULL, ("You must connect at least one pad to sndfile elements."));
+    GST_ELEMENT_ERROR (element, CORE, PAD, (NULL), ("You must connect at least one pad to sndfile elements."));
     return;
   }
 
@@ -707,7 +707,7 @@
               "buffer-frames", G_TYPE_INT, this->buffer_frames,
               NULL);
           if (!gst_pad_try_set_caps (GST_SF_CHANNEL (l)->pad, caps)) {
-            GST_ELEMENT_ERROR (this, CORE, NEGOTIATION, NULL,
+            GST_ELEMENT_ERROR (this, CORE, NEGOTIATION, (NULL),
                                ("Opened file with sample rate %d, but could not set caps", this->rate));
             gst_sf_close_file (this);
             return;
@@ -763,7 +763,7 @@
            which then would set this->buffer_frames to a new value */
         buffer_frames = this->buffer_frames;
         if (buffer_frames == 0) {
-          GST_ELEMENT_ERROR (element, CORE, NEGOTIATION, NULL,
+          GST_ELEMENT_ERROR (element, CORE, NEGOTIATION, (NULL),
                              ("format wasn't negotiated before chain function"));
           return;
         }
@@ -790,7 +790,7 @@
       written = sf_writef_float (this->file, buf, num_to_write);
       if (written != num_to_write)
         GST_ELEMENT_ERROR (element, RESOURCE, WRITE,
-                             (_("Could not write to file \"%s\""), this->filename),
+                             (_("Could not write to file \"%s\"."), this->filename),
                              ("soundfile error: %s", sf_strerror (this->file)));
     }
 
diff --git a/ext/swfdec/gstswfdec.c b/ext/swfdec/gstswfdec.c
index 515374f..d958c88 100644
--- a/ext/swfdec/gstswfdec.c
+++ b/ext/swfdec/gstswfdec.c
@@ -288,7 +288,7 @@
                 if (GST_PAD_LINK_SUCCESSFUL (link_ret)){
                   /* good */
                 } else {
-                  GST_ELEMENT_ERROR (swfdec, CORE, NEGOTIATION, NULL, NULL);
+                  GST_ELEMENT_ERROR (swfdec, CORE, NEGOTIATION, (NULL), (NULL));
                   return;
                 }
                 swfdec->have_format = TRUE;
diff --git a/ext/tarkin/gsttarkindec.c b/ext/tarkin/gsttarkindec.c
index 0121b84..9f411a5 100644
--- a/ext/tarkin/gsttarkindec.c
+++ b/ext/tarkin/gsttarkindec.c
@@ -209,7 +209,7 @@
   tarkindec = GST_TARKINDEC (gst_pad_get_parent (pad));
 
   if (!tarkindec->setup) {
-    GST_ELEMENT_ERROR (tarkindec, CORE, NEGOTATION, NULL, ("decoder not initialized (input is not tarkin?)"));
+    GST_ELEMENT_ERROR (tarkindec, CORE, NEGOTATION, (NULL), ("decoder not initialized (input is not tarkin?)"));
     if (GST_IS_BUFFER (buf))
       gst_buffer_unref (buf);
     else
@@ -278,7 +278,7 @@
 					"framerate",  GST_PROPS_FLOAT (0.) /* FIXME!!! */
 				       )) <= 0)
 	      {
-		GST_ELEMENT_ERROR (tarkindec, CORE, NEGOTATION, NULL,  ("could not output format"));
+		GST_ELEMENT_ERROR (tarkindec, CORE, NEGOTATION, (NULL),  ("could not output format"));
 		gst_buffer_unref (buf);
 		return;
 	      }
diff --git a/ext/tarkin/gsttarkinenc.c b/ext/tarkin/gsttarkinenc.c
index c12abb3..18947ea 100644
--- a/ext/tarkin/gsttarkinenc.c
+++ b/ext/tarkin/gsttarkinenc.c
@@ -319,7 +319,7 @@
   tarkinenc = GST_TARKINENC (gst_pad_get_parent (pad));
 
   if (!tarkinenc->setup) {
-    GST_ELEMENT_ERROR (tarkinenc, CORE, NEGOTIATION, NULL, ("encoder not initialized (input is not tarkin?)"));
+    GST_ELEMENT_ERROR (tarkinenc, CORE, NEGOTIATION, (NULL), ("encoder not initialized (input is not tarkin?)"));
     if (GST_IS_BUFFER (buf))
       gst_buffer_unref (buf);
     else
diff --git a/ext/xvid/gstxviddec.c b/ext/xvid/gstxviddec.c
index 06afc14..b7db39e 100644
--- a/ext/xvid/gstxviddec.c
+++ b/ext/xvid/gstxviddec.c
@@ -201,7 +201,7 @@
 
   if ((ret = xvid_decore(NULL, XVID_DEC_CREATE,
                          &xdec, NULL)) < 0) {
-    GST_ELEMENT_ERROR (xviddec, LIBRARY, SETTINGS, NULL,
+    GST_ELEMENT_ERROR (xviddec, LIBRARY, SETTINGS, (NULL),
 		      ("Setting parameters %dx%d@%d failed: %s (%d)",
 	              xviddec->width, xviddec->height, xviddec->csp,
 		      gst_xvid_error(ret), ret));
@@ -228,7 +228,7 @@
   g_return_if_fail(GST_IS_PAD(pad));
 
   if (!xviddec->handle) {
-    GST_ELEMENT_ERROR (xviddec, CORE, NEGOTIATION, NULL,
+    GST_ELEMENT_ERROR (xviddec, CORE, NEGOTIATION, (NULL),
          ("format wasn't negotiated before chain function"));
     gst_buffer_unref(buf);
     return;
@@ -263,7 +263,7 @@
 
   if ((ret = xvid_decore(xviddec->handle, XVID_DEC_DECODE,
                          &xframe, NULL)) < 0) {
-    GST_ELEMENT_ERROR (xviddec, STREAM, DECODE, NULL,
+    GST_ELEMENT_ERROR (xviddec, STREAM, DECODE, (NULL),
                       ("Error decoding xvid frame: %s (%d)\n",
 		      gst_xvid_error(ret), ret));
     gst_buffer_unref(buf);
diff --git a/ext/xvid/gstxvidenc.c b/ext/xvid/gstxvidenc.c
index 02785b9..294c4e2 100644
--- a/ext/xvid/gstxvidenc.c
+++ b/ext/xvid/gstxvidenc.c
@@ -299,7 +299,7 @@
 
   if ((ret = xvid_encore(NULL, XVID_ENC_CREATE,
                          &xenc, NULL)) < 0) {
-    GST_ELEMENT_ERROR (xvidenc, LIBRARY, INIT, NULL,
+    GST_ELEMENT_ERROR (xvidenc, LIBRARY, INIT, (NULL),
                       ("Error setting up xvid encoder: %s (%d)",
 		      gst_xvid_error(ret), ret));
     return FALSE;
@@ -355,7 +355,7 @@
 
   if ((ret = xvid_encore(xvidenc->handle, XVID_ENC_ENCODE,
                          &xframe, &xstats)) < 0) {
-    GST_ELEMENT_ERROR (xvidenc, LIBRARY, ENCODE, NULL,
+    GST_ELEMENT_ERROR (xvidenc, LIBRARY, ENCODE, (NULL),
                       ("Error encoding xvid frame: %s (%d)",
 		      gst_xvid_error(ret), ret));
     gst_buffer_unref(buf);
diff --git a/gst-libs/gst/riff/riff-read.c b/gst-libs/gst/riff/riff-read.c
index 0bf986f..6173b44 100644
--- a/gst-libs/gst/riff/riff-read.c
+++ b/gst-libs/gst/riff/riff-read.c
@@ -168,7 +168,7 @@
       gst_pad_event_default (riff->sinkpad, event);
     } else {
       gst_event_unref (event);
-      GST_ELEMENT_ERROR (riff, RESOURCE, READ, NULL, NULL);
+      GST_ELEMENT_ERROR (riff, RESOURCE, READ, (NULL), (NULL));
       return FALSE;
     }
   }
@@ -197,7 +197,7 @@
   GstBuffer *buf = NULL;
 
   if (gst_bytestream_peek (riff->bs, &buf, length) != length) {
-    GST_ELEMENT_ERROR (riff, RESOURCE, READ, NULL, NULL);
+    GST_ELEMENT_ERROR (riff, RESOURCE, READ, (NULL), (NULL));
     if (buf)
       gst_buffer_unref (buf);
     return NULL;
@@ -240,7 +240,7 @@
 
   /* now seek */
   if (!gst_bytestream_seek (riff->bs, offset, GST_SEEK_METHOD_SET)) {
-    GST_ELEMENT_ERROR (riff, RESOURCE, SEEK, NULL, NULL);
+    GST_ELEMENT_ERROR (riff, RESOURCE, SEEK, (NULL), (NULL));
     return NULL;
   }
 
@@ -300,7 +300,7 @@
   }
 
   if (gst_bytestream_peek_bytes (riff->bs, &data, 12) != 12) {
-    GST_ELEMENT_ERROR (riff, RESOURCE, READ, NULL, NULL);
+    GST_ELEMENT_ERROR (riff, RESOURCE, READ, (NULL), (NULL));
     return 0;
   }
 
@@ -660,7 +660,7 @@
   }
   gst_bytestream_flush_fast (riff->bs, 8);
   if (gst_bytestream_peek_bytes (riff->bs, &data, 4) != 4) {
-    GST_ELEMENT_ERROR (riff, RESOURCE, READ, NULL, NULL);
+    GST_ELEMENT_ERROR (riff, RESOURCE, READ, (NULL), (NULL));
     return FALSE;
   }
   gst_bytestream_flush_fast (riff->bs, 4);
@@ -848,14 +848,14 @@
   if (!gst_riff_peek_head (riff, &tag, &length, NULL))
     return FALSE;
   if (tag != GST_RIFF_TAG_RIFF) {
-    GST_ELEMENT_ERROR (riff, STREAM, WRONG_TYPE, NULL, NULL);
+    GST_ELEMENT_ERROR (riff, STREAM, WRONG_TYPE, (NULL), (NULL));
     return FALSE;
   }
   gst_bytestream_flush_fast (riff->bs, 8);
 
   /* doctype */
   if (gst_bytestream_peek_bytes (riff->bs, &data, 4) != 4) {
-    GST_ELEMENT_ERROR (riff, RESOURCE, READ, NULL, NULL);
+    GST_ELEMENT_ERROR (riff, RESOURCE, READ, (NULL), (NULL));
     return FALSE;
   }
   gst_bytestream_flush_fast (riff->bs, 4);
diff --git a/gst/flx/gstflxdec.c b/gst/flx/gstflxdec.c
index a88b1a7..aaddee5 100644
--- a/gst/flx/gstflxdec.c
+++ b/gst/flx/gstflxdec.c
@@ -463,7 +463,7 @@
     if (flxh->type != FLX_MAGICHDR_FLI &&
       flxh->type != FLX_MAGICHDR_FLC &&
       flxh->type != FLX_MAGICHDR_FLX) {
-      GST_ELEMENT_ERROR (element, STREAM, WRONG_TYPE, NULL, ("not a flx file (type %d)\n", flxh->type));
+      GST_ELEMENT_ERROR (element, STREAM, WRONG_TYPE, (NULL), ("not a flx file (type %d)\n", flxh->type));
       return;
     }
   
diff --git a/gst/smpte/gstsmpte.c b/gst/smpte/gstsmpte.c
index 9aef470..5899a9a 100644
--- a/gst/smpte/gstsmpte.c
+++ b/gst/smpte/gstsmpte.c
@@ -371,7 +371,7 @@
 	  "framerate", G_TYPE_DOUBLE, smpte->fps, NULL);
 
       if (!gst_pad_try_set_caps (smpte->srcpad, caps)) {
-        GST_ELEMENT_ERROR (smpte, CORE, NEGOTIATION, NULL, NULL);
+        GST_ELEMENT_ERROR (smpte, CORE, NEGOTIATION, (NULL), (NULL));
         return;
       }
     }
diff --git a/gst/speed/gstspeed.c b/gst/speed/gstspeed.c
index 366c2be..89b4edf 100644
--- a/gst/speed/gstspeed.c
+++ b/gst/speed/gstspeed.c
@@ -245,7 +245,7 @@
 #include "filter.func"
 #undef _FORMAT
   } else {
-   GST_ELEMENT_ERROR (filter, CORE, NEGOTIATION, NULL,
+   GST_ELEMENT_ERROR (filter, CORE, NEGOTIATION, (NULL),
                       ("format wasn't negotiated before chain function"));
     gst_element_yield (element);
   }
diff --git a/sys/dxr3/dxr3audiosink.c b/sys/dxr3/dxr3audiosink.c
index 362ed17..0bde9e3 100644
--- a/sys/dxr3/dxr3audiosink.c
+++ b/sys/dxr3/dxr3audiosink.c
@@ -311,7 +311,7 @@
   sink->audio_fd = open (sink->audio_filename, O_WRONLY);
   if (sink->audio_fd < 0) {
     GST_ELEMENT_ERROR (sink, RESOURCE, OPEN_WRITE,
-                       (_("Could not open audio device \"%s\" for writing"), sink->audio_filename),
+                       (_("Could not open audio device \"%s\" for writing."), sink->audio_filename),
                         GST_ERROR_SYSTEM);
     return FALSE;
   }
@@ -323,7 +323,7 @@
   sink->control_fd = open (sink->control_filename, O_WRONLY);
   if (sink->control_fd < 0) {
     GST_ELEMENT_ERROR (sink, RESOURCE, OPEN_WRITE,
-                       (_("Could not open control device \"%s\" for writing"), sink->control_filename),
+                       (_("Could not open control device \"%s\" for writing."), sink->control_filename),
                         GST_ERROR_SYSTEM);
     return FALSE;
   }
@@ -357,7 +357,7 @@
   if (ioctl (sink->audio_fd, SNDCTL_DSP_SETFMT, &tmp) < 0 ||
       tmp != oss_mode) {
     GST_ELEMENT_ERROR (sink, RESOURCE, SETTINGS,
-                       (_("Could not configure audio device \"%s\""), sink->audio_filename),
+                       (_("Could not configure audio device \"%s\"."), sink->audio_filename),
                         GST_ERROR_SYSTEM);
     return FALSE;
   }
@@ -371,7 +371,7 @@
   tmp = sink->rate;
   if (ioctl (sink->audio_fd, SNDCTL_DSP_SPEED, &tmp) < 0) {
     GST_ELEMENT_ERROR (sink, RESOURCE, SETTINGS,
-                       (_("Could not set audio device \"%s\" to %d Hz"), sink->audio_filename, sink->rate),
+                       (_("Could not set audio device \"%s\" to %d Hz."), sink->audio_filename, sink->rate),
                         GST_ERROR_SYSTEM);
     return FALSE;
   }
@@ -408,7 +408,7 @@
   if (ioctl (sink->audio_fd, SNDCTL_DSP_SPEED, &tmp) < 0 ||
       tmp != AC3_BYTE_RATE) {
     GST_ELEMENT_ERROR (sink, RESOURCE, SETTINGS,
-                       (_("Could not set audio device \"%s\" to %d Hz"), sink->audio_filename, AC3_BYTE_RATE),
+                       (_("Could not set audio device \"%s\" to %d Hz."), sink->audio_filename, AC3_BYTE_RATE),
                         GST_ERROR_SYSTEM);
     return FALSE;
   }
@@ -436,14 +436,14 @@
 
   if (close (sink->audio_fd) != 0) {
     GST_ELEMENT_ERROR (sink, RESOURCE, CLOSE,
-                       (_("Could not close audio device \"%s\""), sink->audio_filename),
+                       (_("Could not close audio device \"%s\"."), sink->audio_filename),
                         GST_ERROR_SYSTEM);
     return;
   }
 
   if (close (sink->control_fd) != 0) {
     GST_ELEMENT_ERROR (sink, RESOURCE, CLOSE,
-                       (_("Could not close control device \"%s\""), sink->audio_filename),
+                       (_("Could not close control device \"%s\"."), sink->audio_filename),
                         GST_ERROR_SYSTEM);
     return;
   }
diff --git a/sys/dxr3/dxr3spusink.c b/sys/dxr3/dxr3spusink.c
index e34e56e..2b4cf1e 100644
--- a/sys/dxr3/dxr3spusink.c
+++ b/sys/dxr3/dxr3spusink.c
@@ -282,7 +282,7 @@
   sink->spu_fd = open (sink->spu_filename, O_WRONLY);
   if (sink->spu_fd < 0) {
     GST_ELEMENT_ERROR (sink, RESOURCE, OPEN_WRITE,
-                       (_("Could not open spu device \"%s\" for writing"), sink->spu_filename),                         GST_ERROR_SYSTEM);
+                       (_("Could not open spu device \"%s\" for writing."), sink->spu_filename),                         GST_ERROR_SYSTEM);
     return FALSE;
   }
 
@@ -293,7 +293,8 @@
   sink->control_fd = open (sink->control_filename, O_WRONLY);
   if (sink->control_fd < 0) {
     GST_ELEMENT_ERROR (sink, RESOURCE, OPEN_WRITE,
-                       (_("Could not open control device \"%s\" for writing"), sink->control_filename),                         GST_ERROR_SYSTEM);
+                       (_("Could not open control device \"%s\" for writing."), sink->control_filename),
+                        GST_ERROR_SYSTEM);
     return FALSE;
   }
 
@@ -310,7 +311,7 @@
 
   if (close (sink->spu_fd) != 0) {
     GST_ELEMENT_ERROR (sink, RESOURCE, CLOSE,
-                       (_("Could not close spu device \"%s\""), sink->spu_filename),
+                       (_("Could not close spu device \"%s\"."), sink->spu_filename),
                         GST_ERROR_SYSTEM);
     return;
   }
@@ -318,7 +319,7 @@
   if (close (sink->control_fd) != 0)
   {
     GST_ELEMENT_ERROR (sink, RESOURCE, CLOSE,
-                       (_("Could not close control device \"%s\""), sink->control_filename),
+                       (_("Could not close control device \"%s\"."), sink->control_filename),
                         GST_ERROR_SYSTEM);
     return;
   }
diff --git a/sys/dxr3/dxr3videosink.c b/sys/dxr3/dxr3videosink.c
index 36ce36d..a87a94d 100644
--- a/sys/dxr3/dxr3videosink.c
+++ b/sys/dxr3/dxr3videosink.c
@@ -278,7 +278,7 @@
   sink->video_fd = open (sink->video_filename, O_WRONLY);
   if (sink->video_fd < 0) {
     GST_ELEMENT_ERROR (sink, RESOURCE, OPEN_WRITE,
-                       (_("Could not open video device \"%s\" for writing"), sink->video_filename),
+                       (_("Could not open video device \"%s\" for writing."), sink->video_filename),
                         GST_ERROR_SYSTEM);
     return FALSE;
   }
@@ -290,7 +290,7 @@
   sink->control_fd = open (sink->control_filename, O_WRONLY);
   if (sink->control_fd < 0) {
     GST_ELEMENT_ERROR (sink, RESOURCE, OPEN_WRITE,
-                       (_("Could not open control device \"%s\" for writing"), sink->control_filename),
+                       (_("Could not open control device \"%s\" for writing."), sink->control_filename),
                         GST_ERROR_SYSTEM);
     return FALSE;
   }
@@ -309,7 +309,7 @@
   if (close (sink->video_fd) != 0)
   {
     GST_ELEMENT_ERROR (sink, RESOURCE, CLOSE,
-                       (_("Could not close video device \"%s\""), sink->video_filename),
+                       (_("Could not close video device \"%s\"."), sink->video_filename),
                         GST_ERROR_SYSTEM);
     return;
   }
@@ -317,7 +317,7 @@
   if (close (sink->control_fd) != 0)
   {
     GST_ELEMENT_ERROR (sink, RESOURCE, CLOSE,
-                       (_("Could not close control device \"%s\""), sink->control_filename),
+                       (_("Could not close control device \"%s\"."), sink->control_filename),
                         GST_ERROR_SYSTEM);
     return;
   }
@@ -465,7 +465,7 @@
       written = write (sink->video_fd, data, size);
       if (written < 0) {
         GST_ELEMENT_ERROR (sink, RESOURCE, WRITE,
-                           (_("Could not write to device \"%s\""), sink->video_filename),
+                           (_("Could not write to device \"%s\"."), sink->video_filename),
                            GST_ERROR_SYSTEM);
         break;
       }
diff --git a/sys/v4l2/gstv4l2src.c b/sys/v4l2/gstv4l2src.c
index 697fe42..bde5b50 100644
--- a/sys/v4l2/gstv4l2src.c
+++ b/sys/v4l2/gstv4l2src.c
@@ -817,7 +817,7 @@
 
   if (v4l2src->use_fixed_fps &&
       (fps = gst_v4l2src_get_fps(v4l2src)) == 0) {
-    GST_ELEMENT_ERROR (v4l2src, RESOURCE, SETTINGS, NULL, ("could not get frame rate for element"));
+    GST_ELEMENT_ERROR (v4l2src, RESOURCE, SETTINGS, (NULL), ("could not get frame rate for element"));
     return NULL;
   }
 
diff --git a/sys/v4l2/v4l2-overlay_calls.c b/sys/v4l2/v4l2-overlay_calls.c
index 4e5fb9f..4d948d0 100644
--- a/sys/v4l2/v4l2-overlay_calls.c
+++ b/sys/v4l2/v4l2-overlay_calls.c
@@ -60,7 +60,7 @@
 	switch (system(buff)) {
 		case -1:
 			GST_ELEMENT_ERROR (v4l2element, RESOURCE, FAILED,
-                                           (_("Could not start v4l-conf")),
+                                           (_("Could not start v4l-conf.")),
                                            GST_ERROR_SYSTEM);
 			g_free(buff);
 			return FALSE;
@@ -68,7 +68,7 @@
 			break;
 		default:
 			GST_ELEMENT_ERROR (v4l2element, RESOURCE, FAILED,
-                                           (_("Executing v4l-conf failed")),
+                                           (_("Executing v4l-conf failed.")),
                                            GST_ERROR_SYSTEM);
 			g_free(buff);
 			return FALSE;
@@ -112,7 +112,7 @@
 	fmt.fmt.win.bitmap = NULL;
 
 	if (ioctl(v4l2element->video_fd, VIDIOC_S_FMT, &fmt) < 0) {
-		GST_ELEMENT_ERROR (v4l2element, RESOURCE, TOO_LAZY, NULL,
+		GST_ELEMENT_ERROR (v4l2element, RESOURCE, TOO_LAZY, (NULL),
 			("Failed to set the video window: %s", g_strerror (errno)));
 		return FALSE;
 	}
@@ -138,7 +138,7 @@
 	GST_V4L2_CHECK_OVERLAY(v4l2element);
 
 	if (ioctl(v4l2element->video_fd, VIDIOC_OVERLAY, &doit) < 0) {
-		GST_ELEMENT_ERROR (v4l2element, RESOURCE, TOO_LAZY, NULL,
+		GST_ELEMENT_ERROR (v4l2element, RESOURCE, TOO_LAZY, (NULL),
 			("Failed to %s overlay display: %s",
 			 enable?"enable":"disable", g_strerror (errno)));
 		return FALSE;
diff --git a/sys/v4l2/v4l2_calls.c b/sys/v4l2/v4l2_calls.c
index c206d98..f7c3d3a 100644
--- a/sys/v4l2/v4l2_calls.c
+++ b/sys/v4l2/v4l2_calls.c
@@ -55,7 +55,7 @@
 	GST_V4L2_CHECK_OPEN(v4l2element);
 
 	if (ioctl(v4l2element->video_fd, VIDIOC_QUERYCAP, &(v4l2element->vcap)) < 0) {
-		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 			("Error getting %s capabilities: %s",
 			 v4l2element->device, g_strerror(errno)));
 		return FALSE;
@@ -99,7 +99,7 @@
 				if (errno == EINVAL)
 					break; /* end of enumeration */
 				else {
-					GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+					GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 						           ("Failed to get %d in input enumeration for %s: %s",
 						n, v4l2element->device,
 						g_strerror (errno)));
@@ -122,7 +122,7 @@
 				vtun.index = input.tuner;
 				if (ioctl(v4l2element->video_fd, VIDIOC_G_TUNER,
 					  &vtun) < 0) {
-					GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+					GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 						("Failed to get tuner %d settings on %s: %s",
 						input.tuner,
 						v4l2element->device,
@@ -161,7 +161,7 @@
 				if (errno == EINVAL)
 					break; /* end of enumeration */
 				else {
-					GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+					GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 						           ("Failed to get %d in output enumeration for %s: %s",
 						n, v4l2element->device,
 						g_strerror (errno)));
@@ -200,7 +200,7 @@
 			if (errno == EINVAL)
 				break; /* end of enumeration */
 			else {
-					GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+					GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 						           ("Failed to get %d in norm enumeration for %s: %s",
 						n, v4l2element->device,
 						g_strerror (errno)));
@@ -237,7 +237,7 @@
 				else
 					break;
 			} else {
-				GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+				GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 						   ("Failed to get %d in control enumeration for %s: %s",
 						n, v4l2element->device,
 						g_strerror (errno)));
@@ -289,7 +289,7 @@
 					if (errno == EINVAL)
 						break; /* end of enumeration */
 					else {
-						GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+						GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 						           ("Failed to get %d in menu enumeration for %s: %s",
 						n, v4l2element->device,
 						g_strerror (errno)));
@@ -410,7 +410,7 @@
 	v4l2element->video_fd = open(v4l2element->device, O_RDWR);
 	if (!GST_V4L2_IS_OPEN(v4l2element)) {
 		GST_ELEMENT_ERROR (v4l2element, RESOURCE, OPEN_READ_WRITE,
-                                   (_("Could not open device \"%s\" for reading and writing"), v4l2element->device),
+                                   (_("Could not open device \"%s\" for reading and writing."), v4l2element->device),
                                    GST_ERROR_SYSTEM);
 		goto error;
 	}
@@ -424,7 +424,7 @@
 	if (GST_IS_V4L2SRC(v4l2element) &&
 	    !(v4l2element->vcap.capabilities & V4L2_CAP_VIDEO_CAPTURE)) {
 		GST_ELEMENT_ERROR (v4l2element, RESOURCE, NOT_FOUND,
-                                   (_("Device \"%s\" is not a capture device"), v4l2element->device),
+                                   (_("Device \"%s\" is not a capture device."), v4l2element->device),
 				   ("Capabilities: 0x%x", v4l2element->vcap.capabilities));
 		goto error;
 	}
@@ -492,7 +492,7 @@
 	GST_V4L2_CHECK_OPEN(v4l2element);
 
 	if (ioctl(v4l2element->video_fd, VIDIOC_G_STD, norm) < 0) {
-		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 			("Failed to get the current norm for device %s: %s",
 			 v4l2element->device, g_strerror(errno)));
 		return FALSE;
@@ -517,7 +517,7 @@
 	GST_V4L2_CHECK_NOT_ACTIVE(v4l2element);
 
 	if (ioctl(v4l2element->video_fd, VIDIOC_S_STD, &norm) < 0) {
-		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 			("Failed to set norm 0x%llx for device %s: %s",
 			 norm, v4l2element->device, g_strerror(errno)));
 		return FALSE;
@@ -543,7 +543,7 @@
 	GST_V4L2_CHECK_OPEN(v4l2element);
 
 	if (ioctl(v4l2element->video_fd, VIDIOC_G_INPUT, &n) < 0) {
-		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 			("Failed to get current input on device %s: %s",
 			v4l2element->device, g_strerror(errno)));
 		return FALSE;
@@ -570,7 +570,7 @@
 	GST_V4L2_CHECK_NOT_ACTIVE(v4l2element);
 
 	if (ioctl(v4l2element->video_fd, VIDIOC_S_INPUT, &input) < 0) {
-		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 			("Failed to set input %d on device %s: %s",
 			 input, v4l2element->device, g_strerror(errno)));
 		return FALSE;
@@ -596,7 +596,7 @@
 	GST_V4L2_CHECK_OPEN(v4l2element);
 
 	if (ioctl(v4l2element->video_fd, VIDIOC_G_OUTPUT, &n) < 0) {
-		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 			("Failed to get current output on device %s: %s",
 			 v4l2element->device, g_strerror(errno)));
 		return FALSE;
@@ -623,7 +623,7 @@
 	GST_V4L2_CHECK_NOT_ACTIVE(v4l2element);
 
 	if (ioctl(v4l2element->video_fd, VIDIOC_S_OUTPUT, &output) < 0) {
-		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 			("Failed to set output %d on device %s: %s",
 			 output, v4l2element->device, g_strerror(errno)));
 		return FALSE;
@@ -651,7 +651,7 @@
 
 	freq.tuner = tunernum;
 	if (ioctl(v4l2element->video_fd, VIDIOC_G_FREQUENCY, &freq) < 0) {
-		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 			("Failed to get current tuner frequency for device %s: %s",
 			v4l2element->device, g_strerror(errno)));
 		return FALSE;
@@ -686,7 +686,7 @@
 	freq.frequency = frequency;
 
 	if (ioctl(v4l2element->video_fd, VIDIOC_S_FREQUENCY, &freq) < 0) {
-		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 			("Failed to set tuner frequency to %lu for device %s: %s",
 			frequency, v4l2element->device, g_strerror(errno)));
 		return FALSE;
@@ -714,7 +714,7 @@
 
 	tuner.index = tunernum;
 	if (ioctl(v4l2element->video_fd, VIDIOC_G_TUNER, &tuner) < 0) {
-		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 			("Failed to get signal strength for device %s: %s",
 			 v4l2element->device, g_strerror(errno)));
 		return FALSE;
@@ -746,7 +746,7 @@
 	control.id = attribute_num;
 
 	if (ioctl(v4l2element->video_fd, VIDIOC_G_CTRL, &control) < 0) {
-		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 			("Failed to get value for control %d on device %s: %s",
 			 attribute_num, v4l2element->device, g_strerror(errno)));
 		return FALSE;
@@ -779,7 +779,7 @@
 	control.value = value;
 
 	if (ioctl(v4l2element->video_fd, VIDIOC_S_CTRL, &control) < 0) {
-		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (""),
+		GST_ELEMENT_ERROR (v4l2element, RESOURCE, SETTINGS, (NULL),
 			("Failed to set value %d for control %d on device %s: %s",
 			value, attribute_num, v4l2element->device, g_strerror(errno)));
 		return FALSE;
diff --git a/sys/v4l2/v4l2_calls.h b/sys/v4l2/v4l2_calls.h
index fecfa93..428c57a 100644
--- a/sys/v4l2/v4l2_calls.h
+++ b/sys/v4l2/v4l2_calls.h
@@ -40,7 +40,7 @@
   if (!GST_V4L2_IS_OPEN(element))				\
   {								\
     GST_ELEMENT_ERROR (element, RESOURCE, TOO_LAZY,		\
-      (_("Device is not open")), NULL);                         \
+      (_("Device is not open.")), (NULL));                      \
     return FALSE;						\
   }
 
@@ -49,7 +49,7 @@
   if (GST_V4L2_IS_OPEN(element))				\
   {								\
     GST_ELEMENT_ERROR (element, RESOURCE, TOO_LAZY,		\
-      (_("Device is open")), NULL);                             \
+      (_("Device is open.")), (NULL));                          \
     return FALSE;						\
   }
 
@@ -58,7 +58,7 @@
   if (!GST_V4L2_IS_OVERLAY(element))				\
   {								\
     GST_ELEMENT_ERROR (element, RESOURCE, TOO_LAZY,             \
-      NULL, ("Device cannot handle overlay"));                  \
+      (NULL), ("Device cannot handle overlay"));                \
     return FALSE;						\
   }
 
@@ -67,7 +67,7 @@
   if (!GST_V4L2_IS_ACTIVE(element))				\
   {								\
     GST_ELEMENT_ERROR (element, RESOURCE, SETTINGS,             \
-      NULL, ("Device is not in streaming mode"));               \
+      (NULL), ("Device is not in streaming mode"));             \
     return FALSE;						\
   }
 
@@ -76,7 +76,7 @@
   if (GST_V4L2_IS_ACTIVE(element))				\
   {								\
     GST_ELEMENT_ERROR (element, RESOURCE, SETTINGS,             \
-      NULL, ("Device is in streaming mode"));                   \
+      (NULL), ("Device is in streaming mode"));                 \
     return FALSE;						\
   }
 
diff --git a/sys/v4l2/v4l2src_calls.c b/sys/v4l2/v4l2src_calls.c
index 082e000..2c644fb 100644
--- a/sys/v4l2/v4l2src_calls.c
+++ b/sys/v4l2/v4l2src_calls.c
@@ -72,7 +72,7 @@
       if (errno == EINVAL) {
 	break; /* end of enumeration */
       } else {
-	GST_ELEMENT_ERROR (v4l2src, RESOURCE, SETTINGS, NULL,
+	GST_ELEMENT_ERROR (v4l2src, RESOURCE, SETTINGS, (NULL),
 	    ("failed to get number %d in pixelformat enumeration for %s: %s",
 	    n, GST_V4L2ELEMENT(v4l2src)->device, g_strerror (errno)));
 	g_free (format);
@@ -118,7 +118,7 @@
 
   if (ioctl(GST_V4L2ELEMENT(v4l2src)->video_fd, VIDIOC_QBUF, &v4l2src->pool->buffers[i].buffer) < 0) {
     GST_ELEMENT_ERROR (v4l2src, RESOURCE, WRITE,
-                       (_("Could not write to device \"%s\""), GST_V4L2ELEMENT(v4l2src)->device),
+                       (_("Could not write to device \"%s\"."), GST_V4L2ELEMENT(v4l2src)->device),
                        ("Error queueing buffer %u on device %s", i, g_strerror(errno)));
     return FALSE;
   }
@@ -142,7 +142,7 @@
   while (ioctl(GST_V4L2ELEMENT(v4l2src)->video_fd, VIDIOC_DQBUF, &buffer) < 0) {
     /* if the sync() got interrupted, we can retry */
     if (errno != EINTR) {
-      GST_ELEMENT_ERROR (v4l2src, RESOURCE, SYNC, NULL, ("could not sync on a buffer on device %s: %s",
+      GST_ELEMENT_ERROR (v4l2src, RESOURCE, SYNC, (NULL), ("could not sync on a buffer on device %s: %s",
 	  GST_V4L2ELEMENT(v4l2src)->device, g_strerror (errno)));
       return -1;
     }
@@ -170,7 +170,7 @@
 
 	v4l2src->format.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
 	if (ioctl(GST_V4L2ELEMENT(v4l2src)->video_fd, VIDIOC_G_FMT, &v4l2src->format) < 0) {
-		GST_ELEMENT_ERROR (v4l2src, RESOURCE, SETTINGS, NULL,
+		GST_ELEMENT_ERROR (v4l2src, RESOURCE, SETTINGS, (NULL),
 				   ("failed to get pixelformat for device %s: %s",
 				    GST_V4L2ELEMENT(v4l2src)->device, g_strerror (errno)));
 		return FALSE;
@@ -206,7 +206,7 @@
 	v4l2src->format.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
 
 	if (ioctl(GST_V4L2ELEMENT(v4l2src)->video_fd, VIDIOC_S_FMT, &v4l2src->format) < 0) {
-		GST_ELEMENT_ERROR (v4l2src, RESOURCE, SETTINGS, NULL,
+		GST_ELEMENT_ERROR (v4l2src, RESOURCE, SETTINGS, (NULL),
 				   ("failed to set pixelformat to %s @ %dx%d for device %s: %s",
 				   fmt->description, width, height, GST_V4L2ELEMENT(v4l2src)->device, g_strerror (errno)));
 		return FALSE;
@@ -246,14 +246,14 @@
   v4l2src->breq.memory = V4L2_MEMORY_MMAP;
   if (ioctl(GST_V4L2ELEMENT(v4l2src)->video_fd, VIDIOC_REQBUFS, &v4l2src->breq) < 0) {
     GST_ELEMENT_ERROR (v4l2src, RESOURCE, READ,
-                       (_("Could not get buffers from device \"%s\""), GST_V4L2ELEMENT(v4l2src)->device),
+                       (_("Could not get buffers from device \"%s\"."), GST_V4L2ELEMENT(v4l2src)->device),
                        ("error requesting %d buffers: %s", v4l2src->breq.count, g_strerror (errno)));
     return FALSE;
   }
 
   if (v4l2src->breq.count < GST_V4L2_MIN_BUFFERS) {
     GST_ELEMENT_ERROR (v4l2src, RESOURCE, READ,
-                       (_("Could not get enough buffers from device \"%s\""), GST_V4L2ELEMENT(v4l2src)->device),
+                       (_("Could not get enough buffers from device \"%s\"."), GST_V4L2ELEMENT(v4l2src)->device),
                        ("we received %d, we want at least %d", v4l2src->breq.count, GST_V4L2_MIN_BUFFERS));
     v4l2src->breq.count = buffers;
     return FALSE;
@@ -280,7 +280,7 @@
     buffer->buffer.index = n;
     buffer->buffer.type = V4L2_BUF_TYPE_VIDEO_CAPTURE;
     if (ioctl(GST_V4L2ELEMENT(v4l2src)->video_fd, VIDIOC_QUERYBUF, &buffer->buffer) < 0) {
-    GST_ELEMENT_ERROR (v4l2src, RESOURCE, READ, NULL,
+    GST_ELEMENT_ERROR (v4l2src, RESOURCE, READ, (NULL),
                        ("Could not get buffer properties of buffer %d: %s", n, g_strerror (errno)));
       gst_v4l2src_capture_deinit(v4l2src);
       return FALSE;
@@ -288,7 +288,7 @@
     buffer->start = mmap (0, buffer->buffer.length, PROT_READ|PROT_WRITE, MAP_SHARED, 
 	GST_V4L2ELEMENT(v4l2src)->video_fd, buffer->buffer.m.offset);
     if (buffer->start == MAP_FAILED) {
-    GST_ELEMENT_ERROR (v4l2src, RESOURCE, READ, NULL,
+    GST_ELEMENT_ERROR (v4l2src, RESOURCE, READ, (NULL),
                        ("Could not mmap video buffer %d: %s", n, g_strerror (errno)));
       buffer->start = 0;
       gst_v4l2src_capture_deinit (v4l2src);
@@ -328,7 +328,7 @@
   v4l2src->quit = FALSE;
 
   if (ioctl(GST_V4L2ELEMENT(v4l2src)->video_fd, VIDIOC_STREAMON, &type) < 0) {
-    GST_ELEMENT_ERROR (v4l2src, RESOURCE, OPEN_READ, NULL,
+    GST_ELEMENT_ERROR (v4l2src, RESOURCE, OPEN_READ, (NULL),
                        ("Error starting streaming capture from device %s: %s",
 	                GST_V4L2ELEMENT(v4l2src)->device, g_strerror(errno)));
     return FALSE;
@@ -356,7 +356,7 @@
   /* we actually need to sync on all queued buffers but not
    * on the non-queued ones */
   if (ioctl(GST_V4L2ELEMENT(v4l2src)->video_fd, VIDIOC_STREAMOFF, &type) < 0) {
-    GST_ELEMENT_ERROR (v4l2src, RESOURCE, CLOSE, NULL,
+    GST_ELEMENT_ERROR (v4l2src, RESOURCE, CLOSE, (NULL),
                        ("Error stopping streaming capture from device %s: %s",
 	                GST_V4L2ELEMENT(v4l2src)->device, g_strerror (errno)));
     return FALSE;
diff --git a/sys/vcd/vcdsrc.c b/sys/vcd/vcdsrc.c
index b5d6a77..0824e67 100644
--- a/sys/vcd/vcdsrc.c
+++ b/sys/vcd/vcdsrc.c
@@ -303,7 +303,7 @@
   /* open the device */
   src->fd = open(src->device,O_RDONLY);
   if (src->fd < 0) {
-    GST_ELEMENT_ERROR (src, RESOURCE, OPEN_READ, NULL, GST_ERROR_SYSTEM);
+    GST_ELEMENT_ERROR (src, RESOURCE, OPEN_READ, (NULL), GST_ERROR_SYSTEM);
     return FALSE;
   }