This file is indexed.

/usr/share/gtk-doc/html/cairo/cairo-Error-handling.html is in libcairo2-doc 1.12.2-3.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Error handling</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
<link rel="home" href="index.html" title="Cairo: A Vector Graphics Library">
<link rel="up" href="cairo-support.html" title="Utilities">
<link rel="prev" href="cairo-cairo-matrix-t.html" title="cairo_matrix_t">
<link rel="next" href="cairo-Types.html" title="Types">
<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="cairo-cairo-matrix-t.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="cairo-support.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">Cairo: A Vector Graphics Library</th>
<td><a accesskey="n" href="cairo-Types.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#cairo-Error-handling.synopsis" class="shortcut">Top</a>
                   | 
                  <a href="#cairo-Error-handling.description" class="shortcut">Description</a>
</td></tr>
</table>
<div class="refentry">
<a name="cairo-Error-handling"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="cairo-Error-handling.top_of_page"></a>Error handling</span></h2>
<p>Error handling — Decoding cairo's status</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="cairo-Error-handling.synopsis"></a><h2>Synopsis</h2>
<pre class="synopsis">enum                <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t">cairo_status_t</a>;
const <span class="returnvalue">char</span> *        <a class="link" href="cairo-Error-handling.html#cairo-status-to-string" title="cairo_status_to_string ()">cairo_status_to_string</a>              (<em class="parameter"><code><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="type">cairo_status_t</span></a> status</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="cairo-Error-handling.html#cairo-debug-reset-static-data" title="cairo_debug_reset_static_data ()">cairo_debug_reset_static_data</a>       (<em class="parameter"><code><span class="type">void</span></code></em>);
</pre>
</div>
<div class="refsect1">
<a name="cairo-Error-handling.description"></a><h2>Description</h2>
<p>
Cairo uses a single status type to represent all kinds of errors.  A status
value of <a class="link" href="cairo-Error-handling.html#CAIRO-STATUS-SUCCESS:CAPS"><code class="literal">CAIRO_STATUS_SUCCESS</code></a> represents no error and has an integer value
of zero.  All other status values represent an error.
</p>
<p>
Cairo's error handling is designed to be easy to use and safe.  All major
cairo objects <em class="firstterm">retain</em> an error status internally which
can be queried anytime by the users using cairo*_status() calls.  In
the mean time, it is safe to call all cairo functions normally even if the
underlying object is in an error status.  This means that no error handling
code is required before or after each individual cairo function call.
</p>
</div>
<div class="refsect1">
<a name="cairo-Error-handling.details"></a><h2>Details</h2>
<div class="refsect2">
<a name="cairo-status-t"></a><h3>enum cairo_status_t</h3>
<pre class="programlisting">typedef enum {
    CAIRO_STATUS_SUCCESS = 0,

    CAIRO_STATUS_NO_MEMORY,
    CAIRO_STATUS_INVALID_RESTORE,
    CAIRO_STATUS_INVALID_POP_GROUP,
    CAIRO_STATUS_NO_CURRENT_POINT,
    CAIRO_STATUS_INVALID_MATRIX,
    CAIRO_STATUS_INVALID_STATUS,
    CAIRO_STATUS_NULL_POINTER,
    CAIRO_STATUS_INVALID_STRING,
    CAIRO_STATUS_INVALID_PATH_DATA,
    CAIRO_STATUS_READ_ERROR,
    CAIRO_STATUS_WRITE_ERROR,
    CAIRO_STATUS_SURFACE_FINISHED,
    CAIRO_STATUS_SURFACE_TYPE_MISMATCH,
    CAIRO_STATUS_PATTERN_TYPE_MISMATCH,
    CAIRO_STATUS_INVALID_CONTENT,
    CAIRO_STATUS_INVALID_FORMAT,
    CAIRO_STATUS_INVALID_VISUAL,
    CAIRO_STATUS_FILE_NOT_FOUND,
    CAIRO_STATUS_INVALID_DASH,
    CAIRO_STATUS_INVALID_DSC_COMMENT,
    CAIRO_STATUS_INVALID_INDEX,
    CAIRO_STATUS_CLIP_NOT_REPRESENTABLE,
    CAIRO_STATUS_TEMP_FILE_ERROR,
    CAIRO_STATUS_INVALID_STRIDE,
    CAIRO_STATUS_FONT_TYPE_MISMATCH,
    CAIRO_STATUS_USER_FONT_IMMUTABLE,
    CAIRO_STATUS_USER_FONT_ERROR,
    CAIRO_STATUS_NEGATIVE_COUNT,
    CAIRO_STATUS_INVALID_CLUSTERS,
    CAIRO_STATUS_INVALID_SLANT,
    CAIRO_STATUS_INVALID_WEIGHT,
    CAIRO_STATUS_INVALID_SIZE,
    CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED,
    CAIRO_STATUS_DEVICE_TYPE_MISMATCH,
    CAIRO_STATUS_DEVICE_ERROR,
    CAIRO_STATUS_INVALID_MESH_CONSTRUCTION,
    CAIRO_STATUS_DEVICE_FINISHED,

    CAIRO_STATUS_LAST_STATUS
} cairo_status_t;
</pre>
<p>
<a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="type">cairo_status_t</span></a> is used to indicate errors that can occur when
using Cairo. In some cases it is returned directly by functions.
but when using <a class="link" href="cairo-cairo-t.html#cairo-t" title="cairo_t"><span class="type">cairo_t</span></a>, the last error, if any, is stored in
the context and can be retrieved with <a class="link" href="cairo-cairo-t.html#cairo-status" title="cairo_status ()"><code class="function">cairo_status()</code></a>.
</p>
<p>
New entries may be added in future versions.  Use <a class="link" href="cairo-Error-handling.html#cairo-status-to-string" title="cairo_status_to_string ()"><code class="function">cairo_status_to_string()</code></a>
to get a human-readable representation of an error message.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><a name="CAIRO-STATUS-SUCCESS:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_SUCCESS</code></span></p></td>
<td>no error has occurred (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-NO-MEMORY:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_NO_MEMORY</code></span></p></td>
<td>out of memory (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-RESTORE:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_RESTORE</code></span></p></td>
<td>cairo_restore() called without matching <a class="link" href="cairo-cairo-t.html#cairo-save" title="cairo_save ()"><code class="function">cairo_save()</code></a> (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-POP-GROUP:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_POP_GROUP</code></span></p></td>
<td>no saved group to pop, i.e. <a class="link" href="cairo-cairo-t.html#cairo-pop-group" title="cairo_pop_group ()"><code class="function">cairo_pop_group()</code></a> without matching <a class="link" href="cairo-cairo-t.html#cairo-push-group" title="cairo_push_group ()"><code class="function">cairo_push_group()</code></a> (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-NO-CURRENT-POINT:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_NO_CURRENT_POINT</code></span></p></td>
<td>no current point defined (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-MATRIX:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_MATRIX</code></span></p></td>
<td>invalid matrix (not invertible) (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-STATUS:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_STATUS</code></span></p></td>
<td>invalid value for an input <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="type">cairo_status_t</span></a> (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-NULL-POINTER:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_NULL_POINTER</code></span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> pointer (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-STRING:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_STRING</code></span></p></td>
<td>input string not valid UTF-8 (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-PATH-DATA:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_PATH_DATA</code></span></p></td>
<td>input path data not valid (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-READ-ERROR:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_READ_ERROR</code></span></p></td>
<td>error while reading from input stream (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-WRITE-ERROR:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_WRITE_ERROR</code></span></p></td>
<td>error while writing to output stream (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-SURFACE-FINISHED:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_SURFACE_FINISHED</code></span></p></td>
<td>target surface has been finished (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-SURFACE-TYPE-MISMATCH:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_SURFACE_TYPE_MISMATCH</code></span></p></td>
<td>the surface type is not appropriate for the operation (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-PATTERN-TYPE-MISMATCH:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_PATTERN_TYPE_MISMATCH</code></span></p></td>
<td>the pattern type is not appropriate for the operation (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-CONTENT:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_CONTENT</code></span></p></td>
<td>invalid value for an input <a class="link" href="cairo-cairo-surface-t.html#cairo-content-t" title="enum cairo_content_t"><span class="type">cairo_content_t</span></a> (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-FORMAT:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_FORMAT</code></span></p></td>
<td>invalid value for an input <a class="link" href="cairo-Image-Surfaces.html#cairo-format-t" title="enum cairo_format_t"><span class="type">cairo_format_t</span></a> (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-VISUAL:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_VISUAL</code></span></p></td>
<td>invalid value for an input Visual* (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-FILE-NOT-FOUND:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_FILE_NOT_FOUND</code></span></p></td>
<td>file not found (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-DASH:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_DASH</code></span></p></td>
<td>invalid value for a dash setting (Since 1.0)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-DSC-COMMENT:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_DSC_COMMENT</code></span></p></td>
<td>invalid value for a DSC comment (Since 1.2)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-INDEX:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_INDEX</code></span></p></td>
<td>invalid index passed to getter (Since 1.4)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-CLIP-NOT-REPRESENTABLE:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_CLIP_NOT_REPRESENTABLE</code></span></p></td>
<td>clip region not representable in desired format (Since 1.4)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-TEMP-FILE-ERROR:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_TEMP_FILE_ERROR</code></span></p></td>
<td>error creating or writing to a temporary file (Since 1.6)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-STRIDE:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_STRIDE</code></span></p></td>
<td>invalid value for stride (Since 1.6)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-FONT-TYPE-MISMATCH:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_FONT_TYPE_MISMATCH</code></span></p></td>
<td>the font type is not appropriate for the operation (Since 1.8)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-USER-FONT-IMMUTABLE:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_USER_FONT_IMMUTABLE</code></span></p></td>
<td>the user-font is immutable (Since 1.8)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-USER-FONT-ERROR:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_USER_FONT_ERROR</code></span></p></td>
<td>error occurred in a user-font callback function (Since 1.8)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-NEGATIVE-COUNT:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_NEGATIVE_COUNT</code></span></p></td>
<td>negative number used where it is not allowed (Since 1.8)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-CLUSTERS:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_CLUSTERS</code></span></p></td>
<td>input clusters do not represent the accompanying text and glyph array (Since 1.8)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-SLANT:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_SLANT</code></span></p></td>
<td>invalid value for an input <a class="link" href="cairo-text.html#cairo-font-slant-t" title="enum cairo_font_slant_t"><span class="type">cairo_font_slant_t</span></a> (Since 1.8)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-WEIGHT:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_WEIGHT</code></span></p></td>
<td>invalid value for an input <a class="link" href="cairo-text.html#cairo-font-weight-t" title="enum cairo_font_weight_t"><span class="type">cairo_font_weight_t</span></a> (Since 1.8)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-SIZE:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_SIZE</code></span></p></td>
<td>invalid value (typically too big) for the size of the input (surface, pattern, etc.) (Since 1.10)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-USER-FONT-NOT-IMPLEMENTED:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_USER_FONT_NOT_IMPLEMENTED</code></span></p></td>
<td>user-font method not implemented (Since 1.10)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-DEVICE-TYPE-MISMATCH:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_DEVICE_TYPE_MISMATCH</code></span></p></td>
<td>the device type is not appropriate for the operation (Since 1.10)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-DEVICE-ERROR:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_DEVICE_ERROR</code></span></p></td>
<td>an operation to the device caused an unspecified error (Since 1.10)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-INVALID-MESH-CONSTRUCTION:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_INVALID_MESH_CONSTRUCTION</code></span></p></td>
<td>a mesh pattern
  construction operation was used outside of a
  <a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-begin-patch" title="cairo_mesh_pattern_begin_patch ()"><code class="function">cairo_mesh_pattern_begin_patch()</code></a>/<a class="link" href="cairo-cairo-pattern-t.html#cairo-mesh-pattern-end-patch" title="cairo_mesh_pattern_end_patch ()"><code class="function">cairo_mesh_pattern_end_patch()</code></a>
  pair (Since 1.12)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-DEVICE-FINISHED:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_DEVICE_FINISHED</code></span></p></td>
<td>target device has been finished (Since 1.12)
</td>
</tr>
<tr>
<td><p><a name="CAIRO-STATUS-LAST-STATUS:CAPS"></a><span class="term"><code class="literal">CAIRO_STATUS_LAST_STATUS</code></span></p></td>
<td>this is a special value indicating the number of
  status values defined in this enumeration.  When using this value, note
  that the version of cairo at run-time may have additional status values
  defined than the value of this symbol at compile-time. (Since 1.10)
</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 1.0</p>
</div>
<hr>
<div class="refsect2">
<a name="cairo-status-to-string"></a><h3>cairo_status_to_string ()</h3>
<pre class="programlisting">const <span class="returnvalue">char</span> *        cairo_status_to_string              (<em class="parameter"><code><a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="type">cairo_status_t</span></a> status</code></em>);</pre>
<p>
Provides a human-readable description of a <a class="link" href="cairo-Error-handling.html#cairo-status-t" title="enum cairo_status_t"><span class="type">cairo_status_t</span></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>status</code></em> :</span></p></td>
<td>a cairo status</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a string representation of the status</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 1.0</p>
</div>
<hr>
<div class="refsect2">
<a name="cairo-debug-reset-static-data"></a><h3>cairo_debug_reset_static_data ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                cairo_debug_reset_static_data       (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>
Resets all static data within cairo to its original state,
(ie. identical to the state at the time of program invocation). For
example, all caches within cairo will be flushed empty.
</p>
<p>
This function is intended to be useful when using memory-checking
tools such as valgrind. When valgrind's memcheck analyzes a
cairo-using program without a call to <a class="link" href="cairo-Error-handling.html#cairo-debug-reset-static-data" title="cairo_debug_reset_static_data ()"><code class="function">cairo_debug_reset_static_data()</code></a>,
it will report all data reachable via cairo's static objects as
"still reachable". Calling <a class="link" href="cairo-Error-handling.html#cairo-debug-reset-static-data" title="cairo_debug_reset_static_data ()"><code class="function">cairo_debug_reset_static_data()</code></a> just prior
to program termination will make it easier to get squeaky clean
reports from valgrind.
</p>
<p>
WARNING: It is only safe to call this function when there are no
active cairo objects remaining, (ie. the appropriate destroy
functions have been called as necessary). If there are active cairo
objects, this call is likely to cause a crash, (eg. an assertion
failure due to a hash table being destroyed when non-empty).
</p>
<p class="since">Since 1.0</p>
</div>
</div>
<div class="refsect1">
<a name="cairo-Error-handling.see-also"></a><h2>See Also</h2>
cairo_status(), <a class="link" href="cairo-cairo-surface-t.html#cairo-surface-status" title="cairo_surface_status ()"><code class="function">cairo_surface_status()</code></a>, <a class="link" href="cairo-cairo-pattern-t.html#cairo-pattern-status" title="cairo_pattern_status ()"><code class="function">cairo_pattern_status()</code></a>,
           <a class="link" href="cairo-cairo-font-face-t.html#cairo-font-face-status" title="cairo_font_face_status ()"><code class="function">cairo_font_face_status()</code></a>, <a class="link" href="cairo-cairo-scaled-font-t.html#cairo-scaled-font-status" title="cairo_scaled_font_status ()"><code class="function">cairo_scaled_font_status()</code></a>, 
           <a class="link" href="cairo-Regions.html#cairo-region-status" title="cairo_region_status ()"><code class="function">cairo_region_status()</code></a>
</div>
</div>
<div class="footer">
<hr>
          Generated by GTK-Doc V1.18</div>
</body>
</html>