func:  nestegg_init(nestegg ** context, nestegg_io io, nestegg_log callback, int64_t max_offset) nestegg * ctx ; if ( ! ( io . read && io . seek && io . tell ) )  ctx = ne_alloc ( sizeof ( * ctx ) ); if ( ! ctx )  ctx -> io = ne_alloc ( sizeof ( * ctx -> io ) ); if ( ! ctx -> io )  * ctx -> io = io; ctx -> log = callback; ctx -> alloc_pool = ne_pool_init ( ); if ( ! ctx -> alloc_pool )  nestegg_destroy ( ctx );  nestegg_destroy(nestegg * ctx) free ( ctx -> io ); 