diff options
Diffstat (limited to 'libre/ghostscript-libre/svn_rev11948.diff')
-rw-r--r-- | libre/ghostscript-libre/svn_rev11948.diff | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/libre/ghostscript-libre/svn_rev11948.diff b/libre/ghostscript-libre/svn_rev11948.diff new file mode 100644 index 000000000..92abb0d98 --- /dev/null +++ b/libre/ghostscript-libre/svn_rev11948.diff @@ -0,0 +1,16 @@ +Modified: trunk/gs/base/gximag3x.c +=================================================================== +--- trunk/gs/base/gximag3x.c 2010-12-10 19:50:53 UTC (rev 11947) ++++ trunk/gs/base/gximag3x.c 2010-12-11 23:02:25 UTC (rev 11948) +@@ -241,7 +241,9 @@ + const gs_image3x_mask_t *pixm = + (i == 0 ? &pim->Opacity : &pim->Shape); + +- *(gs_data_image_t *)&mask[i].image = pixm->MaskDict; ++ /* Use memcpy because direct assignment breaks ANSI aliasing */ ++ /* rules and causes SEGV with gcc 4.5.1 */ ++ memcpy(&mask[i].image, &pixm->MaskDict, sizeof(pixm->MaskDict)); + mask[i].image.type = type1; + mask[i].image.BitsPerComponent = pixm->MaskDict.BitsPerComponent; + } + |