static void pdf_set_colorspace ( fz_context * ctx , pdf_run_processor * pr , int what , fz_colorspace * colorspace ) {
 pdf_gstate * gstate = pr -> gstate + pr -> gtop ;
 pdf_material * mat ;
 int n = fz_colorspace_n ( ctx , colorspace ) ;
 gstate = pdf_flush_text ( ctx , pr ) ;
 mat = what == PDF_FILL ? & gstate -> fill : & gstate -> stroke ;
 fz_drop_colorspace ( ctx , mat -> colorspace ) ;
 mat -> kind = PDF_MAT_COLOR ;
 mat -> colorspace = fz_keep_colorspace ( ctx , colorspace ) ;
 mat -> v [ 0 ] = 0 ;
 mat -> v [ 1 ] = 0 ;
 mat -> v [ 2 ] = 0 ;
 mat -> v [ 3 ] = 1 ;
 if ( pdf_is_tint_colorspace ( ctx , colorspace ) ) {
 int i ;
 for ( i = 0 ;
 i < n ;
 i ++ ) mat -> v [ i ] = 1.0f ;
 }
 }
static void pdf_set_colorspace ( fz_context * ctx , pdf_run_processor * pr , int what , fz_colorspace * colorspace ) {
 pdf_gstate * gstate = pr -> gstate + pr -> gtop ;
 pdf_material * mat ;
 int n = fz_colorspace_n ( ctx , colorspace ) ;
 gstate = pdf_flush_text ( ctx , pr ) ;
 mat = what == PDF_FILL ? & gstate -> fill : & gstate -> stroke ;
 fz_drop_colorspace ( ctx , mat -> colorspace ) ;
 mat -> kind = PDF_MAT_COLOR ;
 mat -> colorspace = fz_keep_colorspace ( ctx , colorspace ) ;
 mat -> v [ 0 ] = 0 ;
 mat -> v [ 1 ] = 0 ;
 mat -> v [ 2 ] = 0 ;
 mat -> v [ 3 ] = 1 ;
 if ( pdf_is_tint_colorspace ( ctx , colorspace ) ) {
 int i ;
 for ( i = 0 ;
 i < n ;
 i ++ ) mat -> v [ i ] = 1.0f ;
 }
 }