/* Adds a new element at the tail of the queue.  */
void g_queue_push_tail(GQueue *queue, gpointer data)
/* Adds a new element at the tail of the queue.  */
void g_queue_push_tail(GQueue *queue, gpointer data)
{
  g_return_if_fail (queue != NULL);
  queue->tail = g_list_append (queue->tail, data);
  if (queue->tail->next)
    queue->tail = queue->tail->next;
  else
    queue->head = queue->tail;
  queue->length++;
}