• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #undef G_DISABLE_ASSERT
2 #undef G_LOG_DOMAIN
3 
4 #include <glib.h>
5 
6 #define SIZE 100000
7 
8 guint32 array[SIZE];
9 
10 static gint
sort(gconstpointer a,gconstpointer b,gpointer user_data)11 sort (gconstpointer a, gconstpointer b, gpointer user_data)
12 {
13   return *(guint32*)a < *(guint32*)b ? -1 : 1;
14 }
15 
16 int
main(int argc,char ** argv)17 main (int argc, char **argv)
18 {
19   int i;
20 
21   for (i = 0; i < SIZE; i++)
22     array[i] = g_random_int ();
23 
24   g_qsort_with_data (array, SIZE, sizeof (guint32), sort, NULL);
25 
26   for (i = 0; i < SIZE - 1; i++)
27     g_assert (array[i] <= array[i+1]);
28 
29   /* 0 elements is a valid case */
30   g_qsort_with_data (array, 0, sizeof (guint32), sort, NULL);
31 
32   return 0;
33 }
34