home *** CD-ROM | disk | FTP | other *** search
-
- #include "d4all.h"
-
- extern X4FILTER *v4filter ;
- extern X4RELATE *v4relate ;
-
-
- x4relate_reset()
- {
- int relate_ref ;
- BASE *base_ptr ;
-
- base_ptr = d4ptr() ;
- if ( base_ptr == (BASE *) 0 ) return -1 ;
-
- relate_ref = base_ptr->relate_ref ;
-
- while ( relate_ref >= 0 )
- {
- h4free_memory( v4relate[relate_ref].compile ) ;
- relate_ref = h4free( (char **) &v4relate, relate_ref ) ;
- }
-
- base_ptr->relate_ref = -1 ;
-
- return 0 ;
- }
-
- int x4filter_pop()
- {
- BASE *base_ptr ;
-
- base_ptr = d4ptr() ;
- if ( v4filter == (X4FILTER *) 0 || base_ptr == (BASE *) 0 ) return -1;
- if ( base_ptr->filter_ref < 0 ) return -1 ;
-
- base_ptr->filter_ref = h4free((char **) &v4filter, base_ptr->filter_ref);
-
- return 0 ;
- }
-
-
- void x4filter_reset()
- {
- while ( x4filter_pop() == 0 ) ;
- }
-
-