@@ -345,44 +345,43 @@ static void _twin_composite_simple(twin_pixmap_t *dst,
345
345
if (src -> source_kind == TWIN_PIXMAP ) {
346
346
src_x += src -> u .pixmap -> origin_x ;
347
347
src_y += src -> u .pixmap -> origin_y ;
348
- } else
348
+ } else {
349
349
s .c = src -> u .argb ;
350
+ }
350
351
351
352
sdx = src_x - dst_x ;
352
353
sdy = src_y - dst_y ;
353
354
354
355
if (msk ) {
355
- twin_src_msk_op op ;
356
356
twin_source_u m ;
357
357
twin_coord_t mdx , mdy ;
358
358
359
359
if (msk -> source_kind == TWIN_PIXMAP ) {
360
360
msk_x += msk -> u .pixmap -> origin_x ;
361
361
msk_y += msk -> u .pixmap -> origin_y ;
362
- } else
362
+ } else {
363
363
m .c = msk -> u .argb ;
364
+ }
364
365
365
366
mdx = msk_x - dst_x ;
366
367
mdy = msk_y - dst_y ;
367
368
368
- op = comp3 [operator ][operand_index (src )][operand_index (msk )][dst -> format ];
369
- for (iy = top ; iy < bottom ; iy ++ ) {
370
- if (src -> source_kind == TWIN_PIXMAP )
371
- s .p = twin_pixmap_pointer (src -> u .pixmap , left + sdx , iy + sdy );
372
- if (msk -> source_kind == TWIN_PIXMAP )
373
- m .p = twin_pixmap_pointer (msk -> u .pixmap , left + mdx , iy + mdy );
374
- (* op )(twin_pixmap_pointer (dst , left , iy ), s , m , right - left );
375
- }
369
+ twin_src_msk_op op = comp3 [operator ][operand_index (src )][operand_index (msk )][dst -> format ];
370
+ for (iy = top ; iy < bottom ; iy ++ ) {
371
+ if (src -> source_kind == TWIN_PIXMAP )
372
+ s .p = twin_pixmap_pointer (src -> u .pixmap , left + sdx , iy + sdy );
373
+ if (msk -> source_kind == TWIN_PIXMAP )
374
+ m .p = twin_pixmap_pointer (msk -> u .pixmap , left + mdx , iy + mdy );
375
+ (* op )(twin_pixmap_pointer (dst , left , iy ), s , m , right - left );
376
+ }
376
377
} else {
377
- twin_src_op op ;
378
-
379
- op = comp2 [operator ][operand_index (src )][dst -> format ];
378
+ twin_src_op op = comp2 [operator ][operand_index (src )][dst -> format ];
380
379
381
- for (iy = top ; iy < bottom ; iy ++ ) {
382
- if (src -> source_kind == TWIN_PIXMAP )
383
- s .p = twin_pixmap_pointer (src -> u .pixmap , left + sdx , iy + sdy );
384
- (* op )(twin_pixmap_pointer (dst , left , iy ), s , right - left );
385
- }
380
+ for (iy = top ; iy < bottom ; iy ++ ) {
381
+ if (src -> source_kind == TWIN_PIXMAP )
382
+ s .p = twin_pixmap_pointer (src -> u .pixmap , left + sdx , iy + sdy );
383
+ (* op )(twin_pixmap_pointer (dst , left , iy ), s , right - left );
384
+ }
386
385
}
387
386
twin_pixmap_damage (dst , left , top , right , bottom );
388
387
}
@@ -400,14 +399,14 @@ static twin_xform_t *twin_pixmap_init_xform(twin_pixmap_t *pixmap,
400
399
twin_coord_t src_x ,
401
400
twin_coord_t src_y )
402
401
{
403
- twin_xform_t * xform ;
404
402
twin_format_t fmt = pixmap -> format ;
405
403
406
404
if (fmt == TWIN_RGB16 )
407
405
fmt = TWIN_ARGB32 ;
408
406
409
- xform = calloc (1 , sizeof (twin_xform_t ) + width * twin_bytes_per_pixel (fmt ));
410
- if (xform == NULL )
407
+ twin_xform_t * xform =
408
+ calloc (1 , sizeof (twin_xform_t ) + width * twin_bytes_per_pixel (fmt ));
409
+ if (!xform )
411
410
return NULL ;
412
411
413
412
xform -> span .v = (twin_argb32_t * ) (char * ) (xform + 1 );
@@ -578,7 +577,6 @@ static void _twin_composite_xform(twin_pixmap_t *dst,
578
577
twin_coord_t width ,
579
578
twin_coord_t height )
580
579
{
581
- twin_coord_t iy ;
582
580
twin_coord_t left , top , right , bottom ;
583
581
twin_xform_t * sxform = NULL , * mxform = NULL ;
584
582
twin_source_u s ;
@@ -611,46 +609,45 @@ static void _twin_composite_xform(twin_pixmap_t *dst,
611
609
src_y += src -> u .pixmap -> origin_y ;
612
610
sxform =
613
611
twin_pixmap_init_xform (src -> u .pixmap , left , width , src_x , src_y );
614
- if (sxform == NULL )
612
+ if (! sxform )
615
613
return ;
616
614
s .p = sxform -> span ;
617
- } else
615
+ } else {
618
616
s .c = src -> u .argb ;
617
+ }
619
618
620
619
if (msk ) {
621
- twin_src_msk_op op ;
622
620
twin_source_u m ;
623
621
624
622
if (msk -> source_kind == TWIN_PIXMAP ) {
625
623
msk_x += msk -> u .pixmap -> origin_x ;
626
624
msk_y += msk -> u .pixmap -> origin_y ;
627
625
mxform = twin_pixmap_init_xform (msk -> u .pixmap , left , width , msk_x ,
628
626
msk_y );
629
- if (mxform == NULL )
627
+ if (! mxform )
630
628
return ;
631
629
m .p = mxform -> span ;
632
- } else
630
+ } else {
633
631
m .c = msk -> u .argb ;
632
+ }
634
633
635
- op = comp3 [operator ][operand_xindex (src )][operand_xindex (msk )]
634
+ twin_src_msk_op op = comp3 [operator ][operand_xindex (src )][operand_xindex (msk )]
636
635
[dst -> format ];
637
- for (iy = top ; iy < bottom ; iy ++ ) {
638
- if (src -> source_kind == TWIN_PIXMAP )
639
- twin_pixmap_read_xform (sxform , iy - top );
640
- if (msk -> source_kind == TWIN_PIXMAP )
641
- twin_pixmap_read_xform (mxform , iy - top );
642
- (* op )(twin_pixmap_pointer (dst , left , iy ), s , m , right - left );
643
- }
636
+ for (twin_coord_t iy = top ; iy < bottom ; iy ++ ) {
637
+ if (src -> source_kind == TWIN_PIXMAP )
638
+ twin_pixmap_read_xform (sxform , iy - top );
639
+ if (msk -> source_kind == TWIN_PIXMAP )
640
+ twin_pixmap_read_xform (mxform , iy - top );
641
+ (* op )(twin_pixmap_pointer (dst , left , iy ), s , m , right - left );
642
+ }
644
643
} else {
645
- twin_src_op op ;
646
-
647
- op = comp2 [operator ][operand_xindex (src )][dst -> format ];
644
+ twin_src_op op = comp2 [operator ][operand_xindex (src )][dst -> format ];
648
645
649
- for (iy = top ; iy < bottom ; iy ++ ) {
650
- if (src -> source_kind == TWIN_PIXMAP )
651
- twin_pixmap_read_xform (sxform , iy - top );
652
- (* op )(twin_pixmap_pointer (dst , left , iy ), s , right - left );
653
- }
646
+ for (twin_coord_t iy = top ; iy < bottom ; iy ++ ) {
647
+ if (src -> source_kind == TWIN_PIXMAP )
648
+ twin_pixmap_read_xform (sxform , iy - top );
649
+ (* op )(twin_pixmap_pointer (dst , left , iy ), s , right - left );
650
+ }
654
651
}
655
652
twin_pixmap_damage (dst , left , top , right , bottom );
656
653
twin_pixmap_free_xform (sxform );
@@ -673,12 +670,13 @@ void twin_composite(twin_pixmap_t *dst,
673
670
if ((src -> source_kind == TWIN_PIXMAP &&
674
671
!twin_matrix_is_identity (& src -> u .pixmap -> transform )) ||
675
672
(msk && (msk -> source_kind == TWIN_PIXMAP &&
676
- !twin_matrix_is_identity (& msk -> u .pixmap -> transform ))))
673
+ !twin_matrix_is_identity (& msk -> u .pixmap -> transform )))) {
677
674
_twin_composite_xform (dst , dst_x , dst_y , src , src_x , src_y , msk , msk_x ,
678
675
msk_y , operator , width , height );
679
- else
676
+ } else {
680
677
_twin_composite_simple (dst , dst_x , dst_y , src , src_x , src_y , msk , msk_x ,
681
678
msk_y , operator , width , height );
679
+ }
682
680
}
683
681
684
682
/*
@@ -708,10 +706,6 @@ void twin_fill(twin_pixmap_t *dst,
708
706
twin_coord_t right ,
709
707
twin_coord_t bottom )
710
708
{
711
- twin_src_op op ;
712
- twin_source_u src ;
713
- twin_coord_t iy ;
714
-
715
709
/* offset */
716
710
left += dst -> origin_x ;
717
711
top += dst -> origin_y ;
@@ -729,9 +723,10 @@ void twin_fill(twin_pixmap_t *dst,
729
723
bottom = dst -> clip .bottom ;
730
724
if (left >= right || top >= bottom )
731
725
return ;
732
- src .c = pixel ;
733
- op = fill [operator ][dst -> format ];
734
- for (iy = top ; iy < bottom ; iy ++ )
726
+
727
+ twin_source_u src = {.c = pixel };
728
+ twin_src_op op = fill [operator ][dst -> format ];
729
+ for (twin_coord_t iy = top ; iy < bottom ; iy ++ )
735
730
(* op )(twin_pixmap_pointer (dst , left , iy ), src , right - left );
736
731
twin_pixmap_damage (dst , left , top , right , bottom );
737
732
}
0 commit comments