X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=gio%2Fglocalfileinfo.h;h=16eb43d8589dbbe8c3f1d6a3b68bd3077aa7e247;hb=f8d42cefbddf4930e40d6866e7002e556186763e;hp=bcb1d16ec2dbab720f08a203119a10609992a752;hpb=6356a9dd984a0ac64f5247e79c747b432f69567a;p=platform%2Fupstream%2Fglib.git
diff --git a/gio/glocalfileinfo.h b/gio/glocalfileinfo.h
index bcb1d16..16eb43d 100644
--- a/gio/glocalfileinfo.h
+++ b/gio/glocalfileinfo.h
@@ -1,5 +1,5 @@
/* GIO - GLib Input, Output and Streaming Library
- *
+ *
* Copyright (C) 2006-2007 Red Hat, Inc.
*
* This library is free software; you can redistribute it and/or
@@ -13,9 +13,7 @@
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General
- * Public License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place, Suite 330,
- * Boston, MA 02111-1307, USA.
+ * Public License along with this library; if not, see .
*
* Author: Alexander Larsson
*/
@@ -26,43 +24,70 @@
#include
#include
#include
-#ifdef HAVE_SYS_TYPES_H
#include
-#endif
G_BEGIN_DECLS
-typedef struct {
+typedef struct
+{
gboolean writable;
gboolean is_sticky;
- int owner;
- dev_t device;
+ gboolean has_trash_dir;
+ int owner;
+ dev_t device;
+ gpointer extra_data;
+ GDestroyNotify free_extra_data;
} GLocalParentFileInfo;
-void _g_local_file_info_get_parent_info (const char *dir,
- GFileAttributeMatcher *attribute_matcher,
- GLocalParentFileInfo *parent_info);
-GFileInfo *_g_local_file_info_get (const char *basename,
- const char *path,
- GFileAttributeMatcher *attribute_matcher,
- GFileQueryInfoFlags flags,
- GLocalParentFileInfo *parent_info,
- GError **error);
-GFileInfo *_g_local_file_info_get_from_fd (int fd,
- char *attributes,
- GError **error);
-char * _g_local_file_info_create_etag (struct stat *statbuf);
-gboolean _g_local_file_info_set_attribute (char *filename,
- const char *attribute,
- const GFileAttributeValue *value,
- GFileQueryInfoFlags flags,
- GCancellable *cancellable,
- GError **error);
-gboolean _g_local_file_info_set_attributes (char *filename,
- GFileInfo *info,
- GFileQueryInfoFlags flags,
- GCancellable *cancellable,
- GError **error);
+#ifdef G_OS_WIN32
+/* We want 64-bit file size support */
+#define GLocalFileStat struct _stati64
+#else
+#define GLocalFileStat struct stat
+#endif
+
+#define G_LOCAL_FILE_INFO_NOSTAT_ATTRIBUTES \
+ G_FILE_ATTRIBUTE_STANDARD_NAME "," \
+ G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME "," \
+ G_FILE_ATTRIBUTE_STANDARD_EDIT_NAME "," \
+ G_FILE_ATTRIBUTE_STANDARD_COPY_NAME
+
+gboolean _g_local_file_has_trash_dir (const char *dirname,
+ dev_t dir_dev);
+#ifdef G_OS_UNIX
+gboolean _g_local_file_is_lost_found_dir (const char *path,
+ dev_t path_dev);
+#endif
+void _g_local_file_info_get_parent_info (const char *dir,
+ GFileAttributeMatcher *attribute_matcher,
+ GLocalParentFileInfo *parent_info);
+void _g_local_file_info_free_parent_info (GLocalParentFileInfo *parent_info);
+void _g_local_file_info_get_nostat (GFileInfo *info,
+ const char *basename,
+ const char *path,
+ GFileAttributeMatcher *attribute_matcher);
+GFileInfo *_g_local_file_info_get (const char *basename,
+ const char *path,
+ GFileAttributeMatcher *attribute_matcher,
+ GFileQueryInfoFlags flags,
+ GLocalParentFileInfo *parent_info,
+ GError **error);
+GFileInfo *_g_local_file_info_get_from_fd (int fd,
+ const char *attributes,
+ GError **error);
+char * _g_local_file_info_create_etag (GLocalFileStat *statbuf);
+gboolean _g_local_file_info_set_attribute (char *filename,
+ const char *attribute,
+ GFileAttributeType type,
+ gpointer value_p,
+ GFileQueryInfoFlags flags,
+ GCancellable *cancellable,
+ GError **error);
+gboolean _g_local_file_info_set_attributes (char *filename,
+ GFileInfo *info,
+ GFileQueryInfoFlags flags,
+ GCancellable *cancellable,
+ GError **error);
G_END_DECLS