pike.git
/
src
/
block_alloc.h
version
»
Context lines:
10
20
40
80
file
none
3
pike.git/src/block_alloc.h:100:
#define WALK_NONFREE_BLOCKS(DATA, BLOCK, FCOND, CODE) do { \ struct PIKE_CONCAT(DATA,_block) * p, * np; \ p = PIKE_CONCAT(DATA,_blocks); \ while (p) { \ int n = p->used; \ int i; \ np = p->next; \ for (i = 0; n && i < (sizeof(p->x)/sizeof(struct DATA)); i++) { \ BLOCK = &p->x[i]; \
+
PIKE_MEM_RW(*BLOCK); \
if (FCOND) { \ do CODE while(0); \ --n; \
-
+
} else { \
+
PIKE_MEM_NA(*BLOCK); \
} \ } \ p = np; \ } \ } while(0) #define BLOCK_ALLOC(DATA,BSIZE) \ \ struct PIKE_CONCAT(DATA,_block) \ { \