/* Returns: a pointer to a created subscription object.  */
kqueue_sub* _kh_sub_new(const gchar *filename, gboolean pair_moves, gpointer user_data)
/* Returns: a pointer to a created subscription object.  */
kqueue_sub* _kh_sub_new(const gchar *filename, gboolean pair_moves, gpointer user_data)
{
  kqueue_sub *sub = g_slice_new (kqueue_sub);
  g_assert (sub != NULL);
  sub->filename = g_strdup (filename);
  sub->pair_moves = pair_moves;
  sub->user_data = user_data;
  sub->fd = -1;
  sub->deps = NULL;
  sub->is_dir = 0;
  KS_W ("new subscription for %s being setup\n", sub->filename);
  return sub;
}