--- cairo-dock-plugins-2.2.1-bzr20101106-orig/gvfs-integration/cairo-dock-gio-vfs.c 2010-12-07 14:11:14.058344206 +0330 +++ cairo-dock-plugins-2.2.1-bzr20101106/gvfs-integration/cairo-dock-gio-vfs.c 2010-12-07 16:15:42.210930228 +0330 @@ -1549,7 +1549,8 @@ { GFile *pFile = g_file_new_for_uri ("trash://"); GError *erreur = NULL; - const gchar *cAttributes = G_FILE_ATTRIBUTE_STANDARD_TARGET_URI"," + const gchar *cAttributes = G_FILE_ATTRIBUTE_STANDARD_TARGET_URI"," + G_FILE_ATTRIBUTE_STANDARD_TYPE"," G_FILE_ATTRIBUTE_STANDARD_NAME; GFileEnumerator *pFileEnum = g_file_enumerate_children (pFile, cAttributes, @@ -1590,7 +1591,12 @@ g_strdelimit (sFileUri->str, "\\", '/'); //g_print (" - %s\n", sFileUri->str); - GFile *file = g_file_new_for_uri (sFileUri->str); + GFile *file = g_file_new_for_uri (sFileUri->str); + GFileType iFileType = g_file_info_get_file_type (pFileInfo); + if (iFileType == G_FILE_TYPE_DIRECTORY) + { + cairo_dock_gio_vfs_empty_dir (sFileUri->str); + } g_file_delete (file, NULL, &erreur); g_object_unref (file); @@ -1602,7 +1608,7 @@ //g_print (" - %s\n", cInfo); file = g_file_new_for_uri (cInfo); g_free (cInfo); - g_file_delete (file, NULL, &erreur); + g_file_delete (file, NULL, NULL); g_object_unref (file); } }