ftp://ftp.redhat.com/pub/redhat/linux/rawhide/SRPMS/SRPMS/gnome-vfs2-2.3.8-1.src.rpm
[gnome-vfs-httpcaptive.git] / doc / xml / gnome-vfs-utils.xml
1 <refentry id="gnome-vfs-20-gnome-vfs-utils">
2 <refmeta>
3 <refentrytitle>gnome-vfs-utils</refentrytitle>
4 <manvolnum>3</manvolnum>
5 <refmiscinfo>GNOME-VFS-2.0 Library</refmiscinfo>
6 </refmeta>
7
8 <refnamediv>
9 <refname>gnome-vfs-utils</refname><refpurpose>various utilities functions to manipulate uris</refpurpose>
10 </refnamediv>
11
12 <refsynopsisdiv><title>Synopsis</title>
13
14 <synopsis>
15
16
17
18 <link linkend="char">char</link>*       <link linkend="gnome-vfs-format-file-size-for-display">gnome_vfs_format_file_size_for_display</link>
19                                             (<link linkend="GnomeVFSFileSize">GnomeVFSFileSize</link> size);
20 <link linkend="char">char</link>*       <link linkend="gnome-vfs-escape-string">gnome_vfs_escape_string</link>         (const <link linkend="char">char</link> *string);
21 <link linkend="char">char</link>*       <link linkend="gnome-vfs-escape-path-string">gnome_vfs_escape_path_string</link>    (const <link linkend="char">char</link> *path);
22 <link linkend="char">char</link>*       <link linkend="gnome-vfs-escape-host-and-path-string">gnome_vfs_escape_host_and_path_string</link>
23                                             (const <link linkend="char">char</link> *path);
24 <link linkend="char">char</link>*       <link linkend="gnome-vfs-escape-slashes">gnome_vfs_escape_slashes</link>        (const <link linkend="char">char</link> *string);
25 <link linkend="char">char</link>*       <link linkend="gnome-vfs-escape-set">gnome_vfs_escape_set</link>            (const <link linkend="char">char</link> *string,
26                                              const <link linkend="char">char</link> *match_set);
27 <link linkend="char">char</link>*       <link linkend="gnome-vfs-unescape-string">gnome_vfs_unescape_string</link>       (const <link linkend="char">char</link> *escaped_string,
28                                              const <link linkend="char">char</link> *illegal_characters);
29 <link linkend="char">char</link>*       <link linkend="gnome-vfs-make-uri-canonical">gnome_vfs_make_uri_canonical</link>    (const <link linkend="char">char</link> *uri);
30 <link linkend="char">char</link>*       <link linkend="gnome-vfs-make-path-name-canonical">gnome_vfs_make_path_name_canonical</link>
31                                             (const <link linkend="char">char</link> *path);
32 <link linkend="char">char</link>*       <link linkend="gnome-vfs-expand-initial-tilde">gnome_vfs_expand_initial_tilde</link>  (const <link linkend="char">char</link> *path);
33 <link linkend="char">char</link>*       <link linkend="gnome-vfs-unescape-string-for-display">gnome_vfs_unescape_string_for_display</link>
34                                             (const <link linkend="char">char</link> *escaped);
35 <link linkend="char">char</link>*       <link linkend="gnome-vfs-get-local-path-from-uri">gnome_vfs_get_local_path_from_uri</link>
36                                             (const <link linkend="char">char</link> *uri);
37 <link linkend="char">char</link>*       <link linkend="gnome-vfs-get-uri-from-local-path">gnome_vfs_get_uri_from_local_path</link>
38                                             (const <link linkend="char">char</link> *local_full_path);
39 <link linkend="gboolean">gboolean</link>    <link linkend="gnome-vfs-is-executable-command-string">gnome_vfs_is_executable_command_string</link>
40                                             (const <link linkend="char">char</link> *command_string);
41 <link linkend="void">void</link>        <link linkend="gnome-vfs-list-deep-free">gnome_vfs_list_deep_free</link>        (<link linkend="GList">GList</link> *list);
42 <link linkend="GnomeVFSResult">GnomeVFSResult</link> <link linkend="gnome-vfs-get-volume-free-space">gnome_vfs_get_volume_free_space</link>
43                                             (const <link linkend="GnomeVFSURI">GnomeVFSURI</link> *vfs_uri,
44                                              <link linkend="GnomeVFSFileSize">GnomeVFSFileSize</link> *size);
45 <link linkend="char">char</link>*       <link linkend="gnome-vfs-icon-path-from-filename">gnome_vfs_icon_path_from_filename</link>
46                                             (const <link linkend="char">char</link> *filename);
47 <link linkend="gboolean">gboolean</link>    <link linkend="gnome-vfs-is-primary-thread">gnome_vfs_is_primary_thread</link>     (void);
48 <link linkend="char">char</link>*       <link linkend="gnome-vfs-get-uri-scheme">gnome_vfs_get_uri_scheme</link>        (const <link linkend="char">char</link> *uri);
49 <link linkend="gboolean">gboolean</link>    <link linkend="gnome-vfs-uris-match">gnome_vfs_uris_match</link>            (const <link linkend="char">char</link> *uri_1,
50                                              const <link linkend="char">char</link> *uri_2);
51 #define     <link linkend="GNOME-VFS-ASSERT-PRIMARY-THREAD-CAPS">GNOME_VFS_ASSERT_PRIMARY_THREAD</link>
52 #define     <link linkend="GNOME-VFS-ASSERT-SECONDARY-THREAD-CAPS">GNOME_VFS_ASSERT_SECONDARY_THREAD</link>
53 <link linkend="GnomeVFSResult">GnomeVFSResult</link> <link linkend="gnome-vfs-read-entire-file">gnome_vfs_read_entire_file</link>   (const <link linkend="char">char</link> *uri,
54                                              <link linkend="int">int</link> *file_size,
55                                              <link linkend="char">char</link> **file_contents);
56 </synopsis>
57 </refsynopsisdiv>
58
59
60
61
62
63
64
65
66
67 <refsect1>
68 <title>Description</title>
69 <para>
70
71 </para>
72 </refsect1>
73
74 <refsect1>
75 <title>Details</title>
76 <refsect2>
77 <title><anchor id="gnome-vfs-format-file-size-for-display"/>gnome_vfs_format_file_size_for_display ()</title>
78 <indexterm><primary>gnome_vfs_format_file_size_for_display</primary></indexterm><programlisting><link linkend="char">char</link>*       gnome_vfs_format_file_size_for_display
79                                             (<link linkend="GnomeVFSFileSize">GnomeVFSFileSize</link> size);</programlisting>
80 <para>
81 Formats the file size passed in <parameter>bytes</parameter> in a way that is easy for
82 the user to read. Gives the size in bytes, kilobytes, megabytes or
83 gigabytes, choosing whatever is appropriate.</para>
84 <para>
85
86 </para><variablelist role="params">
87 <varlistentry><term><parameter>size</parameter>&nbsp;:</term>
88 <listitem><simpara>
89 </simpara></listitem></varlistentry>
90 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a newly allocated string with the size ready to be shown.
91 </simpara></listitem></varlistentry>
92 </variablelist></refsect2>
93 <refsect2>
94 <title><anchor id="gnome-vfs-escape-string"/>gnome_vfs_escape_string ()</title>
95 <indexterm><primary>gnome_vfs_escape_string</primary></indexterm><programlisting><link linkend="char">char</link>*       gnome_vfs_escape_string         (const <link linkend="char">char</link> *string);</programlisting>
96 <para>
97 Escapes <parameter>string</parameter>, replacing any and all special characters 
98 with equivalent escape sequences.</para>
99 <para>
100
101 </para><variablelist role="params">
102 <varlistentry><term><parameter>string</parameter>&nbsp;:</term>
103 <listitem><simpara> string to be escaped
104 </simpara></listitem></varlistentry>
105 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a newly allocated string equivalent to <parameter>string</parameter>
106 but with all special characters escaped
107 </simpara></listitem></varlistentry>
108 </variablelist></refsect2>
109 <refsect2>
110 <title><anchor id="gnome-vfs-escape-path-string"/>gnome_vfs_escape_path_string ()</title>
111 <indexterm><primary>gnome_vfs_escape_path_string</primary></indexterm><programlisting><link linkend="char">char</link>*       gnome_vfs_escape_path_string    (const <link linkend="char">char</link> *path);</programlisting>
112 <para>
113 Escapes <parameter>path</parameter>, replacing only special characters that would not
114 be found in paths (so '/', '&amp;', '=', and '?' will not be escaped by
115 this function).</para>
116 <para>
117
118 </para><variablelist role="params">
119 <varlistentry><term><parameter>path</parameter>&nbsp;:</term>
120 <listitem><simpara> string to be escaped
121 </simpara></listitem></varlistentry>
122 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a newly allocated string equivalent to <parameter>path</parameter> but
123 with non-path characters escaped
124 </simpara></listitem></varlistentry>
125 </variablelist></refsect2>
126 <refsect2>
127 <title><anchor id="gnome-vfs-escape-host-and-path-string"/>gnome_vfs_escape_host_and_path_string ()</title>
128 <indexterm><primary>gnome_vfs_escape_host_and_path_string</primary></indexterm><programlisting><link linkend="char">char</link>*       gnome_vfs_escape_host_and_path_string
129                                             (const <link linkend="char">char</link> *path);</programlisting>
130 <para>
131 Escapes <parameter>path</parameter>, replacing only special characters that would not
132 be found in paths or host name (so '/', '&amp;', '=', ':', '@' 
133 and '?' will not be escaped by this function).</para>
134 <para>
135
136 </para><variablelist role="params">
137 <varlistentry><term><parameter>path</parameter>&nbsp;:</term>
138 <listitem><simpara> string to be escaped
139 </simpara></listitem></varlistentry>
140 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a newly allocated string equivalent to <parameter>path</parameter> but
141 with non-path/host characters escaped
142 </simpara></listitem></varlistentry>
143 </variablelist></refsect2>
144 <refsect2>
145 <title><anchor id="gnome-vfs-escape-slashes"/>gnome_vfs_escape_slashes ()</title>
146 <indexterm><primary>gnome_vfs_escape_slashes</primary></indexterm><programlisting><link linkend="char">char</link>*       gnome_vfs_escape_slashes        (const <link linkend="char">char</link> *string);</programlisting>
147 <para>
148 Escapes only '/' and '%' characters in <parameter>string</parameter>, replacing
149 them with their escape sequence equivalents.</para>
150 <para>
151
152 </para><variablelist role="params">
153 <varlistentry><term><parameter>string</parameter>&nbsp;:</term>
154 <listitem><simpara> string to be escaped
155 </simpara></listitem></varlistentry>
156 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a newly allocated string equivalent to <parameter>string</parameter>,
157 but with no unescaped '/' or '%' characters
158 </simpara></listitem></varlistentry>
159 </variablelist></refsect2>
160 <refsect2>
161 <title><anchor id="gnome-vfs-escape-set"/>gnome_vfs_escape_set ()</title>
162 <indexterm><primary>gnome_vfs_escape_set</primary></indexterm><programlisting><link linkend="char">char</link>*       gnome_vfs_escape_set            (const <link linkend="char">char</link> *string,
163                                              const <link linkend="char">char</link> *match_set);</programlisting>
164 <para>
165
166 </para><variablelist role="params">
167 <varlistentry><term><parameter>string</parameter>&nbsp;:</term>
168 <listitem><simpara>
169 </simpara></listitem></varlistentry>
170 <varlistentry><term><parameter>match_set</parameter>&nbsp;:</term>
171 <listitem><simpara>
172 </simpara></listitem></varlistentry>
173 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>
174
175
176 </simpara></listitem></varlistentry>
177 </variablelist></refsect2>
178 <refsect2>
179 <title><anchor id="gnome-vfs-unescape-string"/>gnome_vfs_unescape_string ()</title>
180 <indexterm><primary>gnome_vfs_unescape_string</primary></indexterm><programlisting><link linkend="char">char</link>*       gnome_vfs_unescape_string       (const <link linkend="char">char</link> *escaped_string,
181                                              const <link linkend="char">char</link> *illegal_characters);</programlisting>
182 <para>
183 Decodes escaped characters (i.e. PERCENTxx sequences) in <parameter>escaped_string</parameter>.
184 Characters are encoded in PERCENTxy form, where xy is the ASCII hex code 
185 for character 16x+y.</para>
186 <para>
187
188 </para><variablelist role="params">
189 <varlistentry><term><parameter>escaped_string</parameter>&nbsp;:</term>
190 <listitem><simpara> an escaped URI, path, or other string
191 </simpara></listitem></varlistentry>
192 <varlistentry><term><parameter>illegal_characters</parameter>&nbsp;:</term>
193 <listitem><simpara> a string containing a sequence of characters
194 considered "illegal", '\0' is automatically in this list.
195 </simpara></listitem></varlistentry>
196 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a newly allocated string with the unescaped equivalents, 
197 or <literal>NULL</literal> if <parameter>escaped_string</parameter> contained one of the characters 
198 in <parameter>illegal_characters</parameter>.
199 </simpara></listitem></varlistentry>
200 </variablelist></refsect2>
201 <refsect2>
202 <title><anchor id="gnome-vfs-make-uri-canonical"/>gnome_vfs_make_uri_canonical ()</title>
203 <indexterm><primary>gnome_vfs_make_uri_canonical</primary></indexterm><programlisting><link linkend="char">char</link>*       gnome_vfs_make_uri_canonical    (const <link linkend="char">char</link> *uri);</programlisting>
204 <para>
205 Standarizes the format of the uri being passed, so that it can be used
206 later in other functions that expect a canonical URI.</para>
207 <para>
208
209 </para><variablelist role="params">
210 <varlistentry><term><parameter>uri</parameter>&nbsp;:</term>
211 <listitem><simpara> and absolute or relative URI, it might have scheme.
212 </simpara></listitem></varlistentry>
213 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a newly allocated string that contains the canonical 
214 representation of <parameter>uri</parameter>.
215
216 </simpara></listitem></varlistentry>
217 </variablelist><para>Since  2.2
218 </para></refsect2>
219 <refsect2>
220 <title><anchor id="gnome-vfs-make-path-name-canonical"/>gnome_vfs_make_path_name_canonical ()</title>
221 <indexterm><primary>gnome_vfs_make_path_name_canonical</primary></indexterm><programlisting><link linkend="char">char</link>*       gnome_vfs_make_path_name_canonical
222                                             (const <link linkend="char">char</link> *path);</programlisting>
223 <para>
224 Calls _gnome_vfs_canonicalize_pathname, allocating storage for the 
225 result and providing for a cleaner memory management.</para>
226 <para>
227
228 </para><variablelist role="params">
229 <varlistentry><term><parameter>path</parameter>&nbsp;:</term>
230 <listitem><simpara> a file path, relative or absolute
231 </simpara></listitem></varlistentry>
232 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a canonical version of <parameter>path</parameter>
233 </simpara></listitem></varlistentry>
234 </variablelist></refsect2>
235 <refsect2>
236 <title><anchor id="gnome-vfs-expand-initial-tilde"/>gnome_vfs_expand_initial_tilde ()</title>
237 <indexterm><primary>gnome_vfs_expand_initial_tilde</primary></indexterm><programlisting><link linkend="char">char</link>*       gnome_vfs_expand_initial_tilde  (const <link linkend="char">char</link> *path);</programlisting>
238 <para>
239 If <parameter>path</parameter> starts with a ~, representing the user's home
240 directory, expand it to the actual path location.</para>
241 <para>
242
243 </para><variablelist role="params">
244 <varlistentry><term><parameter>path</parameter>&nbsp;:</term>
245 <listitem><simpara> a local file path which may start with a '~'
246 </simpara></listitem></varlistentry>
247 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a newly allocated string with the initial
248 tilde (if there was one) converted to an actual path
249 </simpara></listitem></varlistentry>
250 </variablelist></refsect2>
251 <refsect2>
252 <title><anchor id="gnome-vfs-unescape-string-for-display"/>gnome_vfs_unescape_string_for_display ()</title>
253 <indexterm><primary>gnome_vfs_unescape_string_for_display</primary></indexterm><programlisting><link linkend="char">char</link>*       gnome_vfs_unescape_string_for_display
254                                             (const <link linkend="char">char</link> *escaped);</programlisting>
255 <para>
256
257 </para><variablelist role="params">
258 <varlistentry><term><parameter>escaped</parameter>&nbsp;:</term>
259 <listitem><simpara>
260 </simpara></listitem></varlistentry>
261 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>
262
263
264 </simpara></listitem></varlistentry>
265 </variablelist></refsect2>
266 <refsect2>
267 <title><anchor id="gnome-vfs-get-local-path-from-uri"/>gnome_vfs_get_local_path_from_uri ()</title>
268 <indexterm><primary>gnome_vfs_get_local_path_from_uri</primary></indexterm><programlisting><link linkend="char">char</link>*       gnome_vfs_get_local_path_from_uri
269                                             (const <link linkend="char">char</link> *uri);</programlisting>
270 <para>
271 Create a local path for a file:/// URI. Do not use with URIs
272 of other methods.</para>
273 <para>
274
275 </para><variablelist role="params">
276 <varlistentry><term><parameter>uri</parameter>&nbsp;:</term>
277 <listitem><simpara> URI to convert to a local path
278 </simpara></listitem></varlistentry>
279 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a newly allocated string containing the local path 
280 NULL is returned on error or if the uri isn't a file: URI
281 without a fragment identifier (or chained URI).
282 </simpara></listitem></varlistentry>
283 </variablelist></refsect2>
284 <refsect2>
285 <title><anchor id="gnome-vfs-get-uri-from-local-path"/>gnome_vfs_get_uri_from_local_path ()</title>
286 <indexterm><primary>gnome_vfs_get_uri_from_local_path</primary></indexterm><programlisting><link linkend="char">char</link>*       gnome_vfs_get_uri_from_local_path
287                                             (const <link linkend="char">char</link> *local_full_path);</programlisting>
288 <para>
289 Returns a file:/// URI for the local path <parameter>local_full_path</parameter>.</para>
290 <para>
291
292 </para><variablelist role="params">
293 <varlistentry><term><parameter>local_full_path</parameter>&nbsp;:</term>
294 <listitem><simpara> a full local filesystem path (i.e. not relative)
295 </simpara></listitem></varlistentry>
296 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> a newly allocated string containing the URI corresponding 
297 to <parameter>local_full_path</parameter> (NULL for some bad errors).
298 </simpara></listitem></varlistentry>
299 </variablelist></refsect2>
300 <refsect2>
301 <title><anchor id="gnome-vfs-is-executable-command-string"/>gnome_vfs_is_executable_command_string ()</title>
302 <indexterm><primary>gnome_vfs_is_executable_command_string</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>    gnome_vfs_is_executable_command_string
303                                             (const <link linkend="char">char</link> *command_string);</programlisting>
304 <para>
305 Checks if <parameter>command_string</parameter> starts with the full path of an executable file
306 or an executable in $PATH.</para>
307 <para>
308
309 </para><variablelist role="params">
310 <varlistentry><term><parameter>command_string</parameter>&nbsp;:</term>
311 <listitem><simpara>
312 </simpara></listitem></varlistentry>
313 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> TRUE if command_string started with and executable file, 
314 FALSE otherwise.
315 </simpara></listitem></varlistentry>
316 </variablelist></refsect2>
317 <refsect2>
318 <title><anchor id="gnome-vfs-list-deep-free"/>gnome_vfs_list_deep_free ()</title>
319 <indexterm><primary>gnome_vfs_list_deep_free</primary></indexterm><programlisting><link linkend="void">void</link>        gnome_vfs_list_deep_free        (<link linkend="GList">GList</link> *list);</programlisting>
320 <para>
321 Free <parameter>list</parameter>, and call <link linkend="g-free"><function>g_free()</function></link> on all data members.</para>
322 <para>
323
324 </para><variablelist role="params">
325 <varlistentry><term><parameter>list</parameter>&nbsp;:</term>
326 <listitem><simpara> list to be freed
327 </simpara></listitem></varlistentry>
328 </variablelist></refsect2>
329 <refsect2>
330 <title><anchor id="gnome-vfs-get-volume-free-space"/>gnome_vfs_get_volume_free_space ()</title>
331 <indexterm><primary>gnome_vfs_get_volume_free_space</primary></indexterm><programlisting><link linkend="GnomeVFSResult">GnomeVFSResult</link> gnome_vfs_get_volume_free_space
332                                             (const <link linkend="GnomeVFSURI">GnomeVFSURI</link> *vfs_uri,
333                                              <link linkend="GnomeVFSFileSize">GnomeVFSFileSize</link> *size);</programlisting>
334 <para>
335 Stores in <parameter>size</parameter> the amount of free space on a volume.
336 This only works for local file systems with the file: scheme.</para>
337 <para>
338
339 </para><variablelist role="params">
340 <varlistentry><term><parameter>vfs_uri</parameter>&nbsp;:</term>
341 <listitem><simpara>
342 </simpara></listitem></varlistentry>
343 <varlistentry><term><parameter>size</parameter>&nbsp;:</term>
344 <listitem><simpara>
345 </simpara></listitem></varlistentry>
346 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> GNOME_VFS_OK on success, otherwise an error code
347 </simpara></listitem></varlistentry>
348 </variablelist></refsect2>
349 <refsect2>
350 <title><anchor id="gnome-vfs-icon-path-from-filename"/>gnome_vfs_icon_path_from_filename ()</title>
351 <indexterm><primary>gnome_vfs_icon_path_from_filename</primary></indexterm><programlisting><link linkend="char">char</link>*       gnome_vfs_icon_path_from_filename
352                                             (const <link linkend="char">char</link> *filename);</programlisting>
353 <para>
354
355 </para><variablelist role="params">
356 <varlistentry><term><parameter>filename</parameter>&nbsp;:</term>
357 <listitem><simpara>
358 </simpara></listitem></varlistentry>
359 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara>
360
361
362 </simpara></listitem></varlistentry>
363 </variablelist></refsect2>
364 <refsect2>
365 <title><anchor id="gnome-vfs-is-primary-thread"/>gnome_vfs_is_primary_thread ()</title>
366 <indexterm><primary>gnome_vfs_is_primary_thread</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>    gnome_vfs_is_primary_thread     (void);</programlisting>
367 <para>
368 Check if the current thread is the thread with the main glib event loop.</para>
369 <para>
370
371 </para><variablelist role="params">
372 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> <literal>TRUE</literal> if the current thread is the thread with the 
373 main glib event loop
374 </simpara></listitem></varlistentry>
375 </variablelist></refsect2>
376 <refsect2>
377 <title><anchor id="gnome-vfs-get-uri-scheme"/>gnome_vfs_get_uri_scheme ()</title>
378 <indexterm><primary>gnome_vfs_get_uri_scheme</primary></indexterm><programlisting><link linkend="char">char</link>*       gnome_vfs_get_uri_scheme        (const <link linkend="char">char</link> *uri);</programlisting>
379 <para>
380 Retrieve the scheme used in <parameter>uri</parameter></para>
381 <para>
382
383 </para><variablelist role="params">
384 <varlistentry><term><parameter>uri</parameter>&nbsp;:</term>
385 <listitem><simpara> a stringified URI
386 </simpara></listitem></varlistentry>
387 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> A newly allocated string containing the scheme, NULL
388 if <parameter>uri</parameter> it doesn't seem to contain a scheme
389
390 </simpara></listitem></varlistentry>
391 </variablelist><para>Since  2.2
392 </para></refsect2>
393 <refsect2>
394 <title><anchor id="gnome-vfs-uris-match"/>gnome_vfs_uris_match ()</title>
395 <indexterm><primary>gnome_vfs_uris_match</primary></indexterm><programlisting><link linkend="gboolean">gboolean</link>    gnome_vfs_uris_match            (const <link linkend="char">char</link> *uri_1,
396                                              const <link linkend="char">char</link> *uri_2);</programlisting>
397 <para>
398 Compare two URIs.</para>
399 <para>
400
401 </para><variablelist role="params">
402 <varlistentry><term><parameter>uri_1</parameter>&nbsp;:</term>
403 <listitem><simpara> stringified URI to compare with <parameter>uri_2</parameter>.
404 </simpara></listitem></varlistentry>
405 <varlistentry><term><parameter>uri_2</parameter>&nbsp;:</term>
406 <listitem><simpara> stringified URI to compare with <parameter>uri_1</parameter>.
407 </simpara></listitem></varlistentry>
408 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> TRUE if they are the same, FALSE otherwise.
409
410 </simpara></listitem></varlistentry>
411 </variablelist><para>Since  2.2
412 </para></refsect2>
413 <refsect2>
414 <title><anchor id="GNOME-VFS-ASSERT-PRIMARY-THREAD-CAPS"/>GNOME_VFS_ASSERT_PRIMARY_THREAD</title>
415 <indexterm><primary>GNOME_VFS_ASSERT_PRIMARY_THREAD</primary></indexterm><programlisting>#define GNOME_VFS_ASSERT_PRIMARY_THREAD g_assert (gnome_vfs_is_primary_thread())
416 </programlisting>
417 <para>
418 Asserts that the current thread is the thread with 
419 the main glib event loop</para>
420 <para>
421
422 </para></refsect2>
423 <refsect2>
424 <title><anchor id="GNOME-VFS-ASSERT-SECONDARY-THREAD-CAPS"/>GNOME_VFS_ASSERT_SECONDARY_THREAD</title>
425 <indexterm><primary>GNOME_VFS_ASSERT_SECONDARY_THREAD</primary></indexterm><programlisting>#define GNOME_VFS_ASSERT_SECONDARY_THREAD g_assert (!gnome_vfs_is_primary_thread())
426 </programlisting>
427 <para>
428 Asserts that the current thread is NOT the thread with
429 the main glib event loop</para>
430 <para>
431
432 </para></refsect2>
433 <refsect2>
434 <title><anchor id="gnome-vfs-read-entire-file"/>gnome_vfs_read_entire_file ()</title>
435 <indexterm><primary>gnome_vfs_read_entire_file</primary></indexterm><programlisting><link linkend="GnomeVFSResult">GnomeVFSResult</link> gnome_vfs_read_entire_file   (const <link linkend="char">char</link> *uri,
436                                              <link linkend="int">int</link> *file_size,
437                                              <link linkend="char">char</link> **file_contents);</programlisting>
438 <para>
439 Reads an entire file into memory for convenience. Beware accidentally
440 loading large files into memory with this function.</para>
441 <para>
442
443 </para><variablelist role="params">
444 <varlistentry><term><parameter>uri</parameter>&nbsp;:</term>
445 <listitem><simpara> URI of the file to read
446 </simpara></listitem></varlistentry>
447 <varlistentry><term><parameter>file_size</parameter>&nbsp;:</term>
448 <listitem><simpara> after reading the file, contains the size of the file read
449 </simpara></listitem></varlistentry>
450 <varlistentry><term><parameter>file_contents</parameter>&nbsp;:</term>
451 <listitem><simpara> contains the file_size bytes, the contents of the file at <parameter>uri</parameter>.
452 </simpara></listitem></varlistentry>
453 <varlistentry><term><emphasis>Returns</emphasis> :</term><listitem><simpara> An integer representing the result of the operation
454
455 </simpara></listitem></varlistentry>
456 </variablelist><para>Since  2.2
457 </para></refsect2>
458
459 </refsect1>
460
461
462
463
464 </refentry>