summaryrefslogtreecommitdiffhomepage
path: root/doc/libogg/oggpack_writecheck.html
blob: e23131b7d351d1efcf92e3d0453856aba942942d (plain)
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
<html>

<head>
<title>libogg - function - oggpack_writecheck</title>
<link rel=stylesheet href="style.css" type="text/css">
</head>

<body bgcolor=white text=black link="#5555ff" alink="#5555ff" vlink="#5555ff">
<table border=0 width=100%>
<tr>
<td><p class=tiny>libogg documentation</p></td>
<td align=right><p class=tiny>libogg release 1.3.2 - 20140527</p></td>
</tr>
</table>

<h1>oggpack_writecheck</h1>

<p><i>declared in "ogg/ogg.h";</i></p>

<p>This function checks the readiness status of
an <a href="oggpack_buffer.html">oggpack_buffer</a> previously
initialized for writing using the
Ogg <a href="bitpacking.html">bitpacking</a> functions.  A write
buffer that encounters an error (such as a failed malloc) will clear
its internal state and release any in-use memory, flagging itself as
'not ready'.  Subsequent attempts to write using the buffer will
silently fail. This error state may be detected at any later time by
using oggpack_writecheck().  It is safe but not necessary to
call <a href="oggpack_writeclear.html">oggpack_writeclear()</a> on a buffer that
has flagged an error and released its resources. 

<p><em>Important note to developers: Although libogg checks the
results of memory allocations, these checks are only useful on a
narrow range of embedded platforms. Allocation checks perform no
useful service on a general purpose desktop OS where pages are
routinely overallocated and all allocations succeed whether memory is
available or not.  The only way to detect an out of memory condition
on the vast majority of OSes is to watch for and capture segmentation
faults.  This function is useful only to embedded developers.</em>
 
<br><br>
<table border=0 color=black cellspacing=0 cellpadding=7>
<tr bgcolor=#cccccc>
	<td>
<pre><b>
int  oggpack_writecheck(<a href="oggpack_buffer.html">oggpack_buffer</a> *b);
</b></pre>
	</td>
</tr>
</table>

<h3>Parameters</h3>
<dl>
<dt><i>b</i></dt>
<dd>An <a href="oggpack_buffer.html">oggpack_buffer</a> previously initialized for writing.</dd>
</dl>


<h3>Return Values</h3>
<blockquote>
<li><i>zero</i>: buffer is ready for writing</li>
<li><i>nonzero</i>: buffer is not ready or encountered an error</li>
</blockquote>
<p>

<br><br>
<hr noshade>
<table border=0 width=100%>
<tr valign=top>
<td><p class=tiny>copyright &copy; 2000-2014 Xiph.Org</p></td>
<td align=right><p class=tiny><a href="http://www.xiph.org/ogg/">Ogg Container Format</a></p></td>
</tr><tr>
<td><p class=tiny>libogg documentation</p></td>
<td align=right><p class=tiny>libogg release 1.3.2 - 20140527</p></td>
</tr>
</table>


</body>

</html>