pike.git/
src/
modules/
_Roxen/
roxen.c
Branch:
Tag:
Non-build tags
All tags
No tags
2002-10-14
2002-10-14 13:03:12 by Henrik Grubbström (Grubba) <grubba@grubba.org>
e8f64818db12312e69c23a3debe2f94697d07ff5 (
18
lines) (+
17
/-
1
)
[
Show
|
Annotate
]
Branch:
7.2
Improved robustness of Roxen.HeaderParser().
Rev: src/modules/_Roxen/roxen.c:1.17
48:
int slash_n, spc; };
+
static void f_hp_init( struct object *o )
+
{
+
THP->headers = NULL;
+
THP->pnt = NULL;
+
THP->hsize = 0;
+
}
+
static void f_hp_exit( struct object *o ) { if( THP->headers ) free( THP->headers );
-
+
THP->headers = NULL;
+
THP->pnt = NULL;
+
THP->hsize = 0;
} static void f_hp_feed( INT32 args )
210:
/*! @decl void create(void) */ {
-
THP->headers =
malloc
( 8192 );
+
if (
THP->headers
)
{
+
free(THP->headers);
+
THP->headers
=
NULL;
+
}
+
THP->headers = xalloc
( 8192 );
THP->pnt = THP->headers; THP->hsize = 8192; THP->left = 8192;
476:
start_new_program(); ADD_STORAGE( struct header_buf );
+
set_init_callback( f_hp_init );
set_exit_callback( f_hp_exit ); pike_add_function( "feed", f_hp_feed, "function(string:array(string|mapping))",0 ); pike_add_function( "create", f_hp_create, "function(:void)", ID_STATIC );