int gs_screen_init_memory(gs_screen_enum * penum, gs_state * pgs, gs_screen_halftone * phsp, bool accurate, gs_memory_t * mem) { int code = gs_screen_order_init_memory(&penum->order, pgs, phsp, accurate, mem); if (code < 0) return code; return gs_screen_enum_init_memory(penum, &penum->order, pgs, phsp, mem); }
/* <frequency> <angle> <proc> setscreen - */ static int zsetscreen(i_ctx_t *i_ctx_p) { os_ptr op = osp; gs_screen_halftone screen; gx_ht_order order; int code = zscreen_params(op, &screen); gs_memory_t *mem; int space_index = r_space_index(op); if (code < 0) return code; mem = (gs_memory_t *)idmemory->spaces_indexed[space_index]; /* * Allocate the halftone in the same VM space as the procedure. * This keeps the space relationships consistent. */ code = gs_screen_order_init_memory(&order, igs, &screen, gs_currentaccuratescreens(mem), mem); if (code < 0) return code; return zscreen_enum_init(i_ctx_p, &order, &screen, op, 3, setscreen_finish, space_index); }